X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=naja%2Futils.py;h=925442a7a12eef328f723b40f026070a37214f7d;hb=refs%2Fheads%2Fmaster;hp=b15302a1bb01effb9e2a991b843654ea91c8aee0;hpb=a97bdc61b9c4049e2aa20278c814b8bb8b8273cc;p=naja.git diff --git a/naja/utils.py b/naja/utils.py index b15302a..925442a 100644 --- a/naja/utils.py +++ b/naja/utils.py @@ -27,8 +27,31 @@ def move_glyph(move_name): }.get(move_name, move_name.lower()) +def parse_bits(bit_list): + # Convert names to numbers if applicable. + return frozenset(BITS.get(bit, bit) for bit in bit_list) + + def warp_to_game_state(game_state): from naja.events import LoadGameEvent, SceneChangeEvent from naja.scenes.game import GameScene LoadGameEvent.post(game_state) SceneChangeEvent.post(GameScene) + + +class Flashlight(object): + def __init__(self, rate): + self.rate = rate + self.reset() + + def tick(self): + self.ticks += 1 + if self.ticks >= self.rate: + self.on = not self.on + self.ticks = 0 + return True + return False + + def reset(self): + self.ticks = 0 + self.on = True