refactor: file structure and cleanup

This commit is contained in:
korzepadawid 2022-03-11 19:42:17 +01:00
parent c39aba8c30
commit 190b2bec01
16 changed files with 49 additions and 53 deletions

0
common/__init__.py Normal file
View File

View File

@ -19,4 +19,4 @@ TILES = [
'sand.png',
'water.png',
'grass_with_tree.jpg',
]
]

0
logic/__init__.py Normal file
View File

View File

@ -1,22 +1,23 @@
import pygame
import sys
from colors import FONT_DARK, WHITE
from constants import GAME_TITLE, WINDOW_WIDTH, WINDOW_HEIGHT, FPS_COUNT, TILES
from grid import Grid
from helpers import draw_text
from logs import Logs
from stats import Stats
from knight import Knight
from monster import Monster
from spawner import Spawner
import pygame
from common.colors import FONT_DARK, WHITE
from common.constants import GAME_TITLE, WINDOW_WIDTH, WINDOW_HEIGHT, FPS_COUNT, TILES
from common.helpers import draw_text
from models.knight import Knight
from models.monster import Monster
from ui.logs import Logs
from ui.stats import Stats
from .grid import Grid
from .spawner import Spawner
class Game:
def __init__(self):
pygame.init()
pygame.display.set_caption(GAME_TITLE)
pygame.display.set_icon(pygame.image.load('resources/icons/sword.png'))
pygame.display.set_icon(pygame.image.load('./resources/icons/sword.png'))
self.screen = pygame.display.set_mode((WINDOW_WIDTH, WINDOW_HEIGHT))
self.clock = pygame.time.Clock()
@ -26,7 +27,7 @@ class Game:
converted_tile = pygame.image.load('resources/textures/' + tile_path).convert_alpha()
self.tiles.append((tile_path, converted_tile))
self.bg = pygame.image.load("resources/textures/bg.jpg")
self.bg = pygame.image.load("./resources/textures/bg.jpg")
click = False
@ -113,15 +114,14 @@ class Game:
grid = Grid(self.tiles)
stats = Stats()
logs = Logs()
knight1 = Knight("/resources/textures/knight.png")
knight2 = Knight("/resources/textures/knight.png")
knight1 = Knight("./resources/textures/knight.png")
knight2 = Knight("./resources/textures/knight.png")
spawn = Spawner(grid, [knight1, knight2], 4, 5, 8, 0)
spawn.spawn()
knights_list = pygame.sprite.Group()
knights_list.add(knight1)
knights_list.add(knight2)
while running:
self.screen.blit(self.bg, (0, 0))
@ -138,7 +138,7 @@ class Game:
logs.draw(self.screen)
knights_list.draw(self.screen)
monster1 = Monster(self.screen, "/resources/textures/dragon.png")
monster1 = Monster(self.screen, "./resources/textures/dragon.png")
monster_list = pygame.sprite.Group()
monster_list.add(monster1)
pygame.display.update()

View File

@ -1,8 +1,10 @@
import pygame
import random
from field import Field
from constants import ROWS, COLUMNS, GRID_CELL_PADDING, GRID_CELL_WIDTH, GRID_CELL_HEIGHT, BORDER_WIDTH, BORDER_RADIUS
import pygame
from common.constants import ROWS, COLUMNS, GRID_CELL_PADDING, GRID_CELL_WIDTH, GRID_CELL_HEIGHT, BORDER_WIDTH, \
BORDER_RADIUS
from .field import Field
class Grid:
@ -33,4 +35,3 @@ class Grid:
GRID_CELL_HEIGHT]
image = self.grid[row][column].converted_texture
screen.blit(pygame.transform.scale(image, (GRID_CELL_WIDTH, GRID_CELL_HEIGHT)), box_rect)

View File

@ -1,6 +1,7 @@
from constants import ROWS, COLUMNS, GRID_CELL_PADDING, GRID_CELL_WIDTH, GRID_CELL_HEIGHT, BORDER_WIDTH, BORDER_RADIUS
import random
from common.constants import GRID_CELL_PADDING, GRID_CELL_WIDTH, GRID_CELL_HEIGHT
class Spawner:
def __init__(self, grid, objs_to_spawn_list: list, width, height, pos_row, pos_column):
@ -20,9 +21,8 @@ class Spawner:
(GRID_CELL_PADDING + GRID_CELL_HEIGHT) * row + GRID_CELL_PADDING + 7])
for obj in self.objs_to_spawn_list:
random_tile = random.randint(0, len(coords)-1)
random_tile = random.randint(0, len(coords) - 1)
obj.rect.x = coords[random_tile][0]
obj.rect.y = coords[random_tile][1]
coords.pop(random_tile)
obj.update()

View File

@ -1,4 +1,4 @@
from game import Game
from logic.game import Game
if __name__ == '__main__':
game = Game()

0
models/__init__.py Normal file
View File

View File

@ -1,17 +1,13 @@
import pygame.image
from constants import ROWS, COLUMNS, GRID_CELL_PADDING, GRID_CELL_WIDTH, GRID_CELL_HEIGHT, BORDER_WIDTH, BORDER_RADIUS, \
WINDOW_WIDTH, WINDOW_HEIGHT
class Knight(pygame.sprite.Sprite):
def __init__(self, img):
super().__init__()
self.images = []
self.image = pygame.image.load("resources/textures/knight.png")
self.image = pygame.transform.scale(self.image, (40, 40))
self.images.append(self.image)
self.rect = self.image.get_rect()
knights_list = pygame.sprite.Group()
import pygame.image
class Knight(pygame.sprite.Sprite):
def __init__(self, img):
super().__init__()
self.images = []
self.image = pygame.image.load("./resources/textures/knight.png")
self.image = pygame.transform.scale(self.image, (40, 40))
self.images.append(self.image)
self.rect = self.image.get_rect()
knights_list = pygame.sprite.Group()

View File

@ -1,5 +1,4 @@
import pygame.image
import random
class Monster(pygame.sprite.Sprite):
@ -7,7 +6,7 @@ class Monster(pygame.sprite.Sprite):
def __init__(self, screen, img):
super().__init__()
self.images = []
self.image = pygame.image.load("resources/textures/dragon.png")
self.image = pygame.image.load("./resources/textures/dragon.png")
self.image = pygame.transform.scale(self.image, (40, 40))
self.images.append(self.image)
self.rect = self.image.get_rect()

0
ui/__init__.py Normal file
View File

View File

@ -1,8 +1,8 @@
import pygame
from colors import FONT_DARK, ORANGE, WHITE, RED
from constants import COLUMNS, GRID_CELL_PADDING, GRID_CELL_WIDTH, BORDER_WIDTH, BORDER_RADIUS
from helpers import draw_text
from common.colors import FONT_DARK, ORANGE, WHITE
from common.constants import COLUMNS, GRID_CELL_PADDING, GRID_CELL_WIDTH, BORDER_WIDTH, BORDER_RADIUS
from common.helpers import draw_text
class Logs:

View File

@ -1,8 +1,8 @@
import pygame
from colors import FONT_DARK, ORANGE, WHITE, RED
from constants import COLUMNS, GRID_CELL_PADDING, GRID_CELL_WIDTH, BORDER_WIDTH, BORDER_RADIUS
from helpers import draw_text
from common.colors import FONT_DARK, ORANGE, WHITE, RED
from common.constants import COLUMNS, GRID_CELL_PADDING, GRID_CELL_WIDTH, BORDER_WIDTH, BORDER_RADIUS
from common.helpers import draw_text
class Stats:
@ -21,8 +21,8 @@ class Stats:
pygame.draw.rect(screen, ORANGE, pygame.Rect(x, y + 65, 340, 3))
# shields
shield_blue = pygame.image.load('resources/textures/shield_blue.png')
shield_red = pygame.image.load('resources/textures/shield_red.png')
shield_blue = pygame.image.load('./resources/textures/shield_blue.png')
shield_red = pygame.image.load('./resources/textures/shield_red.png')
screen.blit(shield_blue, (x + 20, y + 80))
screen.blit(shield_red, (x + 200, y + 80))
draw_text('VS', FONT_DARK, screen, x + 150, y + 120, 36)
@ -41,4 +41,4 @@ class Stats:
# points
pygame.draw.rect(screen, ORANGE, pygame.Rect(x, y + 390, 340, 3))
draw_text('PUNKTY: 10', FONT_DARK, screen, x + 35, y + 408, 18, True)
draw_text('PUNKTY: 10', FONT_DARK, screen, x + 215, y + 408, 18, True)
draw_text('PUNKTY: 10', FONT_DARK, screen, x + 215, y + 408, 18, True)