home · contact · privacy
Add toilets, and terrain type tags.
[plomrogue2] / plomrogue / game.py
index 35a610881bed5fea0ce7081d2b6f92bdc2774150..202a0fcba9bcf39e76e33e0b21e44d4b4c9723b4 100755 (executable)
@@ -252,9 +252,9 @@ class Game(GameBase):
                 player.prepare_multiprocessible_fov_stencil()
                 player_fovs += [player._fov]
                 player_ids_send_fov += [player.id_]
-            if not (player._seen_things
-                    and player._seen_annotation_positions
-                    and player._seen_portal_positions):
+            if None in (player._seen_things,
+                        player._seen_annotation_positions,
+                        player._seen_portal_positions):
                 player_ids_send_other += [player.id_]
         new_fovs = []
         single_core_until = 16  # since multiprocess has its own overhead
@@ -473,6 +473,10 @@ class Game(GameBase):
                                                      int(terrain.blocks_light),
                                                      int(terrain.blocks_sound),
                                                      int(terrain.blocks_movement)))
+                if len(terrain.tags) > 0:
+                    for tag in terrain.tags:
+                        write(f, 'TERRAIN_TAG %s %s' % (quote(terrain.character),
+                                                        quote(tag)))
             for big_yx in [yx for yx in self.maps if self.maps[yx].modified]:
                 for y, line in self.maps[big_yx].lines():
                     write(f, 'MAP_LINE %s %5s %s' % (big_yx, y, quote(line)))