mirror of
https://github.com/Project-Redacted/Gayme.git
synced 2025-05-24 11:54:53 +00:00
Fix Crash on Pathfinding error
This commit is contained in:
parent
41a0ec665b
commit
760b29a761
4 changed files with 15 additions and 13 deletions
70
main.py
Normal file
70
main.py
Normal file
|
@ -0,0 +1,70 @@
|
|||
import pygame as pg
|
||||
from settings import *
|
||||
from map import *
|
||||
from player import *
|
||||
from raycasting import *
|
||||
from object_renderer import *
|
||||
from object_handler import *
|
||||
from pathfinding import *
|
||||
|
||||
class Game:
|
||||
def __init__(self):
|
||||
pg.init()
|
||||
pg.mouse.set_visible(False)
|
||||
self.screen = pg.display.set_mode((WIDTH, HEIGHT))
|
||||
self.clock = pg.time.Clock()
|
||||
self.delta_time = 1
|
||||
self.level = spawn
|
||||
self.new_game()
|
||||
|
||||
def new_game(self):
|
||||
self.map = Map(self)
|
||||
self.player = Player(self)
|
||||
self.object_renderer = ObjectRenderer(self)
|
||||
self.raycasting = RayCasting(self)
|
||||
self.object_handler = ObjectHandler(self)
|
||||
self.pathfinding = PathFinding(self)
|
||||
|
||||
def update(self):
|
||||
self.map.update(self.level)
|
||||
self.player.update()
|
||||
self.raycasting.update()
|
||||
self.object_handler.update()
|
||||
pg.display.flip()
|
||||
self.delta_time = self.clock.tick(FPS)
|
||||
if DEBUG_MODE:
|
||||
pg.display.set_caption(f"Garbage Game - FPS: {self.clock.get_fps() : 0.2f} - Delta Time: {self.delta_time / 1000 : 0.2f}")
|
||||
else:
|
||||
pg.display.set_caption(f"Garbage Game")
|
||||
|
||||
def draw(self):
|
||||
if DEBUG_MODE:
|
||||
self.screen.fill('black')
|
||||
self.map.draw()
|
||||
self.player.draw()
|
||||
else:
|
||||
pg.draw.rect(self.screen, FLOOR_COLOR, (0, HALF_HEIGHT, WIDTH, HALF_HEIGHT))
|
||||
pg.draw.rect(self.screen, ROOF_COLOR, (0, 0, WIDTH, HALF_HEIGHT))
|
||||
self.object_renderer.draw()
|
||||
|
||||
def check_events(self):
|
||||
for event in pg.event.get():
|
||||
if event.type == pg.QUIT or (event.type == pg.KEYDOWN and event.key == pg.K_ESCAPE):
|
||||
pg.quit()
|
||||
sys.exit()
|
||||
|
||||
if event.type == pg.KEYDOWN and event.key == pg.K_r:
|
||||
if self.level == spawn:
|
||||
self.level = spawn_unlocked
|
||||
else:
|
||||
self.level = spawn
|
||||
|
||||
def run(self):
|
||||
while True:
|
||||
self.check_events()
|
||||
self.update()
|
||||
self.draw()
|
||||
|
||||
if __name__ == '__main__':
|
||||
game = Game()
|
||||
game.run()
|
Loading…
Add table
Add a link
Reference in a new issue