aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornathansmithsmith <thenathansmithsmith@gmail.com>2023-11-24 22:14:08 -0700
committernathansmithsmith <thenathansmithsmith@gmail.com>2023-11-24 22:14:08 -0700
commit31e5ed2ec9fbc28b9695db20462228a52696e6aa (patch)
tree8ac8255ce9c931212cf2b73930b99149992c863d
parentd3f744321e1e114796391d0d18eb6ffd36de6e34 (diff)
Started level 3
-rw-r--r--src/game.c2
-rw-r--r--src/levels.c1
-rw-r--r--src/levels.h2
-rw-r--r--src/levels/level3.c28
-rw-r--r--src/levels/level3.h11
-rw-r--r--src/levelsInclude.h1
6 files changed, 43 insertions, 2 deletions
diff --git a/src/game.c b/src/game.c
index c1c5616..34f1bed 100644
--- a/src/game.c
+++ b/src/game.c
@@ -33,7 +33,7 @@ void initGame(Game * game) {
// Levels.
initLevels(&game->levels);
- startLevel(game, &game->levels, 1);
+ startLevel(game, &game->levels, 2);
}
void closeGame(Game * game) {
diff --git a/src/levels.c b/src/levels.c
index dec7d8f..71a4306 100644
--- a/src/levels.c
+++ b/src/levels.c
@@ -7,6 +7,7 @@
const LevelInfo levelInfoList[LEVELS_COUNT] = {
(LevelInfo){initLevel1, closelevel1, updateLevel1},
(LevelInfo){initLevel2, closelevel2, updateLevel2},
+ (LevelInfo){initLevel3, closelevel3, updateLevel3},
(LevelInfo){initTestLevel, closeTestLevel, updateTestLevel}
};
diff --git a/src/levels.h b/src/levels.h
index b739d56..3f3419c 100644
--- a/src/levels.h
+++ b/src/levels.h
@@ -5,7 +5,7 @@
#ifndef LEVELS_H
#define LEVELS_H
-#define LEVELS_COUNT 3
+#define LEVELS_COUNT 4
#define NO_LEVEL -1
diff --git a/src/levels/level3.c b/src/levels/level3.c
new file mode 100644
index 0000000..d8a8e4a
--- /dev/null
+++ b/src/levels/level3.c
@@ -0,0 +1,28 @@
+#include "level3.h"
+#include "game.h"
+#include "world.h"
+
+void initLevel3(Game * game, Levels * levels) {
+ WorldEntry entries[] = {
+ (WorldEntry){ENTITY_ANTIFA, (Vector3){0.0, 0.0, 0.0}, QuaternionIdentity()},
+ (WorldEntry){ENTITY_CAPORALE, (Vector3){0.0, 0.0, 100.0}, QuaternionIdentity()}
+ };
+
+ addEntriesToWorld(
+ &game->world,
+ game,
+ entries,
+ sizeof(entries) / sizeof(WorldEntry)
+ );
+}
+
+void closelevel3(Levels * levels) {
+
+}
+
+bool updateLevel3(Game * game, Levels * levels) {
+ if (game->world.entitiesCount == 1)
+ return true;
+
+ return false;
+}
diff --git a/src/levels/level3.h b/src/levels/level3.h
new file mode 100644
index 0000000..85501a6
--- /dev/null
+++ b/src/levels/level3.h
@@ -0,0 +1,11 @@
+#include "gameCommon.h"
+#include "levels.h"
+
+#ifndef LEVEL3_H
+#define LEVEL3_H
+
+void initLevel3(Game * game, Levels * levels);
+void closelevel3(Levels * levels);
+bool updateLevel3(Game * game, Levels * levels);
+
+#endif
diff --git a/src/levelsInclude.h b/src/levelsInclude.h
index f467dca..b6a6156 100644
--- a/src/levelsInclude.h
+++ b/src/levelsInclude.h
@@ -1,5 +1,6 @@
#include "levels/testLevel.h"
#include "levels/level1.h"
#include "levels/level2.h"
+#include "levels/level3.h"
// As you can tell I fucking hate your stupid fat ass