def try_swap(): global cursor_pos margin = Globals.margin image_size = Globals.image_size x, y = pygame.mouse.get_pos() x = int(int(x - margin[0]) / image_size) y = int(int(y - margin[1]) / image_size) if not (x < 0 or x >= Gameboard.Gameboard_size or y < 0 or y >= Gameboard.Gameboard_size): if (Globals.selected_element == [x, y]): Globals.selected_element = (-1, -1) elif Globals.selected_element == (-1, -1): Globals.selected_element = [x, y] else: if coord_distance(Globals.selected_element, [x, y]) <= 1: Gameboard.swap_elements(Globals.selected_element, [x, y]) old_swap = ([x, y], Globals.selected_element) ## if we didn't get a match, undo this swap if not Gameboard.check_adjacency(3): Gameboard.swap_elements(old_swap[0], old_swap[1]) return Gameboard.check_drop() set_game_state(Globals.Game_State.animation) Globals.selected_element = (-1, -1) else: Audio.Cancel()
def try_swap(): global cursor_pos margin = Globals.margin image_size = Globals.image_size x,y = pygame.mouse.get_pos() x = int(int(x - margin[0]) / image_size) y = int(int(y - margin[1]) / image_size) if not (x < 0 or x >= Gameboard.Gameboard_size or y < 0 or y >= Gameboard.Gameboard_size): if (Globals.selected_element == [x, y]): Globals.selected_element = (-1, -1) elif Globals.selected_element == (-1, -1): Globals.selected_element = [x, y] else: if coord_distance(Globals.selected_element, [x, y]) <= 1: Gameboard.swap_elements(Globals.selected_element, [x, y]) old_swap = ([x,y], Globals.selected_element) ## if we didn't get a match, undo this swap if not Gameboard.check_adjacency(3): Gameboard.swap_elements(old_swap[0], old_swap[1]) return Gameboard.check_drop() set_game_state(Globals.Game_State.animation) Globals.selected_element = (-1, -1) else: Audio.Cancel()
def game_loop(): if (get_ticks() >= Globals.end_time and Globals.game_state != Globals.Game_State.game_over): game_over() elif Globals.game_state == Globals.Game_State.ready: poll_events() elif Globals.game_state == Globals.Game_State.animation: do_animations() elif Globals.game_state == Globals.Game_State.update: if Gameboard.check_drop(): set_game_state(Globals.Game_State.animation) elif not Gameboard.check_adjacency(Globals.match_length): set_game_state(Globals.Game_State.ready) Score.Reset_Combo() Globals.current_turn += 1 if not Gameboard.check_availible_moves(): Graphic_Element.make_graphic_element( TextHandler.Render_TextBox("Shuffling Board",(255,255,255)), 250, 250, get_ticks() + 1000) reset_board() elif Globals.game_state == Globals.Game_State.game_over: poll_events()
def game_loop(): if (get_ticks() >= Globals.end_time and Globals.game_state != Globals.Game_State.game_over): game_over() elif Globals.game_state == Globals.Game_State.ready: poll_events() elif Globals.game_state == Globals.Game_State.animation: do_animations() elif Globals.game_state == Globals.Game_State.update: if Gameboard.check_drop(): set_game_state(Globals.Game_State.animation) elif not Gameboard.check_adjacency(Globals.match_length): set_game_state(Globals.Game_State.ready) Score.Reset_Combo() Globals.current_turn += 1 if not Gameboard.check_availible_moves(): Graphic_Element.make_graphic_element( TextHandler.Render_TextBox("Shuffling Board", (255, 255, 255)), 250, 250, get_ticks() + 1000) reset_board() elif Globals.game_state == Globals.Game_State.game_over: poll_events()