static int pause_action(int tok, int val) { audio_play(AUD_MENU, 1.0f); switch (tok) { case PAUSE_CONTINUE: audio_pause(0); video_set_grab(0); return goto_state(st_continue); case PAUSE_RESTART: if (progress_same()) { audio_pause(0); video_set_grab(1); return goto_state(&st_play_ready); } break; case PAUSE_EXIT: progress_stat(GAME_NONE); progress_stop(); audio_pause(0); audio_music_stop(); return goto_state(&st_exit); } return 1; }
static int play_ready_enter(struct state *st, struct state *prev) { audio_play(AUD_READY, 1.0f); video_set_grab(1); hud_cam_pulse(config_get_d(CONFIG_CAMERA)); return play_ready_gui(); }
static int stroke_enter(void) { hud_init(); game_clr_mag(); config_set_d(CONFIG_CAMERA, 2); video_set_grab(!paused); if (paused) paused = 0; return 0; }
static int stroke_enter(struct state *st, struct state *prev) { hud_init(); game_clr_mag(); config_set_d(CONFIG_CAMERA, 2); video_set_grab(1); if (paused) paused = 0; return 0; }