home · contact · privacy
Enable picking up from neighbbor tiles.
[plomrogue2] / rogue_chat_curses.py
index 1f93dd808b690d488b0cf9f93fd3ed80a72fa50e..3a5950c477372c2cf44510bde9c6e8e6a0d4370b 100755 (executable)
@@ -625,9 +625,21 @@ class TUI:
         elif self.mode.name == 'take_thing':
             self.log_msg('selectable things:')
             player = self.game.get_thing(self.game.player_id)
+            select_range = [player.position,
+                            player.position + YX(0,-1),
+                            player.position + YX(0, 1),
+                            player.position + YX(-1, 0),
+                            player.position + YX(1, 0)]
+            if type(self.game.map_geometry) == MapGeometryHex:
+                if player.position.y % 2:
+                    select_range += [player.position + YX(-1, 1),
+                                     player.position + YX(1, 1)]
+                else:
+                    select_range += [player.position + YX(-1, -1),
+                                     player.position + YX(1, -1)]
             self.selectables = [t for t in self.game.things
                                 if t != player and t.type_ != 'Player'
-                                and t.position == player.position]
+                                and t.position in select_range]
             if len(self.selectables) == 0:
                 self.log_msg('none')
             else: