2023-12-28 21:38:35 +00:00
|
|
|
import pygame.image
|
2023-12-26 16:18:19 +00:00
|
|
|
|
2023-12-26 16:19:29 +00:00
|
|
|
from src.engine.animation import Anim
|
|
|
|
from src.engine.engine import Engine
|
2023-12-28 21:38:35 +00:00
|
|
|
from src.engine.enums import GameState
|
2023-12-21 18:35:51 +00:00
|
|
|
|
2023-12-26 16:18:19 +00:00
|
|
|
|
|
|
|
class Game(Engine):
|
|
|
|
def __init__(self):
|
|
|
|
super().__init__()
|
2023-12-28 21:33:27 +00:00
|
|
|
self.map_manager.load_new("maps/map4.tmj")
|
2023-12-26 16:18:19 +00:00
|
|
|
|
2023-12-26 17:41:33 +00:00
|
|
|
self.renderer.load_tile_set("assets/textures/tiles.png", 16)
|
2023-12-26 16:18:19 +00:00
|
|
|
|
2023-12-26 18:07:21 +00:00
|
|
|
self.create_player_entity()
|
2023-12-28 21:38:35 +00:00
|
|
|
self.load_boss_fight_assets()
|
|
|
|
|
|
|
|
self.game_state = GameState.NORMAL
|
2023-12-26 18:07:21 +00:00
|
|
|
|
|
|
|
def create_player_entity(self):
|
|
|
|
"""Crée une entité joueur."""
|
2023-12-26 16:18:19 +00:00
|
|
|
anim = Anim(0.5)
|
2023-12-26 17:41:33 +00:00
|
|
|
anim.load_animation_from_directory("assets/textures/entities/player/none")
|
2023-12-26 16:18:19 +00:00
|
|
|
self.renderer.register_animation(anim, "player_none")
|
|
|
|
|
|
|
|
player = self.entity_manager.register_entity("player")
|
|
|
|
player.link_animation("player_none")
|
|
|
|
player.collision_rect = [-7, -7, 7, 7]
|
|
|
|
|
|
|
|
player.set_default_life(10)
|
|
|
|
|
|
|
|
self.camera.follow_entity(player)
|
|
|
|
|
2023-12-28 21:38:35 +00:00
|
|
|
def load_boss_fight_assets(self):
|
|
|
|
"""Charge les animations de combat des combats de boss."""
|
|
|
|
player_none = Anim(1)
|
|
|
|
player_none.load_animation_from_directory("assets/textures/boss_fight/player_big/none")
|
|
|
|
self.renderer.register_boss_fight_player_animation(player_none, "none")
|
|
|
|
boss_none = Anim(1)
|
|
|
|
boss_none.load_animation_from_directory("assets/textures/boss_fight/boss_sprite/test/none")
|
|
|
|
self.renderer.register_boss_fight_boss_animation(boss_none, "none")
|
|
|
|
|
|
|
|
self.renderer.boss_fight_GUI_container = pygame.image.load("assets/textures/boss_fight/fight_actions_GUI.png")
|
|
|
|
|
2023-12-26 18:07:21 +00:00
|
|
|
|
2023-12-26 16:18:19 +00:00
|
|
|
game = Game()
|
|
|
|
game.loop()
|