Argentum Online - Cliente
|
|
1 #ifndef __GAME_STATE_MONITOR_H
2 #define __GAME_STATE_MONITOR_H
4 #include <condition_variable>
13 WAITING_FOR_INITIALIZATION,
21 typedef enum { FIRST_LOGIN, NAME_NOT_FOUND, NAME_ALREADY_CONECTED } login_state_t;
23 typedef enum { FIRST_TRY, NAME_TAKEN } char_creation_state_t;
33 game_state_t game_state;
34 login_state_t login_state;
35 char_creation_state_t char_creation_state;
36 std::condition_variable cv;
void wait_for_game_state(game_state_t expected_game_state)
Duerme el thread llamante hasta que el estado del juego sea el esperado.
Definition: game_state_monitor.cpp:55
login_state_t get_login_state()
Devuelve el estado de login.
Definition: game_state_monitor.cpp:38
void quit()
Setea el estado como desconectado, y el estado de juego como EXITING.
Definition: game_state_monitor.cpp:48
void set_char_creation_state(char_creation_state_t new_char_creation_state)
Setea el nuevo estado de creacion de personaje.
Definition: game_state_monitor.cpp:32
Monitor mediante el cual se sincroniza el flujo entre vistas.
Definition: game_state_monitor.h:29
void set_game_state(game_state_t new_game_state)
Setea el nuevo estado del juego.
Definition: game_state_monitor.cpp:21
bool is_connected()
Indica si el cliente esta conectado.
Definition: game_state_monitor.cpp:10
void set_connected_status(bool new_connection_status)
Setea el nuevo estado de conexion.
Definition: game_state_monitor.cpp:15
game_state_t get_game_state()
Devuelve el estado del juego.
Definition: game_state_monitor.cpp:70
void set_login_state(login_state_t new_login_state)
Setea el nuevo estado del login.
Definition: game_state_monitor.cpp:27
char_creation_state_t get_char_creation_state()
Devuelve el estado de creacion de personaje.
Definition: game_state_monitor.cpp:43
void wait_for_next_game_state()
Duerme el thread llamante hasta que haya un cambio de estado.
Definition: game_state_monitor.cpp:65