public static int start_action(int i) { Audio.audio_play(Common.AUD_MENU, 1.0f); switch (i) { case START_BACK: return(State.goto_state(st_set.get_st_set())); case START_CHALLENGE: if (Config.config_cheat() != 0) { Progress.progress_init(Progress.curr_mode() == MODE.MODE_CHALLENGE ? MODE.MODE_NORMAL : MODE.MODE_CHALLENGE); gui.gui_toggle(challenge_id); return(1); } else { Progress.progress_init(MODE.MODE_CHALLENGE); return(start_action(0)); } case Util.GUI_MOST_COINS: case Util.GUI_BEST_TIMES: case Util.GUI_FAST_UNLOCK: Util.gui_score_set(i); return(State.goto_state(get_st_start())); case START_OPEN_GOALS: Config.config_set_d(Config.CONFIG_LOCK_GOALS, 0); return(State.goto_state(get_st_start())); case START_LOCK_GOALS: Config.config_set_d(Config.CONFIG_LOCK_GOALS, 1); return(State.goto_state(get_st_start())); default: if (Progress.progress_play(i) != 0) { return(State.goto_state(st_level.get_st_level())); } break; } return(1); }