forked from s464965/WMICraft
refactor: Game class
This commit is contained in:
parent
bed39e9c44
commit
9f1ca750f1
41
game.py
Normal file
41
game.py
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
import pygame
|
||||||
|
|
||||||
|
GAME_TITLE = 'WMICraft'
|
||||||
|
WINDOW_HEIGHT = 900
|
||||||
|
WINDOW_WIDTH = 900
|
||||||
|
GRID_CELL_PADDING = 3
|
||||||
|
GRID_CELL_WIDTH = 42
|
||||||
|
GRID_CELL_HEIGHT = 42
|
||||||
|
ROWS = 20
|
||||||
|
COLUMNS = 20
|
||||||
|
FPS_COUNT = 60
|
||||||
|
GREEN = (0, 255, 0)
|
||||||
|
|
||||||
|
|
||||||
|
class Game:
|
||||||
|
def __init__(self):
|
||||||
|
pygame.init()
|
||||||
|
pygame.display.set_caption(GAME_TITLE)
|
||||||
|
pygame.display.set_icon(pygame.image.load('resources/icons/sword.png'))
|
||||||
|
self.screen = pygame.display.set_mode((WINDOW_HEIGHT, WINDOW_WIDTH))
|
||||||
|
self.clock = pygame.time.Clock()
|
||||||
|
|
||||||
|
def start(self):
|
||||||
|
running = True
|
||||||
|
while running:
|
||||||
|
for event in pygame.event.get():
|
||||||
|
if event.type == pygame.QUIT:
|
||||||
|
running = False
|
||||||
|
self.draw_grid()
|
||||||
|
pygame.display.update()
|
||||||
|
self.clock.tick(FPS_COUNT)
|
||||||
|
pygame.quit()
|
||||||
|
|
||||||
|
def draw_grid(self):
|
||||||
|
for row in range(ROWS):
|
||||||
|
for column in range(COLUMNS):
|
||||||
|
box_rect = [(GRID_CELL_PADDING + GRID_CELL_WIDTH) * column + GRID_CELL_PADDING,
|
||||||
|
(GRID_CELL_PADDING + GRID_CELL_HEIGHT) * row + GRID_CELL_PADDING,
|
||||||
|
GRID_CELL_WIDTH,
|
||||||
|
GRID_CELL_HEIGHT]
|
||||||
|
pygame.draw.rect(self.screen, GREEN, box_rect)
|
44
main.py
44
main.py
@ -1,43 +1,5 @@
|
|||||||
import pygame
|
from game import Game
|
||||||
|
|
||||||
pygame.init()
|
|
||||||
|
|
||||||
GAME_TITLE = 'WMICraft'
|
|
||||||
WINDOW_HEIGHT = 900
|
|
||||||
WINDOW_WIDTH = 900
|
|
||||||
GRID_CELL_PADDING = 3
|
|
||||||
GRID_CELL_WIDTH = 42
|
|
||||||
GRID_CELL_HEIGHT = 42
|
|
||||||
GREEN = (0, 255, 0)
|
|
||||||
|
|
||||||
screen = pygame.display.set_mode((WINDOW_HEIGHT, WINDOW_WIDTH))
|
|
||||||
pygame.display.set_caption(GAME_TITLE)
|
|
||||||
icon = pygame.image.load('resources/icons/sword.png')
|
|
||||||
pygame.display.set_icon(icon)
|
|
||||||
|
|
||||||
|
|
||||||
def draw_grid():
|
|
||||||
for row in range(20):
|
|
||||||
for column in range(20):
|
|
||||||
box_rect = [(GRID_CELL_PADDING + GRID_CELL_WIDTH) * column + GRID_CELL_PADDING,
|
|
||||||
(GRID_CELL_PADDING + GRID_CELL_HEIGHT) * row + GRID_CELL_PADDING,
|
|
||||||
GRID_CELL_WIDTH,
|
|
||||||
GRID_CELL_HEIGHT]
|
|
||||||
pygame.draw.rect(screen, GREEN, box_rect)
|
|
||||||
|
|
||||||
|
|
||||||
def main():
|
|
||||||
running = True
|
|
||||||
|
|
||||||
while running:
|
|
||||||
for event in pygame.event.get():
|
|
||||||
if event.type == pygame.QUIT:
|
|
||||||
running = False
|
|
||||||
draw_grid()
|
|
||||||
pygame.display.update()
|
|
||||||
|
|
||||||
pygame.quit()
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
main()
|
game = Game()
|
||||||
|
game.start()
|
||||||
|
Loading…
Reference in New Issue
Block a user