Migration to Codeberg
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
# library imports
|
||||
import sys
|
||||
import pygame
|
||||
from pytmx.util_pygame import load_pygame
|
||||
|
||||
# local imports
|
||||
from settings import *
|
||||
from player import Player
|
||||
from allsprites import AllSprites
|
||||
from sprite import Sprite
|
||||
|
||||
class Game:
|
||||
def __init__(self):
|
||||
pygame.init()
|
||||
self.display_surface = pygame.display.set_mode((WINDOW_WIDTH, WINDOW_HEIGHT))
|
||||
pygame.display.set_caption('Western shooter')
|
||||
self.clock = pygame.time.Clock()
|
||||
|
||||
# groups
|
||||
self.all_sprites = AllSprites()
|
||||
self.obstacles = pygame.sprite.Group()
|
||||
|
||||
self.setup()
|
||||
|
||||
def setup(self):
|
||||
|
||||
tmx_map = load_pygame('../data/map.tmx')
|
||||
|
||||
# tiles
|
||||
for x, y, surf in tmx_map.get_layer_by_name('Fence').tiles():
|
||||
Sprite((x * 64, y * 64),surf,[self.all_sprites, self.obstacles])
|
||||
|
||||
# objects
|
||||
for obj in tmx_map.get_layer_by_name('Objects'):
|
||||
Sprite((obj.x, obj.y),obj.image,[self.all_sprites, self.obstacles])
|
||||
|
||||
# entities
|
||||
for obj in tmx_map.get_layer_by_name('Entities'):
|
||||
if obj.name == 'Player':
|
||||
self.player = Player((obj.x,obj.y), self.all_sprites, PATHS['player'], self.obstacles)
|
||||
|
||||
def run(self):
|
||||
while True:
|
||||
# event loop
|
||||
for event in pygame.event.get():
|
||||
if event.type == pygame.QUIT:
|
||||
pygame.quit()
|
||||
sys.exit()
|
||||
dt = self.clock.tick() / 1000
|
||||
|
||||
# update groups
|
||||
self.all_sprites.update(dt)
|
||||
|
||||
# draw groups
|
||||
self.all_sprites.customize_draw(self.player)
|
||||
|
||||
pygame.display.update()
|
||||
|
||||
|
||||
# execute Game
|
||||
if __name__ == '__main__':
|
||||
Game().run()
|
||||
Reference in New Issue
Block a user