--- /dev/null
+include "constants.l2h"
+
+export Map map1 {
+ tileset: Sprite {
+ image: :"tileset.png",
+ size: <32, 32>
+ },
+ battlebg: :"battle-bg.png",
+ width: 2,
+ areas: [ Area
+ {
+ width: 8,
+ tiles: [ Tile
+ { t: <2, 1> },
+ { t: <4, 0>, flags: blockNW },
+ { t: <3, 0>, flags: blockN },
+ { t: <3, 0>, flags: blockNE },
+ { t: <0, 1> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+
+ { t: <2, 1> },
+ { t: <4, 0>, flags: blockW },
+ { t: <3, 0> },
+ { t: <3, 0>, flags: blockE },
+ { t: <0, 2> },
+ { t: <1, 2> },
+ { t: <1, 2> },
+ { t: <1, 2> },
+
+ { t: <2, 1> },
+ { t: <4, 0>, flags: blockW },
+ { t: <3, 0> },
+ { t: <3, 0>, flags: blockE },
+ { t: <0, 3> },
+ { t: <1, 3> },
+ { t: <1, 3> },
+ { t: <2, 3> },
+
+ { t: <2, 1> },
+ { t: <4, 0>, flags: blockW },
+ { t: <3, 0> },
+ { t: <3, 0>, flags: blockE },
+ { t: <0, 4> },
+ { t: <1, 4> },
+ { t: <1, 4> },
+ { t: <2, 4> },
+
+ { t: <2, 1> },
+ { t: <4, 0>, flags: blockW },
+ { t: <3, 0> },
+ { t: <3, 0> },
+ { t: <3, 0>, flags: blockN },
+ { t: <3, 0>, flags: blockN },
+ { t: <3, 0>, flags: blockN },
+ { t: <3, 0>, flags: blockN },
+
+ { t: <2, 1> },
+ { t: <4, 0>, flags: blockW },
+ { t: <3, 0> },
+ { t: <3, 0> },
+ { t: <3, 0>, flags: blockS },
+ { t: <4, 0>, flags: blockS },
+ { t: <4, 0>, flags: blockS },
+ { t: <4, 0>, flags: blockS },
+
+ { t: <2, 1> },
+ { t: <4, 0>, flags: blockW },
+ { t: <3, 0> },
+ { t: <3, 0>, flags: blockE },
+ { t: <0, 0> },
+ { t: <1, 0> },
+ { t: <1, 0> },
+ { t: <1, 0> },
+
+ { t: <2, 1> },
+ { t: <4, 0>, flags: blockSW },
+ { t: <3, 0>, flags: blockS },
+ { t: <3, 0>, flags: blockES },
+ { t: <0, 1> },
+ { t: <1, 1> },
+ { t: <1, 1> },
+ { t: <1, 1> }
+ ]
+ },
+ {
+ width: 8,
+ tiles: [ Tile
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+
+ { t: <1, 2> },
+ { t: <1, 2> },
+ { t: <5, 3> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+
+ { t: <3, 3> },
+ { t: <0, 3> },
+ { t: <0, 1> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+
+ { t: <3, 4>, flags: blockNEW },
+ { t: <0, 4> },
+ { t: <0, 1> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+
+ { t: <5, 0> },
+ { t: <3, 0>, flags: blockNE },
+ { t: <0, 1> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+
+ { t: <4, 0>, flags: blockS },
+ { t: <4, 0>, flags: blockES },
+ { t: <0, 1> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+
+ { t: <1, 0> },
+ { t: <1, 0> },
+ { t: <5, 4> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> }
+ ]
+ }
+ ],
+ triggers: [ Trigger
+ {
+ position: <8, 3>,
+ type: triggerNorth,
+ script: <<
+ $move %i0 1
+ $move %a0 map2
+ $move %v0 <6, 2>
+ $sysc
+ >>
+ }
+ ],
+ entities: [ Entity
+ {
+ animation: SimpleAnimation {
+ sprite: Sprite {
+ image: :"monster-map.png",
+ size: <32, 32>
+ },
+ framecount: 2,
+ frametime: 500,
+ repeat: true
+ },
+ position: <2, 1>,
+ partyLayout: monstersLayout
+ // TODO: monsters
+ },
+ {
+ sprite: Sprite {
+ image: :"tileset.png",
+ size: <32, 32>,
+ offset: <96, 32>
+ },
+ position: <2, 5>,
+ flags: 6 // TODO: hard support for flags
+ }
+ ]
+}
+
+export Map map2 {
+ tileset: Sprite {
+ image: :"tileset.png",
+ size: <32, 32>
+ },
+ battlebg: :"battle-bg.png",
+ width: 2,
+ areas: [ Area
+ {
+ width: 8,
+ tiles: [ Tile
+ { t: <3, 0>, flags: blockNW },
+ { t: <3, 0>, flags: blockN },
+ { t: <3, 0>, flags: blockN },
+ { t: <3, 0>, flags: blockN },
+ { t: <3, 0>, flags: blockN },
+ { t: <3, 0>, flags: blockN },
+ { t: <3, 0>, flags: blockN },
+ { t: <3, 0>, flags: blockNE },
+
+ { t: <3, 0>, flags: blockW },
+ { t: <3, 0> },
+ { t: <3, 0>, flags: blockS },
+ { t: <4, 0>, flags: blockS },
+ { t: <4, 0>, flags: blockS },
+ { t: <4, 0>, flags: blockS },
+ { t: <4, 0> },
+ { t: <4, 0>, flags: blockES },
+
+ { t: <3, 0>, flags: blockW },
+ { t: <3, 0>, flags: blockE },
+ { t: <0, 0> },
+ { t: <1, 0> },
+ { t: <1, 0> },
+ { t: <3, 2> },
+ { t: <4, 2>, flags: blockESW },
+ { t: <5, 2> },
+
+ { t: <3, 0>, flags: blockW },
+ { t: <3, 0>, flags: blockE },
+ { t: <0, 1> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <1, 2> },
+ { t: <1, 2> },
+ { t: <1, 2> },
+
+ { t: <3, 0>, flags: blockW },
+ { t: <3, 0>, flags: blockE },
+ { t: <0, 1> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 4> },
+ { t: <3, 4> },
+ { t: <0, 4> },
+
+ { t: <3, 0>, flags: blockW },
+ { t: <3, 0>, flags: blockE },
+ { t: <0, 1> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <4, 1> },
+ { t: <5, 1> },
+ { t: <3, 1> },
+
+ { t: <3, 0>, flags: blockW },
+ { t: <3, 0>, flags: blockE },
+ { t: <0, 1> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> },
+ { t: <2, 0> }
+ ]
+ }
+ ],
+ triggers: [ Trigger
+ {
+ position: <6, 2>,
+ type: triggerSouth,
+ script: <<
+ $move %i0 1
+ $move %a0 map1
+ $move %v0 <8, 3>
+ $sysc
+ >>
+ }
+ ]
+}