home · contact · privacy
Server: Make default thing attributes configurable.
authorChristian Heller <c.heller@plomlompom.de>
Sun, 21 Feb 2016 21:42:38 +0000 (22:42 +0100)
committerChristian Heller <c.heller@plomlompom.de>
Sun, 21 Feb 2016 21:42:38 +0000 (22:42 +0100)
server/config/world_data.py
server/world.py

index e8639c5b551494f4e4a92952e650bb9b5ac31664..193da78a4367286e575b0fb4eb77010f0764b608 100644 (file)
@@ -19,3 +19,16 @@ world_db = {
 """Mapping of direction names to internal direction chars."""
 directions_db = {"east": "d", "south-east": "c", "south-west": "x",
                  "west": "s", "north-west": "w", "north-east": "e"}
+
+thing_defaults = {
+        "T_ARGUMENT": 0,
+        "T_PROGRESS": 0,
+        "T_SATIATION": 0,
+        "T_COMMAND": 0,
+        "T_CARRIES": [],
+        "carried": False,
+        "T_MEMTHING": [],
+        "T_MEMMAP": False,
+        "T_MEMDEPTHMAP": False,
+        "fovmap": False
+}
index 9bd9f6d197f3e65bc09f0bcfebd27643189ceef1..1280269fe1c7ab80877c478124b6ba641990dde5 100644 (file)
@@ -84,22 +84,14 @@ def build_fov_map(t):
 
 def new_Thing(type, pos=(0, 0)):
     """Return Thing of type T_TYPE, with fovmap if alive and world active."""
-    thing = {
-        "T_LIFEPOINTS": world_db["ThingTypes"][type]["TT_LIFEPOINTS"],
-        "T_ARGUMENT": 0,
-        "T_PROGRESS": 0,
-        "T_SATIATION": 0,
-        "T_COMMAND": 0,
-        "T_TYPE": type,
-        "T_POSY": pos[0],
-        "T_POSX": pos[1],
-        "T_CARRIES": [],
-        "carried": False,
-        "T_MEMTHING": [],
-        "T_MEMMAP": False,
-        "T_MEMDEPTHMAP": False,
-        "fovmap": False
-    }
+    from server.config.world_data import thing_defaults
+    thing = {}
+    for key in thing_defaults:
+        thing[key] = thing_defaults[key]
+    thing["T_LIFEPOINTS"] = world_db["ThingTypes"][type]["TT_LIFEPOINTS"]
+    thing["T_TYPE"] = type
+    thing["T_POSY"] = pos[0]
+    thing["T_POSX"] = pos[1]
     if world_db["WORLD_ACTIVE"] and thing["T_LIFEPOINTS"]:
         build_fov_map(thing)
     return thing