Replace hardcoded scene values to enum
parent
0c461d3167
commit
33de816841
10
main.c
10
main.c
|
@ -80,11 +80,11 @@ int main(void)
|
|||
level_sel_scene.data.level_pack = pack;
|
||||
init_level_select_scene(&level_sel_scene);
|
||||
|
||||
scenes[0] = &menu_scene.scene;
|
||||
scenes[1] = &level_sel_scene.scene;
|
||||
scenes[2] = &level_scene.scene;
|
||||
scenes[3] = &sandbox_scene.scene;
|
||||
change_scene(&engine, 0);
|
||||
scenes[MAIN_MENU_SCENE] = &menu_scene.scene;
|
||||
scenes[LEVEL_SELECT_SCENE] = &level_sel_scene.scene;
|
||||
scenes[GAME_SCENE] = &level_scene.scene;
|
||||
scenes[SANDBOX_SCENE] = &sandbox_scene.scene;
|
||||
change_scene(&engine, MAIN_MENU_SCENE);
|
||||
|
||||
const float DT = 1.0f/60.0f;
|
||||
while (!WindowShouldClose())
|
||||
|
|
|
@ -35,9 +35,11 @@ typedef enum SFXTag {
|
|||
COIN_SFX,
|
||||
} SFXTag_t;
|
||||
|
||||
//typedef enum SceneType {
|
||||
// LEVEL_SCENE = 0,
|
||||
// MENU_SCENE,
|
||||
//}SceneType_t;
|
||||
typedef enum SceneType {
|
||||
MAIN_MENU_SCENE = 0,
|
||||
LEVEL_SELECT_SCENE,
|
||||
GAME_SCENE,
|
||||
SANDBOX_SCENE,
|
||||
}SceneType_t;
|
||||
|
||||
#endif
|
||||
|
|
|
@ -89,7 +89,7 @@ static void level_do_action(Scene_t* scene, ActionType_t action, bool pressed)
|
|||
case ACTION_EXIT:
|
||||
if(scene->engine != NULL)
|
||||
{
|
||||
change_scene(scene->engine, 0);
|
||||
change_scene(scene->engine, MAIN_MENU_SCENE);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#include "scene_impl.h"
|
||||
#include "assets_tag.h"
|
||||
#include "raymath.h"
|
||||
#include <stdio.h>
|
||||
|
||||
|
@ -42,6 +43,12 @@ static void level_select_do_action(Scene_t* scene, ActionType_t action, bool pre
|
|||
data->scroll = Clamp(data->scroll, 0, 400);
|
||||
}
|
||||
break;
|
||||
case ACTION_EXIT:
|
||||
if(scene->engine != NULL)
|
||||
{
|
||||
change_scene(scene->engine, MAIN_MENU_SCENE);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
@ -84,6 +91,7 @@ void init_level_select_scene(LevelSelectScene_t* scene)
|
|||
sc_array_add(&scene->scene.systems, &level_select_render_func);
|
||||
sc_map_put_64(&scene->scene.action_map, KEY_UP, ACTION_UP);
|
||||
sc_map_put_64(&scene->scene.action_map, KEY_DOWN, ACTION_DOWN);
|
||||
sc_map_put_64(&scene->scene.action_map, KEY_Q, ACTION_EXIT);
|
||||
}
|
||||
void free_level_select_scene(LevelSelectScene_t* scene)
|
||||
{
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#include "scene_impl.h"
|
||||
#include "assets_tag.h"
|
||||
#include "raymath.h"
|
||||
#include <stdio.h>
|
||||
|
||||
|
@ -21,10 +22,10 @@ static void exec_component_function(Scene_t* scene, int sel)
|
|||
switch(sel)
|
||||
{
|
||||
case 0:
|
||||
change_scene(scene->engine, 1);
|
||||
change_scene(scene->engine, LEVEL_SELECT_SCENE);
|
||||
break;
|
||||
case 1:
|
||||
change_scene(scene->engine, 2);
|
||||
change_scene(scene->engine, SANDBOX_SCENE);
|
||||
break;
|
||||
case 3:
|
||||
scene->state = 0;
|
||||
|
|
Loading…
Reference in New Issue