Added alot of things, waypoints, grid for editor, game camera system, enemy moving on pre defined waypoint (path)
This commit is contained in:
@@ -1,4 +1,7 @@
|
||||
from game.screens.base_screen import BaseScreen
|
||||
from game.enemy import Enemy
|
||||
from game.camera import Camera
|
||||
from game.util import *
|
||||
import pygame as pg
|
||||
import pygame_gui as pgi
|
||||
|
||||
@@ -6,30 +9,62 @@ class GamePlay(BaseScreen):
|
||||
def __init__(self, game):
|
||||
super().__init__(game)
|
||||
|
||||
self.tile_multiplicator = 2.0
|
||||
# self.tile_multiplicator = 2.0
|
||||
self.width, self.height = pg.display.get_surface().get_size()
|
||||
self.map_screen = pg.surface.Surface((int(self.width/4*3),int(self.height/6*5)))
|
||||
self.game_surface = pg.surface.Surface((int(self.width/4*3),int(self.height/6*5)))
|
||||
# self.map_surface = pg.surface.Surface((self.game_surface.get_width()/self.tile_multiplicator,self.game_surface.get_height()/self.tile_multiplicator))
|
||||
|
||||
self.scroll = [0, 0]
|
||||
self.camera = Camera()
|
||||
self.movment = [False, False, False, False]
|
||||
|
||||
self.map = 'test'
|
||||
self.path = 'assets/maps/' + str(self.map) + '.json'
|
||||
|
||||
self.enemy = Enemy(self.game, 0.5, 100)
|
||||
|
||||
try:
|
||||
self.game.tilemap.load(self.path)
|
||||
except FileNotFoundError:
|
||||
print('File not Found')
|
||||
|
||||
def process_event(self, event):
|
||||
pass
|
||||
if event.type == pg.KEYDOWN:
|
||||
if event.key == pg.K_a:
|
||||
self.movment[0] = True
|
||||
if event.key == pg.K_d:
|
||||
self.movment[1] = True
|
||||
if event.key == pg.K_w:
|
||||
self.movment[2] = True
|
||||
if event.key == pg.K_s:
|
||||
self.movment[3] = True
|
||||
|
||||
if event.key == pg.K_q:
|
||||
self.camera.change_zoom(-0.25)
|
||||
if event.key == pg.K_e:
|
||||
self.camera.change_zoom(0.25)
|
||||
if event.type == pg.KEYUP:
|
||||
if event.key == pg.K_a:
|
||||
self.movment[0] = False
|
||||
if event.key == pg.K_d:
|
||||
self.movment[1] = False
|
||||
if event.key == pg.K_w:
|
||||
self.movment[2] = False
|
||||
if event.key == pg.K_s:
|
||||
self.movment[3] = False
|
||||
|
||||
def update(self, dt):
|
||||
pass
|
||||
self.enemy.update()
|
||||
|
||||
self.camera.move((self.movment[1] - self.movment[0]) * 2, (self.movment[3] - self.movment[2]) * 2)
|
||||
|
||||
def draw(self, surface):
|
||||
self.map_screen.fill((40, 40, 40))
|
||||
self.game_surface.fill((40, 40, 40))
|
||||
# self.map_surface.fill((40, 40, 40))
|
||||
|
||||
render_scroll = (int(self.scroll[0]), int(self.scroll[1]))
|
||||
self.game.tilemap.render(self.map_screen, offset=render_scroll)
|
||||
self.game.tilemap.render_game(self.game_surface, self.camera)
|
||||
|
||||
self.enemy.render(self.game_surface, self.camera)
|
||||
|
||||
# self.game_surface.blit(pg.transform.scale(self.map_surface, self.game_surface.get_size()))
|
||||
|
||||
self.game.window.blit(self.map_screen, (0, self.height/6))
|
||||
surface.blit(self.game_surface, (0, self.height/6))
|
||||
|
||||
Reference in New Issue
Block a user