Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pygame
- pygame.init()
- size = (700, 700)
- black = (0, 0, 0)
- white = (255, 255, 255)
- pink = (255, 73, 243)
- blue = (75, 193, 255)
- window = pygame.display.set_mode(size)
- clicked = False
- title1_color = (0, 0, 0)
- title1_rect = pygame.Rect(300, 100, 50, 50)
- title1_font = pygame.font.SysFont(None, 46)
- title1_text = title1_font.render("Text1", True, pink)
- title1_text_rect = title1_text.get_rect(center=title1_rect.center)
- title2_color = (0, 0, 0)
- title2_rect = pygame.Rect(300, 150, 50, 50)
- title2_font = pygame.font.SysFont(None, 46)
- title2_text = title2_font.render("Text2", True, blue)
- title2_text_rect = title2_text.get_rect(center=title2_rect.center)
- title3_color = (0, 0, 0)
- title3_rect = pygame.Rect(300, 200, 50, 50)
- title3_font = pygame.font.SysFont(None, 46)
- title3_text = title3_font.render("Text3", True, white)
- title3_text_rect = title3_text.get_rect(center=title3_rect.center)
- play_color = blue
- play = pygame.Rect(275, 300, 100, 50)
- play_font = pygame.font.SysFont(None, 40)
- play_text = play_font.render("PLAY", True, white)
- play_text_rect = play_text.get_rect(center=play.center)
- quit_color = pink
- quit = pygame.Rect(275, 400, 100, 50)
- quit_font = pygame.font.SysFont(None, 40)
- quit_text = quit_font.render("QUIT", True, white)
- quit_text_rect = quit_text.get_rect(center=quit.center)
- level1_color = pink
- level1 = pygame.Rect(275, 200, 100, 50)
- level1_font = pygame.font.SysFont(None, 36)
- level1_text = level1_font.render("LEVEL 1", True, white)
- level1_text_rect = level1_text.get_rect(center=level1.center)
- # --------Added---------
- MENU = 0
- LEVEL_ONE = 1
- game_state = MENU
- # --------Break out into functions---------
- def draw_menu(window: pygame.Surface):
- pygame.draw.rect(window, title1_color, title1_rect)
- window.blit(title1_text, title1_text_rect)
- pygame.draw.rect(window, title2_color, title2_rect)
- window.blit(title2_text, title2_text_rect)
- pygame.draw.rect(window, title3_color, title3_rect)
- window.blit(title3_text, title3_text_rect)
- pygame.draw.rect(window, play_color, play)
- window.blit(play_text, play_text_rect)
- pygame.draw.rect(window, quit_color, quit)
- window.blit(quit_text, quit_text_rect)
- def draw_level_one(window: pygame.Surface):
- pygame.draw.rect(window, level1_color, level1)
- window.blit(level1_text, level1_text_rect)
- running = True
- while running:
- pos = pygame.mouse.get_pos()
- for event in pygame.event.get():
- if event.type == pygame.QUIT:
- running = False
- # -------Reorganized-------
- if event.type == pygame.MOUSEBUTTONDOWN:
- if play.collidepoint(pos):
- print("clicked")
- game_state = LEVEL_ONE
- elif quit.collidepoint(pos):
- running = False
- break
- window.fill(black)
- # ---------Refactored--------
- if game_state == 0:
- draw_menu(window)
- elif game_state == 1:
- draw_level_one(window)
- pygame.display.update()
Advertisement
Add Comment
Please, Sign In to add comment