def on_mouse_release(self, x, y, button): """ Gestione evento pygame.MOUSEBUTTONUP :param x: :param y: :param button: :return: """ # verifica se nella lista dei bottoni relativi allo stato corrente ce ne è uno rilasciato if self.__current_state == MENU_START: Button.check_mouse_release_for_buttons( x, y, self.__button_list_menu_start) for bt in self.__button_list_menu_start: bt.pressed = False elif self.__current_state == PAUSE: Button.check_mouse_release_for_buttons(x, y, self.__button_list_pause) for bt in self.__button_list_pause: bt.pressed = False elif self.__current_state == GAME_WIN or self.__current_state == GAME_OVER: Button.check_mouse_release_for_buttons( x, y, self.__button_list_game_over_win) for bt in self.__button_list_game_over_win: bt.pressed = False elif self.__current_state == INSTRUCTIONS: Button.check_mouse_release_for_buttons( x, y, self.__button_list_instruction) for bt in self.__button_list_instruction: bt.pressed = False elif self.__current_state == LIST_LEVELS: Button.check_mouse_release_for_buttons(x, y, self.__button_list_levels) for bt in self.__button_list_levels: bt.pressed = False
def __set_button_menu_game_over_win(self): """ Inizializza i bottoni del menu GAME_OVER/GAME_WIN :return: """ self.__button_list_game_over_win = [] self.__button_list_game_over_win.append( Button(3, 1, "RESTART", self.__start_game)) self.__button_list_game_over_win.append( Button(4, 1, "MENU", self.__set_state_menu_start))
def __set_button_menu_pause(self): """ Inizializza i bottoni del munu PAUSE :return: """ # bottoni menu pause self.__button_list_pause = [] self.__button_list_pause.append( Button(3, 1, "RIPRENDI", self.__exit_menu_pause)) self.__button_list_pause.append( Button(4, 1, "RESTART", self.__start_game)) self.__button_list_pause.append( Button(5, 1, "MENU", self.__set_state_menu_start))
def __set_button_menu_start(self): """ Inizializza i bottoni del menu start :return: """ # Button (riga, colonna, txt, function, id=0) self.__button_list_menu_start = [] self.__button_list_menu_start.append( Button(2, 1, "START", self.__start_game)) self.__button_list_menu_start.append( Button(3, 1, "LIVELLI", self.__set_state_list_levels)) self.__button_list_menu_start.append( Button(4, 1, "ISTRUZIONI", self.__set_state_instructions)) self.__button_list_menu_start.append(Button(5, 1, "EXIT", sys.exit))
def __set_button_menu_instructions(self): """ Inizializza bottoni menu ISTRUZIONI :return: """ self.__button_list_instruction = [] self.__button_list_instruction.append( Button(9, 1, "BACK", self.__set_state_menu_start))
def __set_button_menu_levels(self): """ Inizializza bottoni del menu scelta LIVELLI :return: """ self.__button_list_levels = [] row = 2 column = 0 if DEBUG: print("num_livelli: " + str(MAX_LEVEL)) for i in range(1, MAX_LEVEL + 1): self.__button_list_levels.append( Button(row, column, "Livello " + str(i), self.__select_level, bt_id=i)) column += 1 if column == 3: column = 0 row += 1 self.__button_list_levels.append( Button(9, 1, "BACK", self.__set_state_menu_start))
def on_mouse_press(self, x, y, button): """ Gestione evento pygame.MOUSEBUTTONDOWN :param x: :param y: :param button: :return: """ # verifica se nella lista dei bottoni relativi allo stato corrente ce ne è uno premuto if self.__current_state == MENU_START: Button.check_mouse_press_for_buttons(x, y, self.__button_list_menu_start) if self.__current_state == PAUSE: Button.check_mouse_press_for_buttons(x, y, self.__button_list_pause) if self.__current_state == GAME_WIN or self.__current_state == GAME_OVER: Button.check_mouse_press_for_buttons( x, y, self.__button_list_game_over_win) if self.__current_state == INSTRUCTIONS: Button.check_mouse_press_for_buttons( x, y, self.__button_list_instruction) if self.__current_state == LIST_LEVELS: Button.check_mouse_press_for_buttons(x, y, self.__button_list_levels)