def activate(self, menu): from arcade.glui.window import create_main_menu new_menu = create_main_menu() # State.get().history = [new_menu] State.get().history.append(new_menu) from arcade.glui.window import set_current_menu set_current_menu(new_menu)
def run_game(self): new_menu = LaunchMenu(self.items[0], self.controller) State.get().history.append(new_menu) # FIXME from arcade.glui.window import set_current_menu set_current_menu(new_menu)
def go_back(self): print("LaunchMenu.go_back") if self.state in [STATE_STARTING, STATE_PREPARING]: if self.gc_runner: self.gc_runner.abort() self.state = STATE_ABORTING if self.state in [STATE_ABORTED]: State.get().history.pop() set_current_menu(State.get().history[-1])
def show_input(): # print("Create input menu, controller = ", id(self.controller)) # new_menu = InputMenu(self.game_item, self.controller) # State.get().history.append(new_menu) # # FIXME # from .window import set_current_menu # set_current_menu(new_menu) print("Create input menu, runner = ", id(self.runner)) new_menu = InputMenu(self.game_item, self.runner) State.get().history.append(new_menu) # FIXME from arcade.glui.window import set_current_menu set_current_menu(new_menu)
def update_state(self): if self.state == STATE_STARTING: self.gc_runner = GameCenterRunner(controller=self.controller) # prepare will unpack the game and prepare game files self.gc_runner.prepare() self.state = STATE_PREPARING self.throbber.throbber_start_time = 0 elif self.state == STATE_PREPARING: if self.gc_runner.error: pass elif self.gc_runner.done: self.wait_run_time = State.get().time FadeDialog(self.wait_run_time).show() self.state = STATE_WAITRUN elif self.state == STATE_WAITRUN: if State.get().time - self.wait_run_time > FADE_TIME: set_ingame_status() self.gc_runner.run() self.state = STATE_RUNNING elif self.state == STATE_RUNNING: InputHandler.set_inhibited(True) if self.gc_runner.error: pass elif self.gc_runner.done: self.state = STATE_STOPPING elif self.state == STATE_STOPPING: InputHandler.set_inhibited(False) State.get().history.pop() State.get().history.pop() State.get().history.pop() set_current_menu(State.get().history[-1]) back_to_menu_from_game() Dialog.get_current().close() from arcade.glui.window import main_window main_window.restore_window_if_necessary() elif self.state == STATE_ABORTING: pass