- Joined
- Sep 6, 2013
- Messages
- 6,743
Our clan wanted a map to test skills for ice escape, so a map with different difficulties. At our example we have following difficulties:
Common approach:
Create a big map, and create all 6 levels statically in the map. (there's not essentially something bad with it)
W3X Tools approach:
Having a map, which is initially empty, but holds code to re-create all 6 levels dynamicaly in game. Only the level which is currently needed, does exist on map.
Process:
For each difficulty I have a seperate map, where I maintain only one level. So I end up having 6 maps, one for each difficutly. Only I as developer need these maps for maintenance.
For public, there's still only one map. In this map I enter the generated code, which I got from w3x tools, after parsing my 6 maps.
Demo:
One can play the attached demo "Ice Escape Ranks", write "-rank 0" to play difficutly 0 upto "-rank 5" to play difficutly 5. The levels are only for demo.
The generated code is in folder "Levels". Here is one example of the result how I create one difficulty.
- peon ( easy )
- grunt
- headhunter
- raider
- tauren
- blademaster ( hard )
Common approach:
Create a big map, and create all 6 levels statically in the map. (there's not essentially something bad with it)
W3X Tools approach:
Having a map, which is initially empty, but holds code to re-create all 6 levels dynamicaly in game. Only the level which is currently needed, does exist on map.
Process:
For each difficulty I have a seperate map, where I maintain only one level. So I end up having 6 maps, one for each difficutly. Only I as developer need these maps for maintenance.
For public, there's still only one map. In this map I enter the generated code, which I got from w3x tools, after parsing my 6 maps.
Demo:
One can play the attached demo "Ice Escape Ranks", write "-rank 0" to play difficutly 0 upto "-rank 5" to play difficutly 5. The levels are only for demo.
The generated code is in folder "Levels". Here is one example of the result how I create one difficulty.
JASS:
struct Peon extends Level
method createRegions takes nothing returns nothing
local rect rect_0 = Rect(-1120, 2048, -864, 2336)
local rect rect_1 = Rect(-3296, -32, 0, 3360)
local rect rect_2 = Rect(-1376, 544, -672, 1248)
set udg_Spawn = Location(GetRectCenterX(rect_0), GetRectCenterY(rect_0))
call RemoveRect(rect_0)
set rect_0 = null
set udg_LevelBounds = rect_1
set rect_1 = null
set udg_RankRegion = rect_2
set rect_2 = null
endmethod
method createUnits takes nothing returns nothing
set UnitCounter = UnitCounter + 1
set Units[UnitCounter] = CreateUnit(Player(23), 'n005', -1024, 896, 4.712389*bj_RADTODEG)
set finish = Units[UnitCounter]
endmethod
method createDestructables takes nothing returns nothing
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B00A', -576, 1216, 0, 4.712389*bj_RADTODEG, 0.9, 0)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B002', -768, 896, 0, 3.141593*bj_RADTODEG, 0.9, 0)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B00A', -576, 576, 0, 2.356194*bj_RADTODEG, 0.9, 0)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B00C', -704, 1856, 0, 2.164208*bj_RADTODEG, 0.9, 0)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B00C', -704, 2496, 0, 3.647738*bj_RADTODEG, 0.9, 0)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', -1568, 1440, 0, 4.712389*bj_RADTODEG, 1.415586, 1)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', -224, 1952, 0, 4.712389*bj_RADTODEG, 1.40054, 1)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', -864, 1440, 0, 4.712389*bj_RADTODEG, 1.197378, 2)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', -288, 2592, 0, 4.712389*bj_RADTODEG, 1.476821, 1)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', -416, 1568, 0, 4.712389*bj_RADTODEG, 1.353359, 1)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', 416, 2528, 0, 4.712389*bj_RADTODEG, 1.427915, 0)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -1536, 2816, 0, 4.712389*bj_RADTODEG, 1.437849, 6)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -1088, 3136, 0, 4.712389*bj_RADTODEG, 1.114246, 3)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -1216, 2816, 0, 4.712389*bj_RADTODEG, 1.043748, 0)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -768, 3008, 0, 4.712389*bj_RADTODEG, 1.114521, 9)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -2176, 2752, 0, 4.712389*bj_RADTODEG, 1.174841, 7)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -1920, 3072, 0, 4.712389*bj_RADTODEG, 1.407376, 3)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -2496, 3072, 0, 4.712389*bj_RADTODEG, 1.302393, 8)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -2944, 2752, 0, 4.712389*bj_RADTODEG, 1.289163, 4)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -3072, 3136, 0, 4.712389*bj_RADTODEG, 1.469604, 4)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -3200, 2368, 0, 4.712389*bj_RADTODEG, 1.324992, 5)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -3072, 1856, 0, 4.712389*bj_RADTODEG, 1.000244, 5)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -3264, 1344, 0, 4.712389*bj_RADTODEG, 1.334391, 9)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -2944, 1152, 0, 4.712389*bj_RADTODEG, 1.443159, 9)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -3200, 768, 0, 4.712389*bj_RADTODEG, 1.438871, 1)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -2944, 512, 0, 4.712389*bj_RADTODEG, 1.102557, 7)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -3200, 320, 0, 4.712389*bj_RADTODEG, 1.013047, 3)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -2688, 128, 0, 4.712389*bj_RADTODEG, 1.237709, 0)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -2304, 256, 0, 4.712389*bj_RADTODEG, 1.013855, 1)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -1280, 0, 0, 4.712389*bj_RADTODEG, 1.247002, 6)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', -160, 32, 0, 4.712389*bj_RADTODEG, 1.162374, 1)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', 224, 1504, 0, 4.712389*bj_RADTODEG, 1.252449, 1)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', 416, 2016, 0, 4.712389*bj_RADTODEG, 1.258614, 1)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -1536, 128, 0, 4.712389*bj_RADTODEG, 1.348216, 1)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -960, 192, 0, 4.712389*bj_RADTODEG, 1.262307, 6)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -1984, -64, 0, 4.712389*bj_RADTODEG, 1.197348, 2)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', 160, 3040, 0, 4.712389*bj_RADTODEG, 1.302576, 2)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -1856, 192, 0, 4.712389*bj_RADTODEG, 1.028443, 2)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -1664, -128, 0, 4.712389*bj_RADTODEG, 1.009858, 3)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B004', -1024, -192, 0, 4.712389*bj_RADTODEG, 1.224342, 9)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', 288, 96, 0, 4.712389*bj_RADTODEG, 1.061769, 2)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', 480, 864, 0, 4.712389*bj_RADTODEG, 1.395901, 0)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', -160, 736, 0, 4.712389*bj_RADTODEG, 1.142933, 2)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', -288, -352, 0, 4.712389*bj_RADTODEG, 1.086978, 2)
set DestructableCounter = DestructableCounter + 1
set Destructables[DestructableCounter] = CreateDestructableZ('B007', -608, 96, 0, 4.712389*bj_RADTODEG, 1.356487, 1)
endmethod
method createTerrain takes nothing returns nothing
call SetTerrainType(-3200, 0, 'Nsnw', 16, 1, 1)
call SetTerrainType(-3072, 0, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2944, 0, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2816, 0, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2688, 0, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2560, 0, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2432, 0, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2304, 0, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2176, 0, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2048, 0, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1920, 0, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1792, 0, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1664, 0, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1536, 0, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1408, 0, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1280, 0, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1152, 0, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1024, 0, 'Nsnw', 13, 1, 1)
call SetTerrainType(-896, 0, 'Nsnw', 12, 1, 1)
call SetTerrainType(-768, 0, 'Nsnw', 0, 1, 1)
call SetTerrainType(-640, 0, 'Nsnw', 0, 1, 1)
call SetTerrainType(-512, 0, 'Nsnw', 8, 1, 1)
call SetTerrainType(-384, 0, 'Nsnw', 4, 1, 1)
call SetTerrainType(-256, 0, 'Nsnw', 8, 1, 1)
call SetTerrainType(-128, 0, 'Nsnw', 8, 1, 1)
call SetTerrainType(0, 0, 'Nsnw', 17, 1, 1)
call SetTerrainType(-3200, 128, 'Nsnw', 16, 1, 1)
call SetTerrainType(-3072, 128, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2944, 128, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2816, 128, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2688, 128, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2560, 128, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2432, 128, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2304, 128, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2176, 128, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2048, 128, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1920, 128, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1792, 128, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1664, 128, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1536, 128, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1408, 128, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1280, 128, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1152, 128, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1024, 128, 'Nsnw', 17, 1, 1)
call SetTerrainType(-896, 128, 'Nsnw', 0, 1, 1)
call SetTerrainType(-768, 128, 'Nsnw', 12, 1, 1)
call SetTerrainType(-640, 128, 'Nsnw', 5, 1, 1)
call SetTerrainType(-512, 128, 'Nsnw', 4, 1, 1)
call SetTerrainType(-384, 128, 'Nsnw', 12, 1, 1)
call SetTerrainType(-256, 128, 'Nsnw', 9, 1, 1)
call SetTerrainType(-128, 128, 'Nsnw', 16, 1, 1)
call SetTerrainType(0, 128, 'Nsnw', 8, 1, 1)
call SetTerrainType(-3200, 256, 'Nsnw', 12, 1, 1)
call SetTerrainType(-3072, 256, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2944, 256, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2816, 256, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2688, 256, 'Nsnw', 2, 1, 1)
call SetTerrainType(-2560, 256, 'Nsnw', 6, 1, 1)
call SetTerrainType(-2432, 256, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2304, 256, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2176, 256, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2048, 256, 'Nsnw', 1, 1, 1)
call SetTerrainType(-1920, 256, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1792, 256, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1664, 256, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1536, 256, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1408, 256, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1280, 256, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1152, 256, 'Nsnw', 5, 1, 1)
call SetTerrainType(-1024, 256, 'Nsnw', 0, 1, 1)
call SetTerrainType(-896, 256, 'Nsnw', 8, 1, 1)
call SetTerrainType(-768, 256, 'Nsnw', 4, 1, 1)
call SetTerrainType(-640, 256, 'Nsnw', 4, 1, 1)
call SetTerrainType(-512, 256, 'Nsnw', 17, 1, 1)
call SetTerrainType(-384, 256, 'Nsnw', 0, 1, 1)
call SetTerrainType(-256, 256, 'Nsnw', 0, 1, 1)
call SetTerrainType(-128, 256, 'Nsnw', 4, 1, 1)
call SetTerrainType(0, 256, 'Nsnw', 8, 1, 1)
call SetTerrainType(-3200, 384, 'Nsnw', 9, 1, 1)
call SetTerrainType(-3072, 384, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2944, 384, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2816, 384, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2688, 384, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2560, 384, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2432, 384, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2304, 384, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2176, 384, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2048, 384, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1920, 384, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1792, 384, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1664, 384, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1536, 384, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1408, 384, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1280, 384, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1152, 384, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1024, 384, 'Nsnw', 12, 1, 1)
call SetTerrainType(-896, 384, 'Nsnw', 0, 1, 1)
call SetTerrainType(-768, 384, 'Nsnw', 13, 1, 1)
call SetTerrainType(-640, 384, 'Nsnw', 12, 1, 1)
call SetTerrainType(-512, 384, 'Nsnw', 12, 1, 1)
call SetTerrainType(-384, 384, 'Nsnw', 12, 1, 1)
call SetTerrainType(-256, 384, 'Nsnw', 9, 1, 1)
call SetTerrainType(-128, 384, 'Nsnw', 8, 1, 1)
call SetTerrainType(0, 384, 'Nsnw', 16, 1, 1)
call SetTerrainType(-3200, 512, 'Nsnw', 8, 1, 1)
call SetTerrainType(-3072, 512, 'Nsnw', 1, 1, 1)
call SetTerrainType(-2944, 512, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2816, 512, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2688, 512, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2560, 512, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2432, 512, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2304, 512, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2176, 512, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2048, 512, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1920, 512, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1792, 512, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1664, 512, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1536, 512, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1408, 512, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1280, 512, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1152, 512, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1024, 512, 'Nsnw', 0, 1, 1)
call SetTerrainType(-896, 512, 'Nsnw', 17, 1, 1)
call SetTerrainType(-768, 512, 'Nsnw', 16, 1, 1)
call SetTerrainType(-640, 512, 'Nsnw', 0, 1, 1)
call SetTerrainType(-512, 512, 'Nsnw', 12, 1, 1)
call SetTerrainType(-384, 512, 'Nsnw', 12, 1, 1)
call SetTerrainType(-256, 512, 'Nsnw', 12, 1, 1)
call SetTerrainType(-128, 512, 'Nsnw', 17, 1, 1)
call SetTerrainType(0, 512, 'Nsnw', 16, 1, 1)
call SetTerrainType(-3200, 640, 'Nsnw', 4, 1, 1)
call SetTerrainType(-3072, 640, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2944, 640, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2816, 640, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2688, 640, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2560, 640, 'Nice', 12, 1, 1)
call SetTerrainType(-2432, 640, 'Nice', 8, 1, 1)
call SetTerrainType(-2304, 640, 'Nice', 8, 1, 1)
call SetTerrainType(-2176, 640, 'Nice', 0, 1, 1)
call SetTerrainType(-2048, 640, 'Nice', 8, 1, 1)
call SetTerrainType(-1920, 640, 'Nice', 16, 1, 1)
call SetTerrainType(-1792, 640, 'Nice', 0, 1, 1)
call SetTerrainType(-1664, 640, 'Nice', 4, 1, 1)
call SetTerrainType(-1536, 640, 'Nice', 0, 1, 1)
call SetTerrainType(-1408, 640, 'Nice', 8, 1, 1)
call SetTerrainType(-1280, 640, 'Itbk', 8, 1, 1)
call SetTerrainType(-1152, 640, 'Itbk', 12, 1, 1)
call SetTerrainType(-1024, 640, 'Itbk', 4, 1, 1)
call SetTerrainType(-896, 640, 'Itbk', 13, 1, 1)
call SetTerrainType(-768, 640, 'Itbk', 17, 1, 1)
call SetTerrainType(-640, 640, 'Itbk', 15, 1, 1)
call SetTerrainType(-512, 640, 'Nsnw', 16, 1, 1)
call SetTerrainType(-384, 640, 'Nsnw', 12, 1, 1)
call SetTerrainType(-256, 640, 'Nsnw', 8, 1, 1)
call SetTerrainType(-128, 640, 'Nsnw', 16, 1, 1)
call SetTerrainType(0, 640, 'Nsnw', 16, 1, 1)
call SetTerrainType(-3200, 768, 'Nsnw', 4, 1, 1)
call SetTerrainType(-3072, 768, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2944, 768, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2816, 768, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2688, 768, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2560, 768, 'Nice', 4, 1, 1)
call SetTerrainType(-2432, 768, 'Nice', 16, 1, 1)
call SetTerrainType(-2304, 768, 'Nice', 16, 1, 1)
call SetTerrainType(-2176, 768, 'Nice', 8, 1, 1)
call SetTerrainType(-2048, 768, 'Nice', 16, 1, 1)
call SetTerrainType(-1920, 768, 'Nice', 12, 1, 1)
call SetTerrainType(-1792, 768, 'Nice', 16, 1, 1)
call SetTerrainType(-1664, 768, 'Nice', 16, 1, 1)
call SetTerrainType(-1536, 768, 'Nice', 4, 1, 1)
call SetTerrainType(-1408, 768, 'Nice', 17, 1, 1)
call SetTerrainType(-1280, 768, 'Itbk', 8, 1, 1)
call SetTerrainType(-1152, 768, 'Itbk', 16, 1, 1)
call SetTerrainType(-1024, 768, 'Itbk', 12, 1, 1)
call SetTerrainType(-896, 768, 'Itbk', 4, 1, 1)
call SetTerrainType(-768, 768, 'Itbk', 1, 1, 1)
call SetTerrainType(-640, 768, 'Itbk', 16, 1, 1)
call SetTerrainType(-512, 768, 'Nsnw', 17, 1, 1)
call SetTerrainType(-384, 768, 'Nsnw', 16, 1, 1)
call SetTerrainType(-256, 768, 'Nsnw', 4, 1, 1)
call SetTerrainType(-128, 768, 'Nsnw', 0, 1, 1)
call SetTerrainType(0, 768, 'Nsnw', 0, 1, 1)
call SetTerrainType(-3200, 896, 'Nsnw', 4, 1, 1)
call SetTerrainType(-3072, 896, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2944, 896, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2816, 896, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2688, 896, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2560, 896, 'Nice', 17, 1, 1)
call SetTerrainType(-2432, 896, 'Nice', 16, 1, 1)
call SetTerrainType(-2304, 896, 'Nice', 16, 1, 1)
call SetTerrainType(-2176, 896, 'Nice', 8, 1, 1)
call SetTerrainType(-2048, 896, 'Nice', 16, 1, 1)
call SetTerrainType(-1920, 896, 'Nice', 8, 1, 1)
call SetTerrainType(-1792, 896, 'Nice', 8, 1, 1)
call SetTerrainType(-1664, 896, 'Nice', 8, 1, 1)
call SetTerrainType(-1536, 896, 'Nice', 17, 1, 1)
call SetTerrainType(-1408, 896, 'Nice', 8, 1, 1)
call SetTerrainType(-1280, 896, 'Itbk', 9, 1, 1)
call SetTerrainType(-1152, 896, 'Itbk', 8, 1, 1)
call SetTerrainType(-1024, 896, 'Itbk', 4, 1, 1)
call SetTerrainType(-896, 896, 'Itbk', 6, 1, 1)
call SetTerrainType(-768, 896, 'Itbk', 16, 1, 1)
call SetTerrainType(-640, 896, 'Itbk', 12, 1, 1)
call SetTerrainType(-512, 896, 'Nsnw', 17, 1, 1)
call SetTerrainType(-384, 896, 'Nsnw', 0, 1, 1)
call SetTerrainType(-256, 896, 'Nsnw', 5, 1, 1)
call SetTerrainType(-128, 896, 'Nsnw', 8, 1, 1)
call SetTerrainType(0, 896, 'Nsnw', 4, 1, 1)
call SetTerrainType(-3200, 1024, 'Nsnw', 17, 1, 1)
call SetTerrainType(-3072, 1024, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2944, 1024, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2816, 1024, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2688, 1024, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2560, 1024, 'Nice', 16, 1, 1)
call SetTerrainType(-2432, 1024, 'Nice', 0, 1, 1)
call SetTerrainType(-2304, 1024, 'Nice', 12, 1, 1)
call SetTerrainType(-2176, 1024, 'Nice', 8, 1, 1)
call SetTerrainType(-2048, 1024, 'Nice', 16, 1, 1)
call SetTerrainType(-1920, 1024, 'Nice', 12, 1, 1)
call SetTerrainType(-1792, 1024, 'Nice', 0, 1, 1)
call SetTerrainType(-1664, 1024, 'Nice', 12, 1, 1)
call SetTerrainType(-1536, 1024, 'Nice', 8, 1, 1)
call SetTerrainType(-1408, 1024, 'Nice', 17, 1, 1)
call SetTerrainType(-1280, 1024, 'Itbk', 17, 1, 1)
call SetTerrainType(-1152, 1024, 'Itbk', 12, 1, 1)
call SetTerrainType(-1024, 1024, 'Itbk', 12, 1, 1)
call SetTerrainType(-896, 1024, 'Itbk', 0, 1, 1)
call SetTerrainType(-768, 1024, 'Itbk', 12, 1, 1)
call SetTerrainType(-640, 1024, 'Itbk', 8, 1, 1)
call SetTerrainType(-512, 1024, 'Nsnw', 8, 1, 1)
call SetTerrainType(-384, 1024, 'Nsnw', 2, 1, 1)
call SetTerrainType(-256, 1024, 'Nsnw', 8, 1, 1)
call SetTerrainType(-128, 1024, 'Nsnw', 4, 1, 1)
call SetTerrainType(0, 1024, 'Nsnw', 17, 1, 1)
call SetTerrainType(-3200, 1152, 'Nsnw', 17, 1, 1)
call SetTerrainType(-3072, 1152, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2944, 1152, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2816, 1152, 'Nsnw', 1, 1, 1)
call SetTerrainType(-2688, 1152, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2560, 1152, 'Nice', 17, 1, 1)
call SetTerrainType(-2432, 1152, 'Nice', 4, 1, 1)
call SetTerrainType(-2304, 1152, 'Nice', 0, 1, 1)
call SetTerrainType(-2176, 1152, 'Nice', 16, 1, 1)
call SetTerrainType(-2048, 1152, 'Nice', 0, 1, 1)
call SetTerrainType(-1920, 1152, 'Nice', 8, 1, 1)
call SetTerrainType(-1792, 1152, 'Nice', 4, 1, 1)
call SetTerrainType(-1664, 1152, 'Nice', 17, 1, 1)
call SetTerrainType(-1536, 1152, 'Nice', 0, 1, 1)
call SetTerrainType(-1408, 1152, 'Nice', 0, 1, 1)
call SetTerrainType(-1280, 1152, 'Itbk', 8, 1, 1)
call SetTerrainType(-1152, 1152, 'Itbk', 15, 1, 1)
call SetTerrainType(-1024, 1152, 'Itbk', 4, 1, 1)
call SetTerrainType(-896, 1152, 'Itbk', 16, 1, 1)
call SetTerrainType(-768, 1152, 'Itbk', 17, 1, 1)
call SetTerrainType(-640, 1152, 'Itbk', 8, 1, 1)
call SetTerrainType(-512, 1152, 'Nsnw', 16, 1, 1)
call SetTerrainType(-384, 1152, 'Nsnw', 0, 1, 1)
call SetTerrainType(-256, 1152, 'Nsnw', 0, 1, 1)
call SetTerrainType(-128, 1152, 'Nsnw', 17, 1, 1)
call SetTerrainType(0, 1152, 'Nsnw', 16, 1, 1)
call SetTerrainType(-3200, 1280, 'Nsnw', 0, 1, 1)
call SetTerrainType(-3072, 1280, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2944, 1280, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2816, 1280, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2688, 1280, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2560, 1280, 'Nice', 4, 1, 1)
call SetTerrainType(-2432, 1280, 'Nice', 4, 1, 1)
call SetTerrainType(-2304, 1280, 'Nice', 16, 1, 1)
call SetTerrainType(-2176, 1280, 'Nice', 8, 1, 1)
call SetTerrainType(-2048, 1280, 'Nice', 17, 1, 1)
call SetTerrainType(-1920, 1280, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1792, 1280, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1664, 1280, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1536, 1280, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1408, 1280, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1280, 1280, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1152, 1280, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1024, 1280, 'Nsnw', 5, 1, 1)
call SetTerrainType(-896, 1280, 'Nsnw', 12, 1, 1)
call SetTerrainType(-768, 1280, 'Nsnw', 16, 1, 1)
call SetTerrainType(-640, 1280, 'Nsnw', 4, 1, 1)
call SetTerrainType(-512, 1280, 'Nsnw', 17, 1, 1)
call SetTerrainType(-384, 1280, 'Nsnw', 4, 1, 1)
call SetTerrainType(-256, 1280, 'Nsnw', 8, 1, 1)
call SetTerrainType(-128, 1280, 'Nsnw', 17, 1, 1)
call SetTerrainType(0, 1280, 'Nsnw', 4, 1, 1)
call SetTerrainType(-3200, 1408, 'Nsnw', 16, 1, 1)
call SetTerrainType(-3072, 1408, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2944, 1408, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2816, 1408, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2688, 1408, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2560, 1408, 'Nice', 17, 1, 1)
call SetTerrainType(-2432, 1408, 'Nice', 0, 1, 1)
call SetTerrainType(-2304, 1408, 'Nice', 12, 1, 1)
call SetTerrainType(-2176, 1408, 'Nice', 8, 1, 1)
call SetTerrainType(-2048, 1408, 'Nice', 8, 1, 1)
call SetTerrainType(-1920, 1408, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1792, 1408, 'Nsnw', 1, 1, 1)
call SetTerrainType(-1664, 1408, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1536, 1408, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1408, 1408, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1280, 1408, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1152, 1408, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1024, 1408, 'Nsnw', 12, 1, 1)
call SetTerrainType(-896, 1408, 'Nsnw', 16, 1, 1)
call SetTerrainType(-768, 1408, 'Nsnw', 8, 1, 1)
call SetTerrainType(-640, 1408, 'Nsnw', 4, 1, 1)
call SetTerrainType(-512, 1408, 'Nsnw', 12, 1, 1)
call SetTerrainType(-384, 1408, 'Nsnw', 12, 1, 1)
call SetTerrainType(-256, 1408, 'Nsnw', 16, 1, 1)
call SetTerrainType(-128, 1408, 'Nsnw', 17, 1, 1)
call SetTerrainType(0, 1408, 'Nsnw', 4, 1, 1)
call SetTerrainType(-3200, 1536, 'Nsnw', 12, 1, 1)
call SetTerrainType(-3072, 1536, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2944, 1536, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2816, 1536, 'Nsnw', 2, 1, 1)
call SetTerrainType(-2688, 1536, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2560, 1536, 'Nice', 4, 1, 1)
call SetTerrainType(-2432, 1536, 'Nice', 8, 1, 1)
call SetTerrainType(-2304, 1536, 'Nice', 16, 1, 1)
call SetTerrainType(-2176, 1536, 'Nice', 17, 1, 1)
call SetTerrainType(-2048, 1536, 'Nice', 16, 1, 1)
call SetTerrainType(-1920, 1536, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1792, 1536, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1664, 1536, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1536, 1536, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1408, 1536, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1280, 1536, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1152, 1536, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1024, 1536, 'Nsnw', 0, 1, 1)
call SetTerrainType(-896, 1536, 'Nsnw', 17, 1, 1)
call SetTerrainType(-768, 1536, 'Nsnw', 12, 1, 1)
call SetTerrainType(-640, 1536, 'Nsnw', 16, 1, 1)
call SetTerrainType(-512, 1536, 'Nsnw', 16, 1, 1)
call SetTerrainType(-384, 1536, 'Nsnw', 16, 1, 1)
call SetTerrainType(-256, 1536, 'Nsnw', 16, 1, 1)
call SetTerrainType(-128, 1536, 'Nsnw', 8, 1, 1)
call SetTerrainType(0, 1536, 'Nsnw', 17, 1, 1)
call SetTerrainType(-3200, 1664, 'Nsnw', 17, 1, 1)
call SetTerrainType(-3072, 1664, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2944, 1664, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2816, 1664, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2688, 1664, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2560, 1664, 'Nice', 0, 1, 1)
call SetTerrainType(-2432, 1664, 'Nice', 8, 1, 1)
call SetTerrainType(-2304, 1664, 'Nice', 16, 1, 1)
call SetTerrainType(-2176, 1664, 'Nice', 16, 1, 1)
call SetTerrainType(-2048, 1664, 'Nice', 12, 1, 1)
call SetTerrainType(-1920, 1664, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1792, 1664, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1664, 1664, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1536, 1664, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1408, 1664, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1280, 1664, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1152, 1664, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1024, 1664, 'Nsnw', 4, 1, 1)
call SetTerrainType(-896, 1664, 'Nsnw', 12, 1, 1)
call SetTerrainType(-768, 1664, 'Nsnw', 12, 1, 1)
call SetTerrainType(-640, 1664, 'Nsnw', 12, 1, 1)
call SetTerrainType(-512, 1664, 'Nsnw', 12, 1, 1)
call SetTerrainType(-384, 1664, 'Nsnw', 17, 1, 1)
call SetTerrainType(-256, 1664, 'Nsnw', 0, 1, 1)
call SetTerrainType(-128, 1664, 'Nsnw', 12, 1, 1)
call SetTerrainType(0, 1664, 'Nsnw', 12, 1, 1)
call SetTerrainType(-3200, 1792, 'Nsnw', 8, 1, 1)
call SetTerrainType(-3072, 1792, 'Nsnw', 9, 1, 1)
call SetTerrainType(-2944, 1792, 'Nsnw', 10, 1, 1)
call SetTerrainType(-2816, 1792, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2688, 1792, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2560, 1792, 'Nice', 17, 1, 1)
call SetTerrainType(-2432, 1792, 'Nice', 16, 1, 1)
call SetTerrainType(-2304, 1792, 'Nice', 17, 1, 1)
call SetTerrainType(-2176, 1792, 'Nice', 16, 1, 1)
call SetTerrainType(-2048, 1792, 'Nice', 17, 1, 1)
call SetTerrainType(-1920, 1792, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1792, 1792, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1664, 1792, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1536, 1792, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1408, 1792, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1280, 1792, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1152, 1792, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1024, 1792, 'Nsnw', 17, 1, 1)
call SetTerrainType(-896, 1792, 'Nsnw', 17, 1, 1)
call SetTerrainType(-768, 1792, 'Nsnw', 17, 1, 1)
call SetTerrainType(-640, 1792, 'Nsnw', 4, 1, 1)
call SetTerrainType(-512, 1792, 'Nsnw', 16, 1, 1)
call SetTerrainType(-384, 1792, 'Nsnw', 12, 1, 1)
call SetTerrainType(-256, 1792, 'Nsnw', 5, 1, 1)
call SetTerrainType(-128, 1792, 'Nsnw', 16, 1, 1)
call SetTerrainType(0, 1792, 'Nsnw', 0, 1, 1)
call SetTerrainType(-3200, 1920, 'Nsnw', 16, 1, 1)
call SetTerrainType(-3072, 1920, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2944, 1920, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2816, 1920, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2688, 1920, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2560, 1920, 'Nice', 12, 1, 1)
call SetTerrainType(-2432, 1920, 'Nice', 8, 1, 1)
call SetTerrainType(-2304, 1920, 'Nice', 8, 1, 1)
call SetTerrainType(-2176, 1920, 'Nice', 16, 1, 1)
call SetTerrainType(-2048, 1920, 'Nice', 16, 1, 1)
call SetTerrainType(-1920, 1920, 'Nice', 0, 1, 1)
call SetTerrainType(-1792, 1920, 'Nice', 8, 1, 1)
call SetTerrainType(-1664, 1920, 'Nice', 8, 1, 1)
call SetTerrainType(-1536, 1920, 'Nice', 4, 1, 1)
call SetTerrainType(-1408, 1920, 'Nice', 16, 1, 1)
call SetTerrainType(-1280, 1920, 'Ibkb', 0, 1, 1)
call SetTerrainType(-1152, 1920, 'Ibkb', 16, 1, 1)
call SetTerrainType(-1024, 1920, 'Ibkb', 17, 1, 1)
call SetTerrainType(-896, 1920, 'Ibkb', 4, 1, 1)
call SetTerrainType(-768, 1920, 'Ibkb', 4, 1, 1)
call SetTerrainType(-640, 1920, 'Nsnw', 8, 1, 1)
call SetTerrainType(-512, 1920, 'Nsnw', 4, 1, 1)
call SetTerrainType(-384, 1920, 'Nsnw', 16, 1, 1)
call SetTerrainType(-256, 1920, 'Nsnw', 2, 1, 1)
call SetTerrainType(-128, 1920, 'Nsnw', 12, 1, 1)
call SetTerrainType(0, 1920, 'Nsnw', 17, 1, 1)
call SetTerrainType(-3200, 2048, 'Nsnw', 8, 1, 1)
call SetTerrainType(-3072, 2048, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2944, 2048, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2816, 2048, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2688, 2048, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2560, 2048, 'Nice', 0, 1, 1)
call SetTerrainType(-2432, 2048, 'Nice', 4, 1, 1)
call SetTerrainType(-2304, 2048, 'Nice', 8, 1, 1)
call SetTerrainType(-2176, 2048, 'Nice', 12, 1, 1)
call SetTerrainType(-2048, 2048, 'Nice', 8, 1, 1)
call SetTerrainType(-1920, 2048, 'Nice', 12, 1, 1)
call SetTerrainType(-1792, 2048, 'Nice', 4, 1, 1)
call SetTerrainType(-1664, 2048, 'Nice', 8, 1, 1)
call SetTerrainType(-1536, 2048, 'Nice', 12, 1, 1)
call SetTerrainType(-1408, 2048, 'Nice', 16, 1, 1)
call SetTerrainType(-1280, 2048, 'Ibkb', 4, 1, 1)
call SetTerrainType(-1152, 2048, 'Ibkb', 8, 1, 1)
call SetTerrainType(-1024, 2048, 'Ibkb', 9, 1, 1)
call SetTerrainType(-896, 2048, 'Ibkb', 16, 1, 1)
call SetTerrainType(-768, 2048, 'Ibkb', 16, 1, 1)
call SetTerrainType(-640, 2048, 'Nsnw', 0, 1, 1)
call SetTerrainType(-512, 2048, 'Nsnw', 12, 1, 1)
call SetTerrainType(-384, 2048, 'Nsnw', 8, 1, 1)
call SetTerrainType(-256, 2048, 'Nsnw', 0, 1, 1)
call SetTerrainType(-128, 2048, 'Nsnw', 17, 1, 1)
call SetTerrainType(0, 2048, 'Nsnw', 8, 1, 1)
call SetTerrainType(-3200, 2176, 'Nsnw', 0, 1, 1)
call SetTerrainType(-3072, 2176, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2944, 2176, 'Nsnw', 1, 1, 1)
call SetTerrainType(-2816, 2176, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2688, 2176, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2560, 2176, 'Nice', 0, 1, 1)
call SetTerrainType(-2432, 2176, 'Nice', 0, 1, 1)
call SetTerrainType(-2304, 2176, 'Nice', 16, 1, 1)
call SetTerrainType(-2176, 2176, 'Nice', 17, 1, 1)
call SetTerrainType(-2048, 2176, 'Nice', 0, 1, 1)
call SetTerrainType(-1920, 2176, 'Nice', 12, 1, 1)
call SetTerrainType(-1792, 2176, 'Nice', 17, 1, 1)
call SetTerrainType(-1664, 2176, 'Nice', 4, 1, 1)
call SetTerrainType(-1536, 2176, 'Nice', 8, 1, 1)
call SetTerrainType(-1408, 2176, 'Nice', 8, 1, 1)
call SetTerrainType(-1280, 2176, 'Ibkb', 12, 1, 1)
call SetTerrainType(-1152, 2176, 'Ibkb', 17, 1, 1)
call SetTerrainType(-1024, 2176, 'Ibkb', 12, 1, 1)
call SetTerrainType(-896, 2176, 'Ibkb', 1, 1, 1)
call SetTerrainType(-768, 2176, 'Ibkb', 16, 1, 1)
call SetTerrainType(-640, 2176, 'Nsnw', 4, 1, 1)
call SetTerrainType(-512, 2176, 'Nsnw', 4, 1, 1)
call SetTerrainType(-384, 2176, 'Nsnw', 16, 1, 1)
call SetTerrainType(-256, 2176, 'Nsnw', 8, 1, 1)
call SetTerrainType(-128, 2176, 'Nsnw', 16, 1, 1)
call SetTerrainType(0, 2176, 'Nsnw', 12, 1, 1)
call SetTerrainType(-3200, 2304, 'Nsnw', 17, 1, 1)
call SetTerrainType(-3072, 2304, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2944, 2304, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2816, 2304, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2688, 2304, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2560, 2304, 'Nice', 16, 1, 1)
call SetTerrainType(-2432, 2304, 'Nice', 12, 1, 1)
call SetTerrainType(-2304, 2304, 'Nice', 4, 1, 1)
call SetTerrainType(-2176, 2304, 'Nice', 16, 1, 1)
call SetTerrainType(-2048, 2304, 'Nice', 4, 1, 1)
call SetTerrainType(-1920, 2304, 'Nice', 12, 1, 1)
call SetTerrainType(-1792, 2304, 'Nice', 8, 1, 1)
call SetTerrainType(-1664, 2304, 'Nice', 8, 1, 1)
call SetTerrainType(-1536, 2304, 'Nice', 16, 1, 1)
call SetTerrainType(-1408, 2304, 'Nice', 14, 1, 1)
call SetTerrainType(-1280, 2304, 'Ibkb', 17, 1, 1)
call SetTerrainType(-1152, 2304, 'Ibkb', 17, 1, 1)
call SetTerrainType(-1024, 2304, 'Ibkb', 8, 1, 1)
call SetTerrainType(-896, 2304, 'Ibkb', 16, 1, 1)
call SetTerrainType(-768, 2304, 'Ibkb', 5, 1, 1)
call SetTerrainType(-640, 2304, 'Nsnw', 4, 1, 1)
call SetTerrainType(-512, 2304, 'Nsnw', 8, 1, 1)
call SetTerrainType(-384, 2304, 'Nsnw', 17, 1, 1)
call SetTerrainType(-256, 2304, 'Nsnw', 0, 1, 1)
call SetTerrainType(-128, 2304, 'Nsnw', 8, 1, 1)
call SetTerrainType(0, 2304, 'Nsnw', 17, 1, 1)
call SetTerrainType(-3200, 2432, 'Nsnw', 8, 1, 1)
call SetTerrainType(-3072, 2432, 'Nsnw', 5, 1, 1)
call SetTerrainType(-2944, 2432, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2816, 2432, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2688, 2432, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2560, 2432, 'Nice', 0, 1, 1)
call SetTerrainType(-2432, 2432, 'Nice', 8, 1, 1)
call SetTerrainType(-2304, 2432, 'Nice', 8, 1, 1)
call SetTerrainType(-2176, 2432, 'Nice', 4, 1, 1)
call SetTerrainType(-2048, 2432, 'Nice', 17, 1, 1)
call SetTerrainType(-1920, 2432, 'Nice', 17, 1, 1)
call SetTerrainType(-1792, 2432, 'Nice', 0, 1, 1)
call SetTerrainType(-1664, 2432, 'Nice', 0, 1, 1)
call SetTerrainType(-1536, 2432, 'Nice', 12, 1, 1)
call SetTerrainType(-1408, 2432, 'Nice', 16, 1, 1)
call SetTerrainType(-1280, 2432, 'Ibkb', 8, 1, 1)
call SetTerrainType(-1152, 2432, 'Ibkb', 9, 1, 1)
call SetTerrainType(-1024, 2432, 'Ibkb', 16, 1, 1)
call SetTerrainType(-896, 2432, 'Ibkb', 17, 1, 1)
call SetTerrainType(-768, 2432, 'Ibkb', 8, 1, 1)
call SetTerrainType(-640, 2432, 'Nsnw', 17, 1, 1)
call SetTerrainType(-512, 2432, 'Nsnw', 4, 1, 1)
call SetTerrainType(-384, 2432, 'Nsnw', 16, 1, 1)
call SetTerrainType(-256, 2432, 'Nsnw', 8, 1, 1)
call SetTerrainType(-128, 2432, 'Nsnw', 12, 1, 1)
call SetTerrainType(0, 2432, 'Nsnw', 16, 1, 1)
call SetTerrainType(-3200, 2560, 'Nsnw', 4, 1, 1)
call SetTerrainType(-3072, 2560, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2944, 2560, 'Nsnw', 11, 1, 1)
call SetTerrainType(-2816, 2560, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2688, 2560, 'Nsnw', 2, 1, 1)
call SetTerrainType(-2560, 2560, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2432, 2560, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2304, 2560, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2176, 2560, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2048, 2560, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1920, 2560, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1792, 2560, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1664, 2560, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1536, 2560, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1408, 2560, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1280, 2560, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1152, 2560, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1024, 2560, 'Nsnw', 0, 1, 1)
call SetTerrainType(-896, 2560, 'Nsnw', 0, 1, 1)
call SetTerrainType(-768, 2560, 'Nsnw', 8, 1, 1)
call SetTerrainType(-640, 2560, 'Nsnw', 4, 1, 1)
call SetTerrainType(-512, 2560, 'Nsnw', 17, 1, 1)
call SetTerrainType(-384, 2560, 'Nsnw', 4, 1, 1)
call SetTerrainType(-256, 2560, 'Nsnw', 17, 1, 1)
call SetTerrainType(-128, 2560, 'Nsnw', 17, 1, 1)
call SetTerrainType(0, 2560, 'Nsnw', 16, 1, 1)
call SetTerrainType(-3200, 2688, 'Nsnw', 16, 1, 1)
call SetTerrainType(-3072, 2688, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2944, 2688, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2816, 2688, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2688, 2688, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2560, 2688, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2432, 2688, 'Nsnw', 1, 1, 1)
call SetTerrainType(-2304, 2688, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2176, 2688, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2048, 2688, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1920, 2688, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1792, 2688, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1664, 2688, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1536, 2688, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1408, 2688, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1280, 2688, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1152, 2688, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1024, 2688, 'Nsnw', 16, 1, 1)
call SetTerrainType(-896, 2688, 'Nsnw', 0, 1, 1)
call SetTerrainType(-768, 2688, 'Nsnw', 0, 1, 1)
call SetTerrainType(-640, 2688, 'Nsnw', 17, 1, 1)
call SetTerrainType(-512, 2688, 'Nsnw', 8, 1, 1)
call SetTerrainType(-384, 2688, 'Nsnw', 8, 1, 1)
call SetTerrainType(-256, 2688, 'Nsnw', 4, 1, 1)
call SetTerrainType(-128, 2688, 'Nsnw', 16, 1, 1)
call SetTerrainType(0, 2688, 'Nsnw', 8, 1, 1)
call SetTerrainType(-3200, 2816, 'Nsnw', 12, 1, 1)
call SetTerrainType(-3072, 2816, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2944, 2816, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2816, 2816, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2688, 2816, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2560, 2816, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2432, 2816, 'Nsnw', 14, 1, 1)
call SetTerrainType(-2304, 2816, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2176, 2816, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2048, 2816, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1920, 2816, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1792, 2816, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1664, 2816, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1536, 2816, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1408, 2816, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1280, 2816, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1152, 2816, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1024, 2816, 'Nsnw', 0, 1, 1)
call SetTerrainType(-896, 2816, 'Nsnw', 8, 1, 1)
call SetTerrainType(-768, 2816, 'Nsnw', 17, 1, 1)
call SetTerrainType(-640, 2816, 'Nsnw', 17, 1, 1)
call SetTerrainType(-512, 2816, 'Nsnw', 16, 1, 1)
call SetTerrainType(-384, 2816, 'Nsnw', 4, 1, 1)
call SetTerrainType(-256, 2816, 'Nsnw', 4, 1, 1)
call SetTerrainType(-128, 2816, 'Nsnw', 12, 1, 1)
call SetTerrainType(0, 2816, 'Nsnw', 0, 1, 1)
call SetTerrainType(-3200, 2944, 'Nsnw', 4, 1, 1)
call SetTerrainType(-3072, 2944, 'Nsnw', 1, 1, 1)
call SetTerrainType(-2944, 2944, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2816, 2944, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2688, 2944, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2560, 2944, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2432, 2944, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2304, 2944, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2176, 2944, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2048, 2944, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1920, 2944, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1792, 2944, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1664, 2944, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1536, 2944, 'Nsnw', 9, 1, 1)
call SetTerrainType(-1408, 2944, 'Nsnw', 5, 1, 1)
call SetTerrainType(-1280, 2944, 'Nsnw', 2, 1, 1)
call SetTerrainType(-1152, 2944, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1024, 2944, 'Nsnw', 8, 1, 1)
call SetTerrainType(-896, 2944, 'Nsnw', 12, 1, 1)
call SetTerrainType(-768, 2944, 'Nsnw', 4, 1, 1)
call SetTerrainType(-640, 2944, 'Nsnw', 16, 1, 1)
call SetTerrainType(-512, 2944, 'Nsnw', 16, 1, 1)
call SetTerrainType(-384, 2944, 'Nsnw', 0, 1, 1)
call SetTerrainType(-256, 2944, 'Nsnw', 0, 1, 1)
call SetTerrainType(-128, 2944, 'Nsnw', 12, 1, 1)
call SetTerrainType(0, 2944, 'Nsnw', 4, 1, 1)
call SetTerrainType(-3200, 3072, 'Nsnw', 12, 1, 1)
call SetTerrainType(-3072, 3072, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2944, 3072, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2816, 3072, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2688, 3072, 'Nsnw', 12, 1, 1)
call SetTerrainType(-2560, 3072, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2432, 3072, 'Nsnw', 4, 1, 1)
call SetTerrainType(-2304, 3072, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2176, 3072, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2048, 3072, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1920, 3072, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1792, 3072, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1664, 3072, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1536, 3072, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1408, 3072, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1280, 3072, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1152, 3072, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1024, 3072, 'Nsnw', 4, 1, 1)
call SetTerrainType(-896, 3072, 'Nsnw', 13, 1, 1)
call SetTerrainType(-768, 3072, 'Nsnw', 16, 1, 1)
call SetTerrainType(-640, 3072, 'Nsnw', 12, 1, 1)
call SetTerrainType(-512, 3072, 'Nsnw', 8, 1, 1)
call SetTerrainType(-384, 3072, 'Nsnw', 16, 1, 1)
call SetTerrainType(-256, 3072, 'Nsnw', 17, 1, 1)
call SetTerrainType(-128, 3072, 'Nsnw', 8, 1, 1)
call SetTerrainType(0, 3072, 'Nsnw', 0, 1, 1)
call SetTerrainType(-3200, 3200, 'Nsnw', 0, 1, 1)
call SetTerrainType(-3072, 3200, 'Nsnw', 2, 1, 1)
call SetTerrainType(-2944, 3200, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2816, 3200, 'Nsnw', 10, 1, 1)
call SetTerrainType(-2688, 3200, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2560, 3200, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2432, 3200, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2304, 3200, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2176, 3200, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2048, 3200, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1920, 3200, 'Nsnw', 8, 1, 1)
call SetTerrainType(-1792, 3200, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1664, 3200, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1536, 3200, 'Nsnw', 5, 1, 1)
call SetTerrainType(-1408, 3200, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1280, 3200, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1152, 3200, 'Nsnw', 17, 1, 1)
call SetTerrainType(-1024, 3200, 'Nsnw', 1, 1, 1)
call SetTerrainType(-896, 3200, 'Nsnw', 16, 1, 1)
call SetTerrainType(-768, 3200, 'Nsnw', 8, 1, 1)
call SetTerrainType(-640, 3200, 'Nsnw', 12, 1, 1)
call SetTerrainType(-512, 3200, 'Nsnw', 8, 1, 1)
call SetTerrainType(-384, 3200, 'Nsnw', 16, 1, 1)
call SetTerrainType(-256, 3200, 'Nsnw', 13, 1, 1)
call SetTerrainType(-128, 3200, 'Nsnw', 1, 1, 1)
call SetTerrainType(0, 3200, 'Nsnw', 0, 1, 1)
call SetTerrainType(-3200, 3328, 'Nsnw', 4, 1, 1)
call SetTerrainType(-3072, 3328, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2944, 3328, 'Nsnw', 0, 1, 1)
call SetTerrainType(-2816, 3328, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2688, 3328, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2560, 3328, 'Nsnw', 16, 1, 1)
call SetTerrainType(-2432, 3328, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2304, 3328, 'Nsnw', 8, 1, 1)
call SetTerrainType(-2176, 3328, 'Nsnw', 17, 1, 1)
call SetTerrainType(-2048, 3328, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1920, 3328, 'Nsnw', 10, 1, 1)
call SetTerrainType(-1792, 3328, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1664, 3328, 'Nsnw', 16, 1, 1)
call SetTerrainType(-1536, 3328, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1408, 3328, 'Nsnw', 0, 1, 1)
call SetTerrainType(-1280, 3328, 'Nsnw', 4, 1, 1)
call SetTerrainType(-1152, 3328, 'Nsnw', 12, 1, 1)
call SetTerrainType(-1024, 3328, 'Nsnw', 12, 1, 1)
call SetTerrainType(-896, 3328, 'Nsnw', 8, 1, 1)
call SetTerrainType(-768, 3328, 'Nsnw', 17, 1, 1)
call SetTerrainType(-640, 3328, 'Nsnw', 5, 1, 1)
call SetTerrainType(-512, 3328, 'Nsnw', 12, 1, 1)
call SetTerrainType(-384, 3328, 'Nsnw', 8, 1, 1)
call SetTerrainType(-256, 3328, 'Nsnw', 8, 1, 1)
call SetTerrainType(-128, 3328, 'Nsnw', 14, 1, 1)
call SetTerrainType(0, 3328, 'Nsnw', 17, 1, 1)
endmethod
method getLevelName takes nothing returns string
return "Peon"
endmethod
method getLevelRank takes nothing returns integer
return 0
endmethod
method onDestroy takes nothing returns nothing
call RemoveUnit(finish)
call DestroyTrigger(finishHandler)
set finishHandler = null
set finish = null
call RemoveRect(.rankRegion)
call DestroyTrigger(rankHandler)
set .rankRegion = null
set .rankHandler = null
endmethod
static method create takes nothing returns thistype
local thistype this = .allocate()
call .createLevel()
set .finishHandler = CreateTrigger()
call TriggerRegisterUnitInRange(.finishHandler, .finish, 105, Filter(function Level.onFinishFilter))
call TriggerAddAction(.finishHandler, function Level.enterFinish)
set .rankHandler = CreateTrigger()
call TriggerRegisterEnterRectSimple(.rankHandler, .rankRegion)
call TriggerAddAction(.rankHandler, function Level.enterRankRegion)
return this
endmethod
endstruct
Attachments
Last edited: