From 856f59fb0edfe0951c39fb20c26b9a642b5cf0cc Mon Sep 17 00:00:00 2001 From: yannis300307 Date: Tue, 26 Dec 2023 12:55:41 +0100 Subject: [PATCH] =?UTF-8?q?Ajout=20d'un=20indicateur=20de=20l'=C3=A9tat=20?= =?UTF-8?q?du=20jeu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/engine.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/engine.py b/src/engine.py index c2ae8cf..b2e6a3c 100644 --- a/src/engine.py +++ b/src/engine.py @@ -1,3 +1,5 @@ +from enum import Enum + from src.animation import Anim from src.camera import Camera from src.entity_manager import EntityManager @@ -7,6 +9,15 @@ from src.renderer import Renderer import pygame +class GameState(Enum): + """Enumération utilisée pour définir l'état actuel du jeu.""" + NONE = 0 + NORMAL = 1 + BOSS_FIGHT = 2 + MAIN_MENU = 3 + # AJouter si besoin, mais à utiliser de préférence avec parsimony + + class Engine: """Classe principale qui regroupe tous les composants du programme (Renderer, MapManager, EventHandler, etc ...)""" def __init__(self): @@ -16,6 +27,9 @@ class Engine: # Debug mode utilisé pour tricher (voir les collisions, etc...) WOW ! n'utilisez pas ça pour jouer ! self.DEBUG_MODE = False + # Etat courant du jeu + self.game_state = GameState.NONE + self.clock = pygame.time.Clock() self.running = False @@ -30,7 +44,8 @@ class Engine: self.renderer.load_tile_set("assets/tiles.png", 16) - anim = Anim(0.5) # TODO : REMOVE (ONLY USED FOR TESTING) + # TODO : REMOVE (ONLY USED FOR TESTING) + anim = Anim(0.5) anim.load_animation_from_directory("assets/entities/player/none") self.renderer.register_animation(anim, "player_none")