Unshift the world
authorNeil <neil@dip.sun.ac.za>
Sun, 11 May 2014 21:30:07 +0000 (23:30 +0200)
committerNeil <neil@dip.sun.ac.za>
Sun, 11 May 2014 21:30:26 +0000 (23:30 +0200)
naja/constants.py
naja/player.py
naja/tests/test_actions.py

index 7442eb60a4ecdfe388b90d57276839f222efe606..7a968d06cc8cab32c81b6461f264864e90a6b5f8 100644 (file)
@@ -23,15 +23,15 @@ DEFAULT_MUSIC_VOLUME = 0.3  # music volume
 # Player bits
 BITS = AttrDict({
     # Direction bits
-    'NORTH': 0,
-    'SOUTH': 1,
-    'EAST': 2,
-    'WEST': 3,
+    'NORTH': 1,
+    'SOUTH': 2,
+    'EAST': 4,
+    'WEST': 8,
     # Condition bits
-    'CYAN': 4,
-    'MAGENTA': 5,
-    'YELLOW': 6,
-    'MSB': 7,
+    'CYAN': 16,
+    'MAGENTA': 32,
+    'YELLOW': 64,
+    'MSB': 128,
 })
 DIRECTION_BITS = AttrDict((k, v) for k, v in BITS.items() if v < 4)
 CONDITION_BITS = AttrDict((k, v) for k, v in BITS.items() if v >= 4)
index c53c6980b5702e5b26f99a66fd09f0689253cc99..97422b867d25fab3ea31675ba2978450a1f00701 100644 (file)
@@ -20,16 +20,16 @@ class PlayerBits(object):
     # Operate on individual bits
 
     def check_bit(self, bit):
-        return bool(self.bits & (1 << bit))
+        return bool(self.bits & bit)
 
     def set_bit(self, bit):
-        self.bits |= (1 << bit)
+        self.bits |= bit
 
     def clear_bit(self, bit):
-        self.bits &= (0xff ^ (1 << bit))
+        self.bits &= (0xff ^ bit)
 
     def toggle_bit(self, bit):
-        self.bits ^= (1 << bit)
+        self.bits ^= bit
 
     # Operate on sets of bits
 
index d2c723a6b4082c0135da73565a44d0862afab361..69ed8819ed54c80be1d87e89fe6eef8f931f931b 100644 (file)
@@ -8,7 +8,10 @@ from naja import actions
 
 class TestActions(TestCase):
     def make_player(self, *bits):
-        return Player(sum(1 << bit for bit in bits), None)
+        player_bits = 0
+        for bit in bits:
+            player_bits |= bit
+        return Player(player_bits, None)
 
     def make_board(self, player_bits=None, locations=None):
         if locations is None: