From: Neil Date: Sat, 5 Mar 2016 18:31:50 +0000 (+0200) Subject: The first steps towards enemy generators X-Git-Url: https://git.ctpug.org.za/?p=koperkapel.git;a=commitdiff_plain;h=55653b221b6c5ca3c12cdb27412a6773f87c4448 The first steps towards enemy generators --- diff --git a/koperkapel/gamelib/enemy_generator.py b/koperkapel/gamelib/enemy_generator.py new file mode 100644 index 0000000..3003064 --- /dev/null +++ b/koperkapel/gamelib/enemy_generator.py @@ -0,0 +1,32 @@ +""" Add enemies to the level as required """ + +import os +from pgzero.actor import Actor +from pgzero.clock import each_tick + +class EnemyGenerator(Actor): + """Generators are currently invisble, but we want the update hook.""" + + def __init__(self, info): + self.gen_pos = info['pos'] + self.enemy_type = info['type'] + self.rate = info['rate'] + self.max_enemies = info['max'] + self._time_since_last_update = 0 + self.paused = False + each_tick(self.update) + super().__init__(os.path.join('weapons', 'blank')) + + def update(self, dt): + if self.paused: + return + self._time_since_last_update += dt + if self._time_since_last_update > self.rate: + print('A horrible monster (%s) appears' % self.enemy_type, self.gen_pos) + self._time_since_last_update = 0 + + def pause(self): + self.paused = True + + def unpause(self): + self.paused = False diff --git a/koperkapel/gamelib/level.py b/koperkapel/gamelib/level.py index a754f29..8b275b1 100644 --- a/koperkapel/gamelib/level.py +++ b/koperkapel/gamelib/level.py @@ -16,6 +16,7 @@ class Level(object): self.start_pos = (0, 0) self.exit = None self.enemies = [] + self.enemy_generators = [] self.friends = [] def get_neighbors(self, x, y): diff --git a/koperkapel/levels/floor2 b/koperkapel/levels/floor2 new file mode 100644 index 0000000..3e5827b --- /dev/null +++ b/koperkapel/levels/floor2 @@ -0,0 +1,17 @@ +wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww +wffffffffwwwwwwwwwwwwwwwwwwwwwwwwwwwww +wsgffgffffffwwwwwwwwwwwwwwwwwwwwwwwwww +wffffffffwwfffffffffffffffffffffffffww +wwwwfwwwwwwwwwffffffffffffffffffffwwww +wwwwfwwwwwwwwfffffffffffffffffffffffww +wffffffffwwwwwwffffffffffffffffffgfffw +wfgffgffffffwwffffffffffffffffffffffww +wffffffffwwffffwfffffwffffffffwffffgfw +wwfwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww +wwfwwwwwwwwwwwwwffffffwfffffffwwwwwwww +wwfwwwwwwwwwwwwwfwwwwfffwfwwwffffwwwww +wwfwwwwwwwwwwwffffwwwwwwwfwwwwgwfwwwww +wwfffwwwwwwwwwfwwfwwwwwwwffffwwwfwwwww +wwfffffffffffffwwfffffffwwwwfffffffwww +wwwwwwwwwwwwwwwwwwwwwwwffffffwwwwwwwww +wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww diff --git a/koperkapel/levels/level1.json b/koperkapel/levels/level1.json index 782ec65..88c188a 100644 --- a/koperkapel/levels/level1.json +++ b/koperkapel/levels/level1.json @@ -4385,5 +4385,13 @@ 21, 8 ] + ], + "enemy generators": [ + { + "type": "roach", + "pos": [18, 8], + "rate": 1.0, + "max": 2 + } ] } diff --git a/koperkapel/levels/level2.json b/koperkapel/levels/level2.json index 5d565cf..99571fd 100644 --- a/koperkapel/levels/level2.json +++ b/koperkapel/levels/level2.json @@ -7634,5 +7634,13 @@ "next level": "level1" }, "items": [], - "friendly roaches": [] + "friendly roaches": [], + "enemy generators": [ + { + "type": "roach", + "pos": [16, 9], + "rate": 1.0, + "max": 2 + } + ] } diff --git a/koperkapel/levels/level_converter.py b/koperkapel/levels/level_converter.py index 0004aa1..a8b8d67 100644 --- a/koperkapel/levels/level_converter.py +++ b/koperkapel/levels/level_converter.py @@ -74,6 +74,7 @@ class level_generator: level['starting pos'] = [] level['door_info'] = [] level['friendly roaches'] = [] + level['enemy generators'] = [] for l, lu in zip(p, t): row = [] diff --git a/koperkapel/levels/map.json b/koperkapel/levels/map.json new file mode 100644 index 0000000..9fecec0 --- /dev/null +++ b/koperkapel/levels/map.json @@ -0,0 +1,7633 @@ +{ + "tiles": [ + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly", + "crawl" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly", + "crawl" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly", + "crawl" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly", + "crawl" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly", + "crawl" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly", + "crawl" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly", + "crawl" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [ + "walk", + "fly" + ], + "base": "floor" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [ + "crawl" + ], + "base": "tunnel" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ], + [ + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + }, + { + "tunnels": { + "behaviour": [], + "base": "underground" + }, + "floor": { + "behaviour": [], + "base": "cwall" + } + } + ] + ], + "tileset": "bunker", + "door_info": [], + "starting pos": [ + 1, + 1 + ], + "friendly roaches": [] +} \ No newline at end of file diff --git a/koperkapel/levels/tunnel2 b/koperkapel/levels/tunnel2 new file mode 100644 index 0000000..f36073d --- /dev/null +++ b/koperkapel/levels/tunnel2 @@ -0,0 +1,17 @@ +tttttttttttttttttttttttttttttttttttttt +tttttttttttttttttttttttttttttttttttttt +tt-----------------------------------t +ttt-tttttttttttttttttttttttttttttttt-t +ttt-tt----tttttttttttttttttttttttttt-t +ttt----tt-tttttttttttttttttttttttttt-t +ttt-ttttt-tttttttttttttttttttttt---t-t +tt--------tttttttttttttttttttttt-ttt-t +tt-ttttttttt----ttttt---t-----tt-tt--t +tt-ttttttttt-tt-ttttt-t-t-ttt-tt-ttt-t +tt-ttttttttt-tt-------t---ttt-tt-ttt-t +tt-----------tttttttttttttttt-t--ttt-t +tttt-ttttttttttttttttttttt------tttt-t +tttt-ttttttttttttttttttttt-ttttttttt-t +tttt-ttt----------ttttt----ttttttttt-t +tttt-----tttttttt-------tttttttttttt-t +tttttttttttttttttttttttttttttttttttttt diff --git a/koperkapel/loaders/levelloader.py b/koperkapel/loaders/levelloader.py index ccab73f..a775838 100644 --- a/koperkapel/loaders/levelloader.py +++ b/koperkapel/loaders/levelloader.py @@ -10,6 +10,7 @@ from ..gamelib.door import Door from ..gamelib.keypad import Keypad from ..gamelib.friendlyroach import get_friendly_roach from ..gamelib.items import get_item +from ..gamelib.enemy_generator import EnemyGenerator TILES = { @@ -37,7 +38,7 @@ class LevelLoader(ResourceLoader): self._level.tileset = level_data['tileset'] self._level.start_pos = level_data["starting pos"] self._level.exit = level_data["exit"] - self._level.enemies = [] + self._level.enemy_generators = [] self._level.friends = [] self._level.items = [] # Consistency check, so we can assume things are correct @@ -71,6 +72,9 @@ class LevelLoader(ResourceLoader): self._level.friends.append(roach) for item in level_data['items']: self._level.items.append(get_item(item)) + for generator in level_data['enemy generators']: + enemy = EnemyGenerator(generator) + self._level.enemy_generators.append(enemy) return self._level def _load_tile_images(self): diff --git a/koperkapel/scenes/base.py b/koperkapel/scenes/base.py index 24a8c61..623eb42 100644 --- a/koperkapel/scenes/base.py +++ b/koperkapel/scenes/base.py @@ -29,10 +29,8 @@ class Engine: ev.apply(self) def change_scene(self, scene): - print('here', self._scene) self._apply_events(self._scene.exit(self._world.proxy())) self._scene = scene - print('there', self._scene) self._apply_events(self._scene.enter(self._world.proxy())) def change_world(self, *args, **kw): diff --git a/koperkapel/scenes/level.py b/koperkapel/scenes/level.py index 60e2305..a151599 100644 --- a/koperkapel/scenes/level.py +++ b/koperkapel/scenes/level.py @@ -84,18 +84,22 @@ class BaseLevelScene(Scene): class GameLevelScene(BaseLevelScene): def enter(self, world): - print('enter', world['level']['name'], self._level) if self._level is not None: + for generator in self._generators: + generator.unpause() return super().enter(world) self._roaches = self.actors.add_layer("roaches", level=10) self._friends = self.actors.add_layer("friendly roaches", level=9) self._items = self.actors.add_layer("items", level=9) + self._generators = self.actors.add_layer("enemy generators", level=8) + self._enemies = self.actors.add_layer("enemies", level=7) self._vehicle = Vehicle.current(world) self._mode = 'walk' self._angle = 0 self._init_items() self._init_friendly_roaches() + self._init_generators() return self._init_roaches(world) def _init_items(self): @@ -106,6 +110,17 @@ class GameLevelScene(BaseLevelScene): for friend in self._level.friends: self._friends.add(friend) + def exit(self, world): + for generator in self._generators: + # We don't want these running while we're on other levels, but we don't want to delete them + # here either (because of the vehicle management view) + generator.pause() + + def _init_generators(self): + for generator in self._level.enemy_generators: + self._generators.add(generator) + generator.unpause() + def _init_roaches(self, world): x, y = self._level.start_pos self._level_layer = 'floor'