From 4333c3dd861a4a2776a09524a7a77c9fe0bee27e Mon Sep 17 00:00:00 2001 From: Fred Z Date: Tue, 27 Mar 2018 02:39:40 +0200 Subject: [PATCH] Creates header for messaging, put welcome message --- conf.py | 7 ++++++- main.py | 27 ++++++++++++++++++--------- 2 files changed, 24 insertions(+), 10 deletions(-) diff --git a/conf.py b/conf.py index 775fcf3..9049c65 100644 --- a/conf.py +++ b/conf.py @@ -30,8 +30,13 @@ MOVE_STATUS_MSG = { CELL_SIZE_PX = 30 # Size of the tiles, in pixels MAZE_SIZE_TIL = 15 # Size of a map, in tiles +BLACK = (0, 0, 0) +BLUE = (0, 0, 128) +GREEN = (0, 255, 0) +WHITE = (255, 255, 255) # Messages +CAPTION = "OCP3, a pygame maze" ERR_MAP = "ERR_MAP: «{}»" MSG_START_GAME = "Welcome in OCP3.\nUse arrow keys to play, any other key to quit." @@ -78,7 +83,7 @@ def maze_draw(WINDOW, map_string): back_tiles.append(pygame.image.load(img).convert_alpha()) x = (cell % MAZE_SIZE_TIL) * CELL_SIZE_PX - y = (cell // MAZE_SIZE_TIL) * CELL_SIZE_PX + CELL_SIZE_PX + y = (cell // MAZE_SIZE_TIL) * CELL_SIZE_PX + (2 * CELL_SIZE_PX) WINDOW.blit(back_tiles[cell], (x, y)) # Refresh diff --git a/main.py b/main.py index 2049f25..278c2e1 100644 --- a/main.py +++ b/main.py @@ -11,27 +11,36 @@ See [README](https://github.com/freezed/ocp3/blob/master/README.md) for details """ import pygame +import math from pygame.locals import ( K_UP, K_DOWN, K_RIGHT, K_LEFT, KEYDOWN, QUIT, RESIZABLE ) from map import Map -from conf import BACKGROUND_IMG, CELL_SIZE_PX, elmt_val, MAP_FILE, maze_draw, MAZE_SIZE_TIL +from conf import BACKGROUND_IMG, BLACK, BLUE, CAPTION, CELL_SIZE_PX, elmt_val, GREEN, MAP_FILE, maze_draw, MAZE_SIZE_TIL, WHITE -# MAIN SCRIPT +# Constant calculation GAME_KEYS = [K_UP, K_DOWN, K_RIGHT, K_LEFT] -WINDOW_SIZE_PX = CELL_SIZE_PX * MAZE_SIZE_TIL +WINDOW_SIZE_PX_H = CELL_SIZE_PX * MAZE_SIZE_TIL +WINDOW_SIZE_PX_V = WINDOW_SIZE_PX_H + (2 * CELL_SIZE_PX) +WIN_DIM = (WINDOW_SIZE_PX_H, WINDOW_SIZE_PX_V) +FONT_SIZE = math.floor(0.9 * CELL_SIZE_PX) pygame.init() - -WINDOW = pygame.display.set_mode( - (WINDOW_SIZE_PX, WINDOW_SIZE_PX + CELL_SIZE_PX), RESIZABLE -) -BACKGROUND = pygame.image.load(BACKGROUND_IMG).convert() -WINDOW.blit(BACKGROUND, (0, CELL_SIZE_PX)) +WINDOW = pygame.display.set_mode(WIN_DIM, RESIZABLE) +pygame.display.set_caption(CAPTION) +WINDOW.blit(pygame.image.load(BACKGROUND_IMG).convert(), (0, (2 * CELL_SIZE_PX))) # Loading map MAP_GAME = Map(MAP_FILE) +# Header messaging +h_msg = MAP_GAME.status_message.splitlines() +FONT = pygame.font.Font(None, FONT_SIZE) +h1_txt = FONT.render(h_msg[0], True, WHITE, BLACK) +h2_txt = FONT.render(h_msg[1], True, WHITE, BLACK) +WINDOW.blit(h1_txt, (0, 0)) +WINDOW.blit(h2_txt, (0, CELL_SIZE_PX)) + # Draw maze maze_draw(WINDOW, MAP_GAME.map_print().replace('\n', ''))