Add character stats display screen, completing part 11
This commit is contained in:
parent
c98ccc168c
commit
87bac7a322
@ -195,6 +195,55 @@ class AskUserEventHandler(EventHandler):
|
|||||||
return MainGameEventHandler(self.engine)
|
return MainGameEventHandler(self.engine)
|
||||||
|
|
||||||
|
|
||||||
|
class CharacterScreenEventHandler(AskUserEventHandler):
|
||||||
|
TITLE = "Character Information"
|
||||||
|
|
||||||
|
def on_render(self, console: tcod.Console) -> None:
|
||||||
|
super().on_render(console)
|
||||||
|
|
||||||
|
if self.engine.player.x <= 30:
|
||||||
|
x = 40
|
||||||
|
else:
|
||||||
|
x = 0
|
||||||
|
|
||||||
|
y = 0
|
||||||
|
|
||||||
|
width = len(self.TITLE) + 4
|
||||||
|
|
||||||
|
console.draw_frame(
|
||||||
|
x,
|
||||||
|
y,
|
||||||
|
width,
|
||||||
|
height=7,
|
||||||
|
title=self.TITLE,
|
||||||
|
clear=True,
|
||||||
|
fg=(255, 255, 255),
|
||||||
|
bg=(0, 0, 0),
|
||||||
|
)
|
||||||
|
|
||||||
|
console.print(
|
||||||
|
x + 1,
|
||||||
|
y + 1,
|
||||||
|
f"Level: {self.engine.player.level.current_level}"
|
||||||
|
)
|
||||||
|
console.print(
|
||||||
|
x + 1,
|
||||||
|
y + 2,
|
||||||
|
f"XP: {self.engine.player.level.current_xp}"
|
||||||
|
)
|
||||||
|
console.print(
|
||||||
|
x + 1,
|
||||||
|
y + 3,
|
||||||
|
f"XP for next Level: {self.engine.player.level.experience_to_next_level}"
|
||||||
|
)
|
||||||
|
console.print(
|
||||||
|
x=x + 1, y=y + 4, string=f"Attack: {self.engine.player.fighter.power}"
|
||||||
|
)
|
||||||
|
console.print(
|
||||||
|
x=x + 1, y=y + 5, string=f"Defense: {self.engine.player.fighter.defense}"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class LevelUpEventHandler(AskUserEventHandler):
|
class LevelUpEventHandler(AskUserEventHandler):
|
||||||
TITLE = "Level Up"
|
TITLE = "Level Up"
|
||||||
|
|
||||||
@ -501,6 +550,8 @@ class MainGameEventHandler(EventHandler):
|
|||||||
return InventoryActivateHandler(self.engine)
|
return InventoryActivateHandler(self.engine)
|
||||||
elif key == tcod.event.K_d:
|
elif key == tcod.event.K_d:
|
||||||
return InventoryDropHandler(self.engine)
|
return InventoryDropHandler(self.engine)
|
||||||
|
elif key == tcod.event.K_c:
|
||||||
|
return CharacterScreenEventHandler(self.engine)
|
||||||
elif key == tcod.event.K_SLASH:
|
elif key == tcod.event.K_SLASH:
|
||||||
return LookHandler(self.engine)
|
return LookHandler(self.engine)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user