X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=naja%2Futils.py;h=925442a7a12eef328f723b40f026070a37214f7d;hb=HEAD;hp=d69cd4ad73f42dfc71a28912a9e751deb3de3129;hpb=5fe12b55d1908f850145eec16a1ee2c8e61ba6ef;p=naja.git diff --git a/naja/utils.py b/naja/utils.py index d69cd4a..925442a 100644 --- a/naja/utils.py +++ b/naja/utils.py @@ -25,3 +25,33 @@ def move_glyph(move_name): 'BISHOP': u'\u265d', 'KNIGHT': u'\u265e', }.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