Convert sample data to new style
authorJeremy Stanley <fungi@yuggoth.org>
Sun, 12 Nov 2017 01:35:15 +0000 (01:35 +0000)
committerJeremy Stanley <fungi@yuggoth.org>
Sun, 12 Nov 2017 01:35:15 +0000 (01:35 +0000)
Use the new data model for the sample room and prop definitions.

mudpy/misc.py
sample/area.yaml
sample/prop.yaml
share/archetype.yaml

index 170a4c3..b322afc 100644 (file)
@@ -309,9 +309,9 @@ class Element:
     def portals(self):
         """Map the portal directions for an area to neighbors."""
         portals = {}
-        if re.match(r"""^area:-?\d+,-?\d+,-?\d+$""", self.key):
+        if re.match(r"""^area\.-?\d+,-?\d+,-?\d+$""", self.key):
             coordinates = [(int(x))
-                           for x in self.key.split(":")[1].split(",")]
+                           for x in self.key.split(".")[-1].split(",")]
             offsets = dict(
                 (x,
                  self.universe.contents["mudpy.movement.%s" % x].get("vector")
@@ -319,7 +319,7 @@ class Element:
             for portal in self.get("gridlinks"):
                 adjacent = map(lambda c, o: c + o,
                                coordinates, offsets[portal])
-                neighbor = "area:" + ",".join(
+                neighbor = "area." + ",".join(
                     [(str(x)) for x in adjacent]
                 )
                 if neighbor in self.universe.contents:
index 8eb13c5..6bc13ce 100644 (file)
@@ -5,44 +5,37 @@ _copy: Copyright (c) 2004-2017 Jeremy Stanley <fungi@yuggoth.org>.
 _desc: This is a set of sample locations for testing and demonstration
     purposes.
 
-area:-1,0,0:
-    description: This is the West Sample Location. It is merely provided as an example of what an area might look like.
-    gridlinks: ['east']
-    name: West Sample Location
-    terrain: inside
-
-area:0,-1,0:
-    description: This is the South Sample Location. It is merely provided as an example of what an area might look like.
-    gridlinks: ['north']
-    name: South Sample Location
-    terrain: inside
-
-area:0,0,-1:
-    description: This is the Lower Sample Location. It is merely provided as an example of what an area might look like.
-    gridlinks: ['up']
-    name: Lower Sample Location
-    terrain: inside
-
-area:0,0,0:
-    description: This is the Center Sample Location. It is merely provided as an example of what an area might look like.
-    gridlinks: ['down', 'east', 'north', 'south', 'up', 'west']
-    name: Center Sample Location
-    terrain: inside
-
-area:0,0,1:
-    description: This is the Upper Sample Location. It is merely provided as an example of what an area might look like.
-    gridlinks: ['down']
-    name: Upper Sample Location
-    terrain: inside
-
-area:0,1,0:
-    description: This is the North Sample Location. It is merely provided as an example of what an area might look like.
-    gridlinks: ['south']
-    name: North Sample Location
-    terrain: inside
-
-area:1,0,0:
-    description: This is the East Sample Location. It is merely provided as an example of what an area might look like.
-    gridlinks: ['west']
-    name: East Sample Location
-    terrain: inside
+area.-1,0,0.description: This is the West Sample Location. It is merely provided as an example of what an area might look like.
+area.-1,0,0.gridlinks: ['east']
+area.-1,0,0.name: West Sample Location
+area.-1,0,0.terrain: inside
+
+area.0,-1,0.description: This is the South Sample Location. It is merely provided as an example of what an area might look like.
+area.0,-1,0.gridlinks: ['north']
+area.0,-1,0.name: South Sample Location
+area.0,-1,0.terrain: inside
+
+area.0,0,-1.description: This is the Lower Sample Location. It is merely provided as an example of what an area might look like.
+area.0,0,-1.gridlinks: ['up']
+area.0,0,-1.name: Lower Sample Location
+area.0,0,-1.terrain: inside
+
+area.0,0,0.description: This is the Center Sample Location. It is merely provided as an example of what an area might look like.
+area.0,0,0.gridlinks: ['down', 'east', 'north', 'south', 'up', 'west']
+area.0,0,0.name: Center Sample Location
+area.0,0,0.terrain: inside
+
+area.0,0,1.description: This is the Upper Sample Location. It is merely provided as an example of what an area might look like.
+area.0,0,1.gridlinks: ['down']
+area.0,0,1.name: Upper Sample Location
+area.0,0,1.terrain: inside
+
+area.0,1,0.description: This is the North Sample Location. It is merely provided as an example of what an area might look like.
+area.0,1,0.gridlinks: ['south']
+area.0,1,0.name: North Sample Location
+area.0,1,0.terrain: inside
+
+area.1,0,0.description: This is the East Sample Location. It is merely provided as an example of what an area might look like.
+area.1,0,0.gridlinks: ['west']
+area.1,0,0.name: East Sample Location
+area.1,0,0.terrain: inside
index 73b6e53..73576fb 100644 (file)
@@ -4,7 +4,6 @@ _copy: Copyright (c) 2004-2017 Jeremy Stanley <fungi@yuggoth.org>.
 
 _desc: This is a set of sample objects for testing and demonstration purposes.
 
-prop:sample_prop:
-    impression: A sample prop sits here.
-    keywords: sample prop
-    location: area:0,0,0
+prop.sample_prop.impression: A sample prop sits here.
+prop.sample_prop.keywords: sample prop
+prop.sample_prop.location: area.0,0,0
index c7bc10f..f1c345e 100644 (file)
@@ -8,5 +8,5 @@ _lock: true
 
 archetype.actor.is_actor: true
 
-archetype.avatar.default_location: area:0,0,0
+archetype.avatar.default_location: area.0,0,0
 archetype.avatar.inherit: [ archetype.actor ]