diff --git a/dungeonbattle/entities/player.py b/dungeonbattle/entities/player.py index 99763e1..1f64d3d 100644 --- a/dungeonbattle/entities/player.py +++ b/dungeonbattle/entities/player.py @@ -34,16 +34,18 @@ class Player(FightingEntity): self.current_xp += xp self.level_up() - def fight(self) -> bool: + def check_move(self, y: int, x: int, move_if_possible: bool = False) \ + -> bool: """ - Fight all f + If the player tries to move but a fighting entity is there, + the player fights this entity. + It rewards some XP if it is dead. """ - one_fight = False for entity in self.map.entities: - if entity != self and isinstance(entity, FightingEntity) and\ - self.distance_squared(entity) <= 1: + if entity.y == y and entity.x == x and \ + isinstance(entity, FightingEntity): self.hit(entity) - one_fight = True if entity.dead: self.add_xp(randint(3, 7)) - return one_fight + return True + return super().check_move(y, x, move_if_possible) diff --git a/dungeonbattle/game.py b/dungeonbattle/game.py index e4e7300..8be446d 100644 --- a/dungeonbattle/game.py +++ b/dungeonbattle/game.py @@ -24,7 +24,6 @@ class KeyValues(Enum): RIGHT = auto() ENTER = auto() SPACE = auto() - FIGHT = auto() class Game: @@ -89,8 +88,6 @@ class Game: elif key in (self.settings.KEY_UP_PRIMARY, self.settings.KEY_UP_SECONDARY): return KeyValues.UP - elif key == self.settings.KEY_FIGHT: - return KeyValues.FIGHT elif key == self.settings.KEY_ENTER: return KeyValues.ENTER elif key == ' ': @@ -125,9 +122,6 @@ class Game: elif key == KeyValues.RIGHT: if self.player.move_right(): self.map.tick() - elif key == KeyValues.FIGHT: - if self.player.fight(): - self.map.tick() elif key == KeyValues.SPACE: self.state = GameMode.MAINMENU diff --git a/dungeonbattle/settings.py b/dungeonbattle/settings.py index 0558614..258d88f 100644 --- a/dungeonbattle/settings.py +++ b/dungeonbattle/settings.py @@ -27,7 +27,6 @@ class Settings: ['d', 'Touche principale pour aller vers la droite'] self.KEY_RIGHT_SECONDARY = \ ['KEY_RIGHT', 'Touche secondaire pour aller vers la droite'] - self.KEY_FIGHT = ['f', 'Touche pour frapper un ennemi'] self.KEY_ENTER = \ ['\n', 'Touche pour valider un menu'] self.TEXTURE_PACK = ['ascii', 'Pack de textures utilisé']