I want to create a state machine for menu in my SDL game. So this is my code without the SDL I just want to ask if this is a good way to create it.
here is a code:
#include <stdio.h>
#include <windows.h>
enum states
{
Menu,
Game,
Game_over,
Exit
};
int main()
{
int game_is_running = 1;
enum states state = Menu;
while(game_is_running == 1)
{
switch(state)
{
case Menu:
state = Game;
printf("menu screen with play and exit button.\n"); //need to add if exit or play is pressed
if exit then exit program if play than you know...
break;
case Game:
state = Game_over;
printf("after play button is pressed game screen will show up.\n"); //after this i will come back to menu.
break;
case Game_over:
state = Exit;
printf("screen after game.\n");
break;
case Exit:
printf("turn game off.\n"); //this will be in the if function with a game.
game_is_running = 0;
break;
}
Sleep(1000); // sleep for a second just for test
}
return 0;
}
`
`