game.h (782B)
1 #pragma once 2 3 typedef struct Assets assets_t; 4 typedef struct Game game_t; 5 6 #include "entity.h" 7 #include "player.h" 8 #include "tile.h" 9 #include "menu.h" 10 #include "level.h" 11 #include "effect.h" 12 13 typedef enum { 14 STATE_MENU, 15 STATE_GAME, 16 } state_e; 17 18 struct Assets { 19 Texture2D tiles; 20 Texture2D entities; 21 Texture2D font; 22 Texture2D images; 23 }; 24 25 struct Game { 26 state_e state; 27 level_t *level; 28 bool quit; 29 bool defeat; 30 bool victory; 31 menu_t *menu; 32 player_t *player; 33 tile_t **tiles; 34 int tiles_len; 35 entity_t *entities; 36 int entities_len; 37 effect_t **effects; 38 int effects_len; 39 assets_t assets; 40 Camera2D camera; 41 int xp; 42 int sceen_timer; 43 }; 44 45 game_t *game_create(void); 46 void game_update(game_t *game); 47 void game_draw(game_t *game); 48 void game_free(game_t *game);