#ifndef PRES_STATE_MAIN_MENU_H
#define PRES_STATE_MAIN_MENU_H

#include "states.h"
#include "state_ingame.h"
#include "instance/game_instance.h"

typedef enum {
    Main_Menu_Mode_Home,
    Main_Menu_Mode_Singleplayer,
    Main_Menu_Mode_Multiplayer,

    Main_Menu_Mode_Game_Setup,
    Main_Menu_Mode_Multiplayer_Join,
} Main_Menu_Mode;

typedef struct {
    Main_Menu_Mode mode;

    Game_Session_Settings session_settings;

    Game_Instance *game_instance;

    bool *should_quit_game;

    Presentation_State_Ingame_Context *ingame_ctx;

    char session_id_input[6];
} Presentation_State_Main_Menu_Context;

void presentation_state_main_menu_init(Presentation_State_Main_Menu_Context *ctx);

#endif