diff options
author | nathansmithsmith <thenathansmithsmith@gmail.com> | 2023-12-07 13:40:04 -0700 |
---|---|---|
committer | nathansmithsmith <thenathansmithsmith@gmail.com> | 2023-12-07 13:40:04 -0700 |
commit | f7392070995ad077dcaa387469934325e8e5c067 (patch) | |
tree | a8832ea626ab283d92537d2ce5f6693465440d78 | |
parent | 2b42a05915e0b8e08e83ff7da23d34d2e1a37ccd (diff) |
Added level 7
-rw-r--r-- | src/entities/guidedMissile.c | 2 | ||||
-rw-r--r-- | src/entities/missile.c | 2 | ||||
-rw-r--r-- | src/game.c | 2 | ||||
-rw-r--r-- | src/levels.c | 1 | ||||
-rw-r--r-- | src/levels.h | 2 | ||||
-rw-r--r-- | src/levels/level7.c | 29 | ||||
-rw-r--r-- | src/levels/level7.h | 11 | ||||
-rw-r--r-- | src/levelsInclude.h | 1 |
8 files changed, 48 insertions, 2 deletions
diff --git a/src/entities/guidedMissile.c b/src/entities/guidedMissile.c index 1ab53c9..e45defe 100644 --- a/src/entities/guidedMissile.c +++ b/src/entities/guidedMissile.c @@ -8,6 +8,8 @@ void initGuidedMissile(Entity * entity, Game * game) { entity->transformedCollisionModel = entityCreateCollisionModel(*entity->model); setEntityRadius(entity); + entity->health = 0.125; + // Allocate data. entity->data = KF_MALLOC(sizeof(GuidedMissile)); diff --git a/src/entities/missile.c b/src/entities/missile.c index c8c8e92..beb167c 100644 --- a/src/entities/missile.c +++ b/src/entities/missile.c @@ -10,6 +10,8 @@ void initMissile(Entity * entity, Game * game) { entity->transformedCollisionModel = entityCreateCollisionModel(*entity->model); setEntityRadius(entity); + entity->health = 0.125; + entity->data = KF_MALLOC(sizeof(Missile)); if (entity->data == NULL) { @@ -33,7 +33,7 @@ void initGame(Game * game) { // Levels. initLevels(&game->levels); - startLevel(game, &game->levels, 5); + startLevel(game, &game->levels, 6); } void closeGame(Game * game) { diff --git a/src/levels.c b/src/levels.c index 460077e..f3226d0 100644 --- a/src/levels.c +++ b/src/levels.c @@ -11,6 +11,7 @@ const LevelInfo levelInfoList[LEVELS_COUNT] = { (LevelInfo){initLevel4, closelevel4, updateLevel4}, (LevelInfo){initLevel5, closelevel5, updateLevel5}, (LevelInfo){initLevel6, closelevel6, updateLevel6}, + (LevelInfo){initLevel7, closelevel7, updateLevel7}, (LevelInfo){initTestLevel, closeTestLevel, updateTestLevel} }; diff --git a/src/levels.h b/src/levels.h index cd219d1..c54ed2b 100644 --- a/src/levels.h +++ b/src/levels.h @@ -5,7 +5,7 @@ #ifndef LEVELS_H #define LEVELS_H -#define LEVELS_COUNT 7 +#define LEVELS_COUNT 8 #define NO_LEVEL -1 diff --git a/src/levels/level7.c b/src/levels/level7.c new file mode 100644 index 0000000..2b2ad61 --- /dev/null +++ b/src/levels/level7.c @@ -0,0 +1,29 @@ +#include "level7.h" +#include "game.h" +#include "entityGrouping.h" +#include "entity.h" +#include "world.h" + +void initLevel7(Game * game, Levels * levels) { + WorldEntry entries[] = { + (WorldEntry){ENTITY_ANTIFA, (Vector3){0.0, 0.0, 0.0}, QuaternionIdentity()}, + (WorldEntry){ENTITY_MARESCIALLO, (Vector3){800.0, 0.0, 0.0}, QuaternionIdentity()}, + (WorldEntry){ENTITY_MARESCIALLO, (Vector3){-2000.0, 0.0, 0.0}, QuaternionIdentity()}, + (WorldEntry){ENTITY_MARESCIALLO, (Vector3){0.0, 2000.0, 0.0}, QuaternionIdentity()}, + (WorldEntry){ENTITY_MARESCIALLO, (Vector3){0.0, -800.0, 0.0}, QuaternionIdentity()} + }; + + addEntriesToWorld( + &game->world, + game, + entries, + sizeof(entries) / sizeof(WorldEntry) + ); +} + +void closelevel7(Levels * levels) { +} + +bool updateLevel7(Game * game, Levels * levels) { + return game->world.entitiesCount == 1; +} diff --git a/src/levels/level7.h b/src/levels/level7.h new file mode 100644 index 0000000..c068f37 --- /dev/null +++ b/src/levels/level7.h @@ -0,0 +1,11 @@ +#include "gameCommon.h" +#include "levels.h" + +#ifndef LEVEL7_H +#define LEVEL7_H + +void initLevel7(Game * game, Levels * levels); +void closelevel7(Levels * levels); +bool updateLevel7(Game * game, Levels * levels); + +#endif diff --git a/src/levelsInclude.h b/src/levelsInclude.h index 72697e0..b205fc8 100644 --- a/src/levelsInclude.h +++ b/src/levelsInclude.h @@ -5,5 +5,6 @@ #include "levels/level4.h" #include "levels/level5.h" #include "levels/level6.h" +#include "levels/level7.h" // As you can tell I fucking hate your stupid fat ass |