aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authornathansmithsmith <thenathansmithsmith@gmail.com>2023-07-09 02:23:05 -0600
committernathansmithsmith <thenathansmithsmith@gmail.com>2023-07-09 02:23:05 -0600
commit23be929353d4583edbd8621cd755f8a636c3fd90 (patch)
tree36d7502dbe628502eb7708c4617d1931420c8a66 /src
parent708072e716e7ab22a37f528311a433f195f75054 (diff)
soldato asset added
Diffstat (limited to 'src')
-rw-r--r--src/assets.c3
-rw-r--r--src/assets.h5
-rw-r--r--src/entities/soldato.c2
-rw-r--r--src/game.c33
-rw-r--r--src/gameScreen.c9
-rw-r--r--src/gameScreen.h5
-rw-r--r--src/mainMenu.c3
-rw-r--r--src/playerCamera.c5
8 files changed, 23 insertions, 42 deletions
diff --git a/src/assets.c b/src/assets.c
index 1f0c95b..c8fe3be 100644
--- a/src/assets.c
+++ b/src/assets.c
@@ -7,7 +7,8 @@ const char textureAssetPaths[TEXTURE_ASSET_COUNT][ASSET_PATH_MAX] = {
};
const char modelAssetPaths[MODEL_ASSET_COUNT][ASSET_PATH_MAX] = {
- "/home/nathan/Documents/KillaFacsista/assets/antifaShip.obj"
+ "/home/nathan/Documents/KillaFacsista/assets/antifaShip.obj",
+ "/home/nathan/Documents/KillaFacsista/assets/soldato.obj"
};
void LoadAssets(Assets * assets) {
diff --git a/src/assets.h b/src/assets.h
index f28ddb8..658367a 100644
--- a/src/assets.h
+++ b/src/assets.h
@@ -6,7 +6,7 @@
#define ASSET_PATH_MAX 255
#define TEXTURE_ASSET_COUNT 3
-#define MODEL_ASSET_COUNT 1
+#define MODEL_ASSET_COUNT 2
// Paths to assets.
extern const char textureAssetPaths[TEXTURE_ASSET_COUNT][ASSET_PATH_MAX];
@@ -23,7 +23,8 @@ enum {
// Model asset ids.
enum {
- ANTIFA_SHIP_ASSET
+ ANTIFA_SHIP_ASSET,
+ SOLDATO_ASSET
};
typedef struct Assets {
diff --git a/src/entities/soldato.c b/src/entities/soldato.c
index 4abe5af..da8df84 100644
--- a/src/entities/soldato.c
+++ b/src/entities/soldato.c
@@ -2,7 +2,7 @@
#include "game.h"
void initSoldato(Entity * entity, Game * game) {
- entity->model = &game->assets.models[ANTIFA_SHIP_ASSET];
+ entity->model = &game->assets.models[SOLDATO_ASSET];
entity->velocity.angularVelocity = (AxisAngle){(Vector3){1.0, 1.0, 1.0}, 1.0};
}
diff --git a/src/game.c b/src/game.c
index a89cf0c..2044cac 100644
--- a/src/game.c
+++ b/src/game.c
@@ -12,26 +12,18 @@ void initGame(Game * game) {
LoadAssets(&game->assets);
// Screen id.
- game->screenId = SCREEN_GAME;
+ game->screenId = SCREEN_MAIN_MENU;
// Main menu.
initMainMenu(game);
// Camera.
initPlayerCamera(&game->playerCamera);
-
- DisableCursor();
// World.
initWorld(&game->world);
// Debug.
- // Add player.
- //addEntityToWorld(
- // &game->world,
- // createEntity(ENTITY_ANTIFA, game)
- //);
-
WorldEntry entries[] = {
(WorldEntry){ENTITY_ANTIFA, Vector3Zero(), QuaternionIdentity()},
(WorldEntry){ENTITY_SOLDATO, (Vector3){10.0, 10.0, 10.0}, QuaternionIdentity()},
@@ -46,29 +38,6 @@ void initGame(Game * game) {
entries,
sizeof(entries) / sizeof(WorldEntry)
);
-
- puts("v");
-
- for (int i = 0; i < game->world.vacantIdsCount; ++i)
- printf("%d\n", game->world.vacantIds[i]);
-
- puts("l");
-
- for (int i = 0; i < game->world.lookUpSize; ++i) {
- printf("%d\n", game->world.lookUp[i]);
-
- Entity * e = getEntityFromWorld(game->world, i);
-
- if (e == NULL) {
- puts("null");
- continue;
- }
-
- if (e->id == i)
- printf("good %x\n", e->fingerprint);
- else
- printf("bad %d\n", e->id);
- }
}
void closeGame(Game * game) {
diff --git a/src/gameScreen.c b/src/gameScreen.c
index 1eb6b55..3282a8f 100644
--- a/src/gameScreen.c
+++ b/src/gameScreen.c
@@ -21,3 +21,12 @@ void updateGameScreen(Game * game) {
EndMode3D();
}
+
+void openGameScreen(Game * game) {
+ game->screenId = SCREEN_GAME;
+ DisableCursor();
+}
+
+void closeGameScreen(Game * game) {
+ EnableCursor();
+}
diff --git a/src/gameScreen.h b/src/gameScreen.h
index 8c3de89..5876e91 100644
--- a/src/gameScreen.h
+++ b/src/gameScreen.h
@@ -9,4 +9,9 @@ typedef struct GameScreen {
void updateGameScreen(Game * game);
+void openGameScreen(Game * game);
+
+// Call before setting screen when in game screen
+void closeGameScreen(Game * game);
+
#endif
diff --git a/src/mainMenu.c b/src/mainMenu.c
index fc67972..c0568f9 100644
--- a/src/mainMenu.c
+++ b/src/mainMenu.c
@@ -1,5 +1,6 @@
#include "mainMenu.h"
#include "game.h"
+#include "gameScreen.h"
void initMainMenu(Game * game) {
game->mainMenu = (MainMenu){
@@ -25,7 +26,7 @@ void updateMainMenu(Game * game) {
bool start = GuiButton(mainMenu->startButton, "Start");
if (start)
- game->screenId = SCREEN_GAME;
+ openGameScreen(game);
if (IsWindowResized())
resizeMainMenu(game);
diff --git a/src/playerCamera.c b/src/playerCamera.c
index df2cce4..e7db154 100644
--- a/src/playerCamera.c
+++ b/src/playerCamera.c
@@ -3,10 +3,6 @@
void initPlayerCamera(Camera3D * camera) {
*camera = (Camera3D){
- //.position = (Vector3){15.0, 15.0, 15.0},
- .position = (Vector3){0.0, 15.0, -15.0},
- .target = (Vector3){0.0, 0.0, 0.0},
- .up = (Vector3){0.0, 1.0, 0.0},
.fovy = 90.0,
.projection = CAMERA_PERSPECTIVE
};
@@ -15,7 +11,6 @@ void initPlayerCamera(Camera3D * camera) {
void updatePlayerCamera(Camera3D * camera, Game * game) {
Entity * player = &game->world.entities[0];
- //UpdateCamera(camera, CAMERA_FIRST_PERSON);
camera->target = player->position;
Matrix m = QuaternionToMatrix(QuaternionInvert(player->rotation));