From b9db4684b8666a786cc2418b0d48c0dc5377c91a Mon Sep 17 00:00:00 2001 From: Arseshka Lu Date: Sun, 3 Mar 2024 22:50:06 +0200 Subject: [PATCH] cursor change --- bla.py | 23 +++++++++++++++++++++-- cursor.png | Bin 0 -> 2613 bytes 2 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 cursor.png diff --git a/bla.py b/bla.py index 8ed184c..9a6344c 100644 --- a/bla.py +++ b/bla.py @@ -18,6 +18,7 @@ FIRE_DELAY = 1000 # Задержка между выстрелами в мил WHITE = (255, 255, 255) BLACK = (0, 0, 0) score = 0 + # Инициализация Pygame pygame.init() @@ -45,6 +46,10 @@ explosion_images = [pygame.image.load(f"explosion_{i}.png") for i in range(1, 48 stoneexplosion_images = [pygame.image.load(f"stoneexplosion_{i}.png") for i in range(1, 6)] menu_background = pygame.transform.scale(pygame.image.load("menu_background.jpg"), (SCREEN_WIDTH, SCREEN_HEIGHT)) +cursor = pygame.image.load("cursor.png") +pygame.mouse.set_visible(False) +cursor_offset_x = cursor.get_width() // 2 +cursor_offset_y = cursor.get_height() // 2 class Explosion(pygame.sprite.Sprite): def __init__(self, x, y): @@ -352,6 +357,9 @@ def draw_menu(): quit_rect = quit_text.get_rect(center=(SCREEN_WIDTH // 2, SCREEN_HEIGHT // 2 + 100)) screen.blit(quit_text, quit_rect) + x, y = pygame.mouse.get_pos() + screen.blit(cursor, (x - cursor_offset_x, y - cursor_offset_y)) + pygame.display.flip() return start_rect, settings_rect, quit_rect @@ -379,12 +387,16 @@ def draw_settings_menu(): # Рисуем кнопку для управления музыкой if pygame.mixer.music.get_busy(): - music_text = font.render("Music Off", True, WHITE) - else: music_text = font.render("Music On", True, WHITE) + else: + music_text = font.render("Music Off", True, WHITE) music_rect = music_text.get_rect(center=(SCREEN_WIDTH // 2, SCREEN_HEIGHT // 2 - 100)) screen.blit(music_text, music_rect) + x, y = pygame.mouse.get_pos() + screen.blit(cursor, (x - cursor_offset_x, y - cursor_offset_y)) + + pygame.display.flip() return quit_rect, music_rect @@ -447,6 +459,9 @@ while running: if not paused: # If not paused, update game state # Update sprites + x, y = pygame.mouse.get_pos() + screen.blit(cursor, (x - cursor_offset_x, y - cursor_offset_y)) + all_sprites.update() # Проверка столкновений пуль с танками @@ -561,6 +576,10 @@ while running: pygame.draw.rect(screen, (0, 255, 0), ( score_rect.topleft, (score_rect.width, score_rect.height))) # Draw a green rectangle behind the score screen.blit(score_text, score_rect.topleft) + + x, y = pygame.mouse.get_pos() + screen.blit(cursor, (x - cursor_offset_x, y - cursor_offset_y)) + pygame.display.flip() clock.tick(FPS) diff --git a/cursor.png b/cursor.png new file mode 100644 index 0000000000000000000000000000000000000000..0ebdfe26f750fb95479c904c74414368821f0eac GIT binary patch literal 2613 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 X?BXkL5Lk{300000NkvXXu0mjf!2Q_f literal 0 HcmV?d00001