X-Git-Url: https://git.localhorst.tv/?a=blobdiff_plain;f=test-data%2Ftest.l2s;h=8474e1f36c36ec9e46a5b35d7bf329e8a3b831ee;hb=1ad6b01c2cac5f771fcef0911c6d81230e50d0ed;hp=ef1cce28cf52cfb33164b593fa6dd043eefd6a70;hpb=b7fcb21d8f1a6edba4693c879a2930db6f2fa95e;p=l2e.git diff --git a/test-data/test.l2s b/test-data/test.l2s index ef1cce2..8474e1f 100644 --- a/test-data/test.l2s +++ b/test-data/test.l2s @@ -1,27 +1,43 @@ Number frameTime 33 Number twoFramesTime 66 -Number fiveFramesTime 165 +Number fourFramesTime 132 +Number fiveFramesTime 165 // darn, i really need to implement expressions + +Sprite lizardSprite { + // using pathes relative to project root until path resolution is implemented + image: "test-data/monster.png", + size: <64,64> +} export Monster lizard { name: "Lizard", - sprite: Sprite { - image: "monster.png", - size: <64,64> - }, + sprite: lizardSprite, level: 1, maxHealth: 8, + health: 8, stats: Stats { - attack: 14, - defense: 6, - strength: 6, - agility: 6, - intelligence: 6, - gut: 6, - magicResistance: 6 + atp: 14, + dfp: 6, + str: 6, + agl: 6, + int: 6, + gut: 6, + mgr: 6 + }, + attackAnimation: ComplexAnimation { + sprite: lizardSprite, + frametime: fourFramesTime, + repeat: false, + frames: [ + { column: 0, row: 1, disposition: < 0, 16> }, + { column: 0, row: 0, disposition: < 0, 16> }, + { column: 0, row: 1, disposition: < 0, 16> }, + { column: 0, row: 0, disposition: < 0, 16> } + ] }, - attackAnimation: SimpleAnimation { + meleeAnimation: SimpleAnimation { sprite: Sprite { - image: "attack-monster.png", + image: "test-data/attack-monster.png", size: <96,64> }, frametime: frameTime, @@ -30,7 +46,7 @@ export Monster lizard { } Sprite maximSprite { - image: "maxim.png", + image: "test-data/maxim.png", size: <64,64> } export Hero maxim { @@ -43,13 +59,13 @@ export Hero maxim { mana: 20, ip: 0, stats: Stats { - attack: 28, - defense: 22, - strength: 28, - agility: 17, - intelligence: 14, - gut: 100, - magicResistance: 10 + atp: 28, + dfp: 22, + str: 28, + agl: 17, + int: 14, + gut: 100, + mgr: 10 }, attackAnimation: ComplexAnimation { sprite: maximSprite, @@ -97,7 +113,77 @@ export Hero maxim { }, meleeAnimation: SimpleAnimation { sprite: Sprite { - image: "melee-maxim.png", + image: "test-data/melee-maxim.png", + size: <96,96> + }, + frametime: twoFramesTime, + framecount: 4 + } +} + +Sprite selanSprite { + image: "test-data/selan.png", + size: <64,64> +} +export Hero selan { + name: "Selan", + level: 1, + sprite: selanSprite, + maxHealth: 28, + health: 28, + maxMana: 23, + mana: 23, + ip: 0, + stats: Stats { + atp: 23, + dfp: 21, + str: 23, + agl: 19, + int: 22, + gut: 80, + mgr: 13 + }, + attackAnimation: ComplexAnimation { + sprite: selanSprite, + frametime: frameTime, + repeat: false, + frames: [ + { column: 1, row: 0, disposition: < 4, 0> }, + { column: 1, row: 0, disposition: < 4, 0> }, + { column: 1, row: 0, disposition: < 8, 2> }, + { column: 2, row: 0, disposition: <10, 4> }, + { column: 2, row: 0, disposition: <14, 4> }, + { column: 2, row: 0, disposition: <12, 2> }, + { column: 2, row: 0, disposition: <12, 2> }, + { column: 2, row: 0, disposition: <12, 2> }, + { column: 2, row: 1, disposition: <14, 2> }, + { column: 2, row: 1, disposition: <14, 2> }, + { column: 2, row: 1, disposition: < 2, 0> }, + { column: 2, row: 2, disposition: <-2,-4> }, + { column: 2, row: 2, disposition: <-8,-8> }, + { column: 2, row: 2, disposition: < 0, 0> } + ] + }, + spellAnimation: ComplexAnimation { + sprite: selanSprite, + frametime: frameTime, + repeat: false, + frames: [ + { column: 3, row: 0, disposition: < 0, 0> }, + { column: 3, row: 0, disposition: < 0, 0> }, + { column: 3, row: 0, disposition: < 0, 0> }, + { column: 3, row: 1, disposition: < 0, 0> }, + { column: 3, row: 1, disposition: < 0, 0> }, + { column: 3, row: 2, disposition: < 0, 0> }, + { column: 3, row: 2, disposition: < 0, 0> }, + { column: 3, row: 2, disposition: < 0, 0> }, + { column: 3, row: 3, disposition: < 0, 0> }, + { column: 3, row: 3, disposition: < 0, 0> } + ] + }, + meleeAnimation: SimpleAnimation { + sprite: Sprite { + image: "test-data/melee-selan.png", size: <96,96> }, frametime: twoFramesTime,