X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=test-data%2Ftest.l2s;h=1267b9f9854ffcd979177574d6331d78c0e85250;hb=8d14039cfc64a5da19941eba65df34347fa374d5;hp=65da87aa79be409fc4cba66d7242ec9a50007aae;hpb=1aa61eca26f5b4a4cb856a39e802f5899548b691;p=l2e.git diff --git a/test-data/test.l2s b/test-data/test.l2s index 65da87a..1267b9f 100644 --- a/test-data/test.l2s +++ b/test-data/test.l2s @@ -1,6 +1,6 @@ -include "ikaris.l2s" -include "items.l2s" -include "spells.l2s" +include "ikaris.l2h" +include "items.l2h" +include "spells.l2h" Number frameTime 33 Number twoFramesTime 66 @@ -48,7 +48,8 @@ export Monster lizard { sprite: lizardSprite, frametime: fourFramesTime, repeat: false, - frames: [ + frames: + [ ComplexAnimationFrame { column: 0, row: 1, disposition: < 0, 16> }, { column: 0, row: 0, disposition: < 0, 16> }, { column: 0, row: 1, disposition: < 0, 16> }, @@ -72,7 +73,7 @@ Sprite maximSprite { export Hero maxim { name: "Maxim", level: 1, - sprite: maximSprite, + battleSprite: maximSprite, maxHealth: 33, health: 33, maxMana: 20, @@ -87,11 +88,15 @@ export Hero maxim { gut: 100, mgr: 10 }, + ladder: [ + 10 + ], attackAnimation: ComplexAnimation { sprite: maximSprite, frametime: frameTime, repeat: false, - frames: [ + frames: + [ ComplexAnimationFrame { column: 1, row: 0, disposition: < 0, 0> }, { column: 1, row: 0, disposition: < 0, 0> }, { column: 1, row: 0, disposition: < 0, 0> }, @@ -125,7 +130,8 @@ export Hero maxim { sprite: maximSprite, frametime: fiveFramesTime, repeat: false, - frames: [ + frames: + [ ComplexAnimationFrame { column: 3, row: 0, disposition: < 0, 0> }, { column: 3, row: 0, disposition: < 0, 0> }, { column: 3, row: 1, disposition: < 0, 0> } @@ -138,6 +144,17 @@ export Hero maxim { }, frametime: twoFramesTime, framecount: 4 + }, + mapEntity: Entity { + animation: SimpleAnimation{ + sprite: Sprite { + image: :"maxim-map.png", + size: <32,64> + }, + frametime: 120, + framecount: 2 + }, + spriteOffset: <0,-32> } } @@ -148,7 +165,7 @@ Sprite selanSprite { export Hero selan { name: "Selan", level: 1, - sprite: selanSprite, + battleSprite: selanSprite, maxHealth: 28, health: 28, maxMana: 23, @@ -167,7 +184,8 @@ export Hero selan { sprite: selanSprite, frametime: frameTime, repeat: false, - frames: [ + frames: + [ ComplexAnimationFrame { column: 1, row: 0, disposition: < 4, 0> }, { column: 1, row: 0, disposition: < 4, 0> }, { column: 1, row: 0, disposition: < 8, 2> }, @@ -188,7 +206,8 @@ export Hero selan { sprite: selanSprite, frametime: frameTime, repeat: false, - frames: [ + frames: + [ ComplexAnimationFrame { column: 3, row: 0, disposition: < 0, 0> }, { column: 3, row: 0, disposition: < 0, 0> }, { column: 3, row: 0, disposition: < 0, 0> }, @@ -208,6 +227,17 @@ export Hero selan { }, frametime: twoFramesTime, framecount: 4 + }, + mapEntity: Entity { + animation: SimpleAnimation{ + sprite: Sprite { + image: :"selan-map.png", + size: <32,64> + }, + frametime: 120, + framecount: 2 + }, + spriteOffset: <0,-32> } } @@ -218,7 +248,7 @@ Sprite guySprite { export Hero guy { name: "Guy", level: 1, - sprite: guySprite, + battleSprite: guySprite, maxHealth: 38, health: 38, maxMana: 0, @@ -237,7 +267,8 @@ export Hero guy { sprite: guySprite, frametime: frameTime, repeat: false, - frames: [ + frames: + [ ComplexAnimationFrame { column: 1, row: 0, disposition: <-4, 0> }, { column: 1, row: 0, disposition: <-4, 0> }, { column: 1, row: 0, disposition: <-8, 0> }, @@ -261,6 +292,17 @@ export Hero guy { }, frametime: fourFramesTime, framecount: 4 + }, + mapEntity: Entity { + animation: SimpleAnimation{ + sprite: Sprite { + image: :"guy-map.png", + size: <32,64> + }, + frametime: 120, + framecount: 2 + }, + spriteOffset: <0,-32> } } @@ -271,7 +313,7 @@ Sprite dekarSprite { export Hero dekar { name: "Dekar", level: 1, - sprite: dekarSprite, + battleSprite: dekarSprite, maxHealth: 38, health: 38, maxMana: 0, @@ -290,7 +332,8 @@ export Hero dekar { sprite: dekarSprite, frametime: frameTime, repeat: false, - frames: [ + frames: + [ ComplexAnimationFrame { column: 1, row: 0, disposition: < 4, 0> }, { column: 1, row: 0, disposition: < 8, 2> }, { column: 2, row: 0, disposition: <12, 4> }, @@ -311,7 +354,8 @@ export Hero dekar { sprite: dekarSprite, frametime: twoFramesTime, repeat: false, - frames: [ + frames: + [ ComplexAnimationFrame { column: 3, row: 0, disposition: < 0, 0> }, { column: 3, row: 0, disposition: < 0, 0> }, { column: 3, row: 0, disposition: < 0, 0> }, @@ -332,232 +376,271 @@ export Hero dekar { }, frametime: twoFramesTime, framecount: 4 + }, + mapEntity: Entity { + animation: SimpleAnimation{ + sprite: Sprite { + image: :"dekar-map.png", + size: <32,64> + }, + frametime: 120, + framecount: 2 + }, + spriteOffset: <0,-32> } } -export Sprite swapCursor { - image: :"swap-cursor.png", - size: <32,32> -} -export Sprite attackIcons { - image: :"attack-type-icons.png", - size: <32,32> -} -export Sprite attackChoiceIcons { - image: :"attack-choice-icons.png", - size: <16,16> -} -export Sprite moveIcons { - image: :"move-icons.png", +Sprite handCursor { + image: :"cursor-hand.png", size: <32,32> } -export Frame titleFrame { - image: :"title-frame.png", - border: <16,16> -} - -export Font largeFont { - sprite: Sprite { - image: :"large-font.png", - size: <16,32> - }, - rowoffset: -2 -} - -export ComplexAnimation numberAnimationPrototype { - frametime: frameTime, - repeat: false, - frames: [ - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0,-26> }, - { column: 0, row: 0, disposition: < 0,-42> }, - { column: 0, row: 0, disposition: < 0,-48> }, - { column: 0, row: 0, disposition: < 0,-42> }, - { column: 0, row: 0, disposition: < 0,-26> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0,-12> }, - { column: 0, row: 0, disposition: < 0,-20> }, - { column: 0, row: 0, disposition: < 0,-24> }, - { column: 0, row: 0, disposition: < 0,-20> }, - { column: 0, row: 0, disposition: < 0,-12> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, -6> }, - { column: 0, row: 0, disposition: < 0,-10> }, - { column: 0, row: 0, disposition: < 0,-12> }, - { column: 0, row: 0, disposition: < 0,-10> }, - { column: 0, row: 0, disposition: < 0, -6> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0, 0> }, - { column: 0, row: 0, disposition: < 0,-36> }, - { column: 0, row: 0, disposition: < 0,-32> }, - { column: 0, row: 0, disposition: < 0,-18> } - ] -} -export Sprite bigNumbers { - image: :"big-numbers.png", - size: <16,32> -} -export Sprite bigGreenNumbers { - image: :"big-green-numbers.png", - size: <16,32> -} - -export Sprite heroTagLabels { - image: :"hero-tag-sprites.png", - size: <32,16> -} -export Font heroTagFont { - sprite: Sprite { - image: :"numbers.png", - size: <16,16> - }, - rowoffset: -3 -} - -export Frame activeHeroTagFrame { - image: :"tag-frames.png", - border: <16,16> -} -export Frame heroTagFrame { - image: :"tag-frames.png", - border: <16,16>, - offset: < 0,33> -} - -export Frame smallHeroTagFrame { - image: :"small-tag-frame.png", - border: <8,16> -} -export Frame lastSmallHeroTagFrame { - image: :"small-tag-frame.png", - border: <8,16>, - offset: <0,33> -} -export Color heroesBgColor (24, 40, 49) - -export Gauge healthGauge { - image: :"gauges.png", - full: <0,16>, - empty: <0, 0>, - height: 16, - start: 6, - repeat: 1, - end: 6 -} -export Gauge manaGauge { - image: :"gauges.png", - full: <0,32>, - empty: <0, 0>, - height: 16, - start: 6, - repeat: 1, - end: 6 -} -export Gauge ikariGauge { - image: :"gauges.png", - full: <0,48>, - empty: <0, 0>, - height: 16, - start: 6, - repeat: 1, - end: 6 -} - -export Frame selectFrame { - image: :"select-frame.png", - border: <16,16> -} -export Font normalFont { +Font normalFont { sprite: Sprite { image: :"normal-font.png", size: <16,16> }, rowoffset: -2 } -export Font disabledFont { + +Font disabledFont { sprite: Sprite { image: :"disabled-font.png", size: <16,16> }, rowoffset: -2 } -export Sprite handCursor { - image: :"cursor-hand.png", - size: <32,32> -} -export Sprite weaponTargetCursor { - image: :"targeting-icons.png", - size: <32,32> -} -export Sprite magicTargetCursor { - image: :"targeting-icons.png", - size: <32,32>, - offset: <0,32> -} -export Sprite itemTargetCursor { - image: :"targeting-icons.png", - size: <32,32>, - offset: <0,64> -} - -export String spellMenuHeadline "Please choose a spell." -export MenuProperties spellMenuPrototype { - font: normalFont, - disabledFont: disabledFont, - cursor: handCursor, - charsPerEntry: 9, - rows: 6, - rowGap: 8, - iconSpace: 0, - cols: 2, - colGap: 32, - charsPerNumber: 2, - delimiter: ":" -} - -export String itemMenuHeadline "Please choose an item." -export MenuProperties itemMenuPrototype { - font: normalFont, - disabledFont: disabledFont, - cursor: handCursor, - charsPerEntry: 15, - rows: 6, - rowGap: 8, - iconSpace: 16, - cols: 1, - colGap: 32, - charsPerNumber: 2, - delimiter: ":" -} - -export String ikariMenuHeadline "Please choose equipment." -export MenuProperties ikariMenuPrototype { - font: normalFont, +export BattleResources battleResources { + swapCursor: Sprite { + image: :"swap-cursor.png", + size: <32,32> + }, + attackIcons: Sprite { + image: :"attack-type-icons.png", + size: <32,32> + }, + attackChoiceIcons: Sprite { + image: :"attack-choice-icons.png", + size: <16,16> + }, + moveIcons: Sprite { + image: :"move-icons.png", + size: <32,32> + }, + + titleFrame: Frame { + image: :"title-frame.png", + border: <16,16> + }, + titleFont: Font { + sprite: Sprite { + image: :"large-font.png", + size: <16,32> + }, + rowoffset: -2 + }, + + numberAnimationPrototype: ComplexAnimation { + frametime: frameTime, + repeat: false, + frames: + [ ComplexAnimationFrame + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0,-26> }, + { column: 0, row: 0, disposition: < 0,-42> }, + { column: 0, row: 0, disposition: < 0,-48> }, + { column: 0, row: 0, disposition: < 0,-42> }, + { column: 0, row: 0, disposition: < 0,-26> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0,-12> }, + { column: 0, row: 0, disposition: < 0,-20> }, + { column: 0, row: 0, disposition: < 0,-24> }, + { column: 0, row: 0, disposition: < 0,-20> }, + { column: 0, row: 0, disposition: < 0,-12> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, -6> }, + { column: 0, row: 0, disposition: < 0,-10> }, + { column: 0, row: 0, disposition: < 0,-12> }, + { column: 0, row: 0, disposition: < 0,-10> }, + { column: 0, row: 0, disposition: < 0, -6> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0, 0> }, + { column: 0, row: 0, disposition: < 0,-36> }, + { column: 0, row: 0, disposition: < 0,-32> }, + { column: 0, row: 0, disposition: < 0,-18> } + ] + }, + bigNumberSprite: Sprite { + image: :"big-numbers.png", + size: <16,32> + }, + greenNumberSprite: Sprite { + image: :"big-green-numbers.png", + size: <16,32> + }, + + heroTagLabels: Sprite { + image: :"hero-tag-sprites.png", + size: <32,16> + }, + levelLabelCol: 0, + levelLabelRow: 0, + healthLabelCol: 0, + healthLabelRow: 1, + manaLabelCol: 0, + manaLabelRow: 2, + moveLabelCol: 0, + moveLabelRow: 3, + ikariLabelCol: 0, + ikariLabelRow: 4, + heroTagFont: Font { + sprite: Sprite { + image: :"numbers.png", + size: <16,16> + }, + rowoffset: -3 + }, + + activeHeroTagFrame: Frame { + image: :"tag-frames.png", + border: <16,16> + }, + heroTagFrame: Frame { + image: :"tag-frames.png", + border: <16,16>, + offset: < 0,33> + }, + + smallHeroTagFrame: Frame { + image: :"small-tag-frame.png", + border: <8,16> + }, + lastSmallHeroTagFrame: Frame { + image: :"small-tag-frame.png", + border: <8,16>, + offset: <0,33> + }, + heroesBgColor: (24, 40, 49), + + healthGauge: Gauge { + image: :"gauges.png", + full: <0,16>, + empty: <0, 0>, + height: 16, + start: 6, + repeat: 1, + end: 6 + }, + manaGauge: Gauge { + image: :"gauges.png", + full: <0,32>, + empty: <0, 0>, + height: 16, + start: 6, + repeat: 1, + end: 6 + }, + ikariGauge: Gauge { + image: :"gauges.png", + full: <0,48>, + empty: <0, 0>, + height: 16, + start: 6, + repeat: 1, + end: 6 + }, + + selectFrame: Frame { + image: :"select-frame.png", + border: <16,16> + }, + normalFont: normalFont, disabledFont: disabledFont, - cursor: handCursor, - charsPerEntry: 12, - rows: 6, - rowGap: 8, - iconSpace: 16, - cols: 1, - colGap: 32, - charsPerAdditionalText: 12, - additionalTextGap: 16 -} -export String noEquipmentText "No equip" - -export String escapeText "Escapes." + menuCursor: Sprite { + image: :"cursor-hand.png", + size: <32,32> + }, + + weaponTargetCursor: Sprite { + image: :"targeting-icons.png", + size: <32,32> + }, + magicTargetCursor: Sprite { + image: :"targeting-icons.png", + size: <32,32>, + offset: <0,32> + }, + itemTargetCursor: Sprite { + image: :"targeting-icons.png", + size: <32,32>, + offset: <0,64> + }, + + weaponMenuIcon: swordIcon, + armorMenuIcon: armorIcon, + shieldMenuIcon: shieldIcon, + helmetMenuIcon: helmetIcon, + ringMenuIcon: ringIcon, + jewelMenuIcon: jewelIcon, + + spellMenuHeadline: "Please choose a spell.", + spellMenuProperties: MenuProperties { + font: normalFont, + disabledFont: disabledFont, + cursor: handCursor, + charsPerEntry: 9, + rows: 6, + rowGap: 8, + iconSpace: 0, + cols: 2, + colGap: 32, + charsPerNumber: 2, + delimiter: ":" + }, + + itemMenuHeadline: "Please choose an item.", + itemMenuProperties: MenuProperties { + font: normalFont, + disabledFont: disabledFont, + cursor: handCursor, + charsPerEntry: 15, + rows: 6, + rowGap: 8, + iconSpace: 16, + cols: 1, + colGap: 32, + charsPerNumber: 2, + delimiter: ":" + }, + + ikariMenuHeadline: "Please choose equipment.", + ikariMenuProperties: MenuProperties { + font: normalFont, + disabledFont: disabledFont, + cursor: handCursor, + charsPerEntry: 12, + rows: 6, + rowGap: 8, + iconSpace: 16, + cols: 1, + colGap: 32, + charsPerAdditionalText: 12, + additionalTextGap: 16 + }, + noEquipmentText: "No equip", + + escapeText: "Escapes." +} \ No newline at end of file