Merge
[koperkapel.git] / koperkapel / generators / maps.py
index 51aae6500f4ed313707fbb5353d185eae3f2ea77..4f917c68169ea454c9feb34d63ee4a2284ff70e7 100644 (file)
@@ -2,10 +2,13 @@
 
 import random
 import math
+import json
+import os
 
 i = random.randint(0,100)
 
 
+<<<<<<< HEAD
 class Room:
     def __init__(self, region):
         """
@@ -76,6 +79,16 @@ class Room:
         :return:
         """
         self.passages.append([local_tile, foriegn_tile])
+=======
+ATTRIBUTE_MAP = {
+    '#': {'base': 'cwall', 
+          'behaviour': [],
+         },
+    ' ': {'base': 'floor',
+          'behaviour': ['walk', 'fly'],
+         },
+}
+>>>>>>> 0b2149fff63b346192148b7eb334e00ad3b9283d
 
 
 class LevelGenerator:
@@ -214,9 +227,29 @@ class LevelGenerator:
             file.write(''.join(l))
             file.write('\n')
         file.close()
+<<<<<<< HEAD
         for l in self.region_map:
+=======
+        self._to_json()
+        for l in self.regions:
+>>>>>>> 0b2149fff63b346192148b7eb334e00ad3b9283d
             print(l)
 
+    def _to_json(self):
+        level = {}
+        level['tiles'] = []
+        for l in self.map:
+            row = []
+            for t in l:
+                row.append(ATTRIBUTE_MAP[t])
+            level['tiles'].append(row)
+        name = os.path.join(os.path.dirname(__file__), '..', 'levels', 'map.json')
+        # FIXME: Do a lot better here 
+        # Crude hack so the level is written into the levels folder
+        f = open(name, 'w')
+        json.dump(level, f)
+        f.close()
+
 
 if __name__ == '__main__':
     while True: