elukjanovica 2024-06-08 08:18:49 +03:00
parent e77dd66b2f
commit c6f3ee519c
1 changed files with 38 additions and 32 deletions

68
main.py
View File

@ -1213,11 +1213,14 @@ while run:
selected_album = render_albums() selected_album = render_albums()
if current_mode == "select": if current_mode == "select":
if image_display is None or current_album != selected_album: try:
selected_image = ImageRender(selected_album) if image_display is None or current_album != selected_album:
image_display = True selected_image = ImageRender(selected_album)
image_display = True
selected_image.render(screen) selected_image.render(screen)
except (AttributeError, NameError):
pass
event_list = pygame.event.get() event_list = pygame.event.get()
@ -1231,35 +1234,38 @@ while run:
if not non_movable_area.collidepoint(pygame.mouse.get_pos()): if not non_movable_area.collidepoint(pygame.mouse.get_pos()):
can_move = True can_move = True
if current_mode == "select": if current_mode == "select":
clicked_image_rect = ImageRender.image_save(selected_album, current_img) try:
clicked_image = clicked_image_rect.collidepoint(event.pos) clicked_image_rect = ImageRender.image_save(selected_album, current_img)
if clicked_image: clicked_image = clicked_image_rect.collidepoint(event.pos)
clicked = True if clicked_image:
update_puzzle_data(completed, not_shuffled, current_timer_text, current_moves, real_time) clicked = True
puzzle_data[f'current {puzzle_version}']["selected_image"] = IMAGES_PATH + selected_album + "/" + current_img update_puzzle_data(completed, not_shuffled, current_timer_text, current_moves, real_time)
with open(PUZZLE_FILE, 'w') as puzzle_file: puzzle_data[f'current {puzzle_version}']["selected_image"] = IMAGES_PATH + selected_album + "/" + current_img
puzzle_file.write(json.dumps(puzzle_data)) with open(PUZZLE_FILE, 'w') as puzzle_file:
completed, not_shuffled, timer_text, current_timer_text, displayed_current_moves, current_moves = load_data() puzzle_file.write(json.dumps(puzzle_data))
elapsed_time = 0 completed, not_shuffled, timer_text, current_timer_text, displayed_current_moves, current_moves = load_data()
current_moves = 0 elapsed_time = 0
shuffle_pieces(puzzle_pieces) current_moves = 0
load_puzzle() shuffle_pieces(puzzle_pieces)
current_mode = "game" load_puzzle()
timer_running = False current_mode = "game"
timer_start_time = 0 timer_running = False
real_time = elapsed_time timer_start_time = 0
total_paused_time = 0 real_time = elapsed_time
timer_button.disable() total_paused_time = 0
clicked = None timer_button.disable()
last_click_time = pygame.time.get_ticks() clicked = None
last_click_time = pygame.time.get_ticks()
if to_left_button.is_hovered(event.pos): if to_left_button.is_hovered(event.pos):
selected_image.update_index(-1) selected_image.update_index(-1)
last_image_switch_time = current_time last_image_switch_time = current_time
if to_right_button.is_hovered(event.pos): if to_right_button.is_hovered(event.pos):
selected_image.update_index(1) selected_image.update_index(1)
last_image_switch_time = current_time last_image_switch_time = current_time
except NameError:
quick_game()
elif current_mode == "game": elif current_mode == "game":
if non_movable_area.collidepoint(event.pos) and not timer_running: if non_movable_area.collidepoint(event.pos) and not timer_running: