aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornathansmithsmith <thenathansmithsmith@gmail.com>2023-12-15 12:06:51 -0700
committernathansmithsmith <thenathansmithsmith@gmail.com>2023-12-15 12:06:51 -0700
commitef8583564b648f6fdda73711a18b469416c1fdfc (patch)
treed25ed3fac857d192d21435f13787274a45244aca
parent83a0e9ebe5600a431b9355ef623e57c61c220448 (diff)
Started working on the boss level
-rw-r--r--src/game.c2
-rw-r--r--src/levels.c1
-rw-r--r--src/levels.h2
-rw-r--r--src/levels/bossLevel.c28
-rw-r--r--src/levels/bossLevel.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 df22769..ef61d45 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, 10);
+ startLevel(game, &game->levels, 11);
}
void closeGame(Game * game) {
diff --git a/src/levels.c b/src/levels.c
index 525fa00..4035fdc 100644
--- a/src/levels.c
+++ b/src/levels.c
@@ -16,6 +16,7 @@ const LevelInfo levelInfoList[LEVELS_COUNT] = {
(LevelInfo){initLevel9, closelevel9, updateLevel9},
(LevelInfo){initLevel10, closelevel10, updateLevel10},
(LevelInfo){initLevel11, closelevel11, updateLevel11},
+ (LevelInfo){initBossLevel, closeBossLevel, updateBossLevel},
(LevelInfo){initTestLevel, closeTestLevel, updateTestLevel}
};
diff --git a/src/levels.h b/src/levels.h
index 1a9b577..9107715 100644
--- a/src/levels.h
+++ b/src/levels.h
@@ -5,7 +5,7 @@
#ifndef LEVELS_H
#define LEVELS_H
-#define LEVELS_COUNT 12
+#define LEVELS_COUNT 13
#define NO_LEVEL -1
diff --git a/src/levels/bossLevel.c b/src/levels/bossLevel.c
new file mode 100644
index 0000000..6cdf486
--- /dev/null
+++ b/src/levels/bossLevel.c
@@ -0,0 +1,28 @@
+#include "bossLevel.h"
+#include "game.h"
+#include "entity.h"
+#include "world.h"
+#include "entityGrouping.h"
+
+// The b in boss stands for boobs and the ss is from your moms big sexy ass.
+
+void initBossLevel(Game * game, Levels * levels) {
+ WorldEntry entries[] = {
+ (WorldEntry){ENTITY_ANTIFA, (Vector3){0.0, 0.0, 0.0}, QuaternionIdentity()},
+ (WorldEntry){ENTITY_MUSSOLINI, (Vector3){0.0, 0.0, 1000.0}, QuaternionIdentity()}
+ };
+
+ addEntriesToWorld(
+ &game->world,
+ game,
+ entries,
+ sizeof(entries) / sizeof(WorldEntry)
+ );
+}
+
+void closeBossLevel(Levels * levels) {
+}
+
+bool updateBossLevel(Game * game, Levels * levels) {
+ return game->world.entitiesCount == 1;
+}
diff --git a/src/levels/bossLevel.h b/src/levels/bossLevel.h
new file mode 100644
index 0000000..18a67bd
--- /dev/null
+++ b/src/levels/bossLevel.h
@@ -0,0 +1,11 @@
+#include "gameCommon.h"
+#include "levels.h"
+
+#ifndef BOSS_LEVEL_H
+#define BOSS_LEVEL_H
+
+void initBossLevel(Game * game, Levels * levels);
+void closeBossLevel(Levels * levels);
+bool updateBossLevel(Game * game, Levels * levels);
+
+#endif
diff --git a/src/levelsInclude.h b/src/levelsInclude.h
index 2785926..1063204 100644
--- a/src/levelsInclude.h
+++ b/src/levelsInclude.h
@@ -10,5 +10,6 @@
#include "levels/level9.h"
#include "levels/level10.h"
#include "levels/level11.h"
+#include "levels/bossLevel.h"
// As you can tell I fucking hate your stupid fat ass