aboutsummaryrefslogtreecommitdiff
path: root/src/levels/level4.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/levels/level4.c')
-rw-r--r--src/levels/level4.c25
1 files changed, 22 insertions, 3 deletions
diff --git a/src/levels/level4.c b/src/levels/level4.c
index ae9edaa..a159750 100644
--- a/src/levels/level4.c
+++ b/src/levels/level4.c
@@ -1,16 +1,35 @@
#include "game.h"
#include "world.h"
+#include "entity.h"
#include "entityGrouping.h"
void initLevel4(Game * game, Levels * levels) {
+ int i;
+ // Add player.
+ addEntryToWorld(&game->world, game, (WorldEntry){ENTITY_ANTIFA, (Vector3){0.0, 0.0, 0.0}, QuaternionIdentity()});
+
+ Vector3 positions[] = {
+ (Vector3){800.0, 0.0, 0.0},
+ (Vector3){-800.0, 0.0, 0.0},
+ (Vector3){0.0, 800.0, 0.0},
+ (Vector3){0.0, -800.0, 0.0},
+ (Vector3){0.0, 0.0, 800.0},
+ (Vector3){0.0, 0.0, -800.0}
+ };
+
+ Vector3 spacing = (Vector3){0.0, 15.0, 15.0};
+
+ // Add groups.
+ for (i = 0; i < sizeof(positions) / sizeof(Vector3); ++i) {
+ addSoldatoGroupWithLeader(game, ENTITY_CAPORALE, 3, positions[i], spacing);
+ spacing = Vector3Negate(spacing); // Swap group direction each time.
+ }
}
void closelevel4(Levels * levels) {
-
}
bool updateLevel4(Game * game, Levels * levels) {
-
- return false;
+ return game->world.entitiesCount == 1;
}