from naja.resources import resources
from naja.resources.mutators import EIGHT_BIT, blender
from naja.sound import sound
-from naja.utils import bit_glyphs
+from naja.utils import bit_glyphs, Flashlight
from naja.widgets.base import Widget
from naja.widgets.tile import BIT_MAP
-from naja.widgets.text import TextBoxWidget, TextWidget
+from naja.widgets.text import TextBoxWidget
from naja import constants
HINTS = {
- ACT: "Choose an action using {NORTH,SOUTH} keys.\n"
- "Press {RETURN} to execute it.",
+ ACT: "Choose an action using {NORTH,SOUTH}."
+ " Press {RETURN} to execute it.",
EXAMINE: "Browse the tiles with {NORTH,SOUTH,EAST,WEST} keys.",
}
-HINT_LEGAL_MOVE = "\nPress {RETURN} to move to this tile."
+HINT_LEGAL_MOVE = "\nPress {RETURN} to move."
TITLES = {
ACT: "Choose an Action",
self.chosen = None
self.card_position = state.player.position
self.set_position(state.player.position)
- self.flash_count = 0
- self.flash_light = True
+ self.flash_light = Flashlight(constants.FPS // 2)
def prepare(self):
if self.state.gameboard.player_mode == ACT:
if gameboard.puzzle:
return "PUZZLE"
return {
- 0: "DEATH", 1: "LUDICROUS",
- 2: "RAMBO", 3: "HARD",
+ 0: "DEATH", 1: "NINTENDO HARD",
+ 2: "VERY HARD", 3: "HARD",
4: "STANDARD", 5: "EASY",
}.get(gameboard.max_health, "UNKNOWN")
border_colour = None
if choice == self.chosen:
- if self.flash_light:
+ if self.flash_light.on:
border_colour = (PALETTE.GREEN if action_viable else
PALETTE.ORANGE)
else:
self.chosen = None
def draw(self, surface):
- self.flash_count += 1
- if self.flash_count >= (constants.FPS // 2):
- self.flash_light = not self.flash_light
- self.flash_count = 0
+ if self.flash_light.tick():
self.prepare()
surface.blit(self.surface, self.pos)