6 Number twoFramesTime 66
7 Number fourFramesTime 132
8 Number fiveFramesTime 165 // darn, i really need to implement expressions
10 export PartyLayout monstersLayout {
18 export PartyLayout heroesLayout {
28 image: :"monster.png",
32 export Monster lizard {
47 attackAnimation: ComplexAnimation {
49 frametime: fourFramesTime,
52 { column: 0, row: 1, disposition: < 0, 16> },
53 { column: 0, row: 0, disposition: < 0, 16> },
54 { column: 0, row: 1, disposition: < 0, 16> },
55 { column: 0, row: 0, disposition: < 0, 16> }
58 meleeAnimation: SimpleAnimation {
60 image: :"attack-monster.png",
90 attackAnimation: ComplexAnimation {
95 { column: 1, row: 0, disposition: < 0, 0> },
96 { column: 1, row: 0, disposition: < 0, 0> },
97 { column: 1, row: 0, disposition: < 0, 0> },
98 { column: 1, row: 0, disposition: < 0, 0> },
99 { column: 1, row: 0, disposition: < 0, 0> },
100 { column: 1, row: 0, disposition: < 0, 0> },
101 { column: 1, row: 0, disposition: < 0, 0> },
102 { column: 1, row: 0, disposition: < 4,-1> },
103 { column: 1, row: 0, disposition: < 4,-1> },
104 { column: 2, row: 0, disposition: < 4,-2> },
105 { column: 2, row: 0, disposition: < 4,-2> },
106 { column: 2, row: 0, disposition: < 6,-2> },
107 { column: 2, row: 0, disposition: < 6,-2> },
108 { column: 2, row: 1, disposition: < 6,-1> },
109 { column: 2, row: 1, disposition: < 3,-1> },
110 { column: 2, row: 1, disposition: < 3,-1> },
111 { column: 2, row: 1, disposition: < 0, 0> },
112 { column: 2, row: 2, disposition: < 0, 0> },
113 { column: 2, row: 2, disposition: < 0, 0> },
114 { column: 2, row: 2, disposition: < 2, 0> },
115 { column: 1, row: 0, disposition: < 0, 0> },
116 { column: 1, row: 0, disposition: < 0, 0> },
117 { column: 1, row: 0, disposition: < 0, 0> },
118 { column: 1, row: 0, disposition: < 0, 0> },
119 { column: 1, row: 0, disposition: < 0, 0> },
120 { column: 1, row: 0, disposition: < 0, 0> },
121 { column: 1, row: 0, disposition: < 0, 0> }
124 spellAnimation: ComplexAnimation {
126 frametime: fiveFramesTime,
129 { column: 3, row: 0, disposition: < 0, 0> },
130 { column: 3, row: 0, disposition: < 0, 0> },
131 { column: 3, row: 1, disposition: < 0, 0> }
134 meleeAnimation: SimpleAnimation {
136 image: :"melee-maxim.png",
139 frametime: twoFramesTime,
166 attackAnimation: ComplexAnimation {
168 frametime: frameTime,
171 { column: 1, row: 0, disposition: < 4, 0> },
172 { column: 1, row: 0, disposition: < 4, 0> },
173 { column: 1, row: 0, disposition: < 8, 2> },
174 { column: 2, row: 0, disposition: <10, 4> },
175 { column: 2, row: 0, disposition: <14, 4> },
176 { column: 2, row: 0, disposition: <12, 2> },
177 { column: 2, row: 0, disposition: <12, 2> },
178 { column: 2, row: 0, disposition: <12, 2> },
179 { column: 2, row: 1, disposition: <14, 2> },
180 { column: 2, row: 1, disposition: <14, 2> },
181 { column: 2, row: 1, disposition: < 2, 0> },
182 { column: 2, row: 2, disposition: <-2,-4> },
183 { column: 2, row: 2, disposition: <-8,-8> },
184 { column: 2, row: 2, disposition: < 0, 0> }
187 spellAnimation: ComplexAnimation {
189 frametime: frameTime,
192 { column: 3, row: 0, disposition: < 0, 0> },
193 { column: 3, row: 0, disposition: < 0, 0> },
194 { column: 3, row: 0, disposition: < 0, 0> },
195 { column: 3, row: 1, disposition: < 0, 0> },
196 { column: 3, row: 1, disposition: < 0, 0> },
197 { column: 3, row: 2, disposition: < 0, 0> },
198 { column: 3, row: 2, disposition: < 0, 0> },
199 { column: 3, row: 2, disposition: < 0, 0> },
200 { column: 3, row: 3, disposition: < 0, 0> },
201 { column: 3, row: 3, disposition: < 0, 0> }
204 meleeAnimation: SimpleAnimation {
206 image: :"melee-selan.png",
209 frametime: twoFramesTime,
236 attackAnimation: ComplexAnimation {
238 frametime: frameTime,
241 { column: 1, row: 0, disposition: <-4, 0> },
242 { column: 1, row: 0, disposition: <-4, 0> },
243 { column: 1, row: 0, disposition: <-8, 0> },
244 { column: 1, row: 0, disposition: <-8, 0> },
245 { column: 2, row: 0, disposition: <-8, 0> },
246 { column: 2, row: 0, disposition: <-8, 0> },
247 { column: 2, row: 0, disposition: <-4, 0> },
248 { column: 2, row: 0, disposition: < 0, 0> },
249 { column: 2, row: 0, disposition: < 0, 0> },
250 { column: 2, row: 1, disposition: < 0, 0> },
251 { column: 2, row: 1, disposition: < 4, 0> },
252 { column: 2, row: 1, disposition: <10, 0> },
253 { column: 2, row: 2, disposition: <10, 0> },
254 { column: 2, row: 2, disposition: < 0, 0> }
257 meleeAnimation: SimpleAnimation {
259 image: :"melee-guy.png",
262 frametime: fourFramesTime,
289 attackAnimation: ComplexAnimation {
291 frametime: frameTime,
294 { column: 1, row: 0, disposition: < 4, 0> },
295 { column: 1, row: 0, disposition: < 8, 2> },
296 { column: 2, row: 0, disposition: <12, 4> },
297 { column: 2, row: 0, disposition: <16, 4> },
298 { column: 2, row: 0, disposition: <10, 2> },
299 { column: 2, row: 0, disposition: <10, 2> },
300 { column: 2, row: 0, disposition: <10, 2> },
301 { column: 2, row: 0, disposition: <10, 2> },
302 { column: 2, row: 1, disposition: < 6, 2> },
303 { column: 2, row: 1, disposition: < 0, 0> },
304 { column: 2, row: 2, disposition: <-2, 0> },
305 { column: 2, row: 2, disposition: < 0, 0> },
306 { column: 2, row: 2, disposition: < 0, 0> },
307 { column: 2, row: 2, disposition: < 0, 0> }
310 spellAnimation: ComplexAnimation {
312 frametime: twoFramesTime,
315 { column: 3, row: 0, disposition: < 0, 0> },
316 { column: 3, row: 0, disposition: < 0, 0> },
317 { column: 3, row: 0, disposition: < 0, 0> },
318 { column: 3, row: 0, disposition: < 0, 0> },
319 { column: 3, row: 0, disposition: < 0, 0> },
320 { column: 3, row: 0, disposition: < 0, 0> },
321 { column: 3, row: 1, disposition: < 0, 0> },
322 { column: 3, row: 1, disposition: < 0, 0> },
323 { column: 3, row: 2, disposition: < 0, 0> },
324 { column: 3, row: 2, disposition: < 0, 0> },
325 { column: 3, row: 2, disposition: < 0, 0> }
328 meleeAnimation: SimpleAnimation {
330 image: :"melee-dekar.png",
333 frametime: twoFramesTime,
339 image: :"cursor-hand.png",
345 image: :"normal-font.png",
353 image: :"disabled-font.png",
359 export BattleResources battleResources {
361 image: :"swap-cursor.png",
364 attackIcons: Sprite {
365 image: :"attack-type-icons.png",
368 attackChoiceIcons: Sprite {
369 image: :"attack-choice-icons.png",
373 image: :"move-icons.png",
378 image: :"title-frame.png",
383 image: :"large-font.png",
389 numberAnimationPrototype: ComplexAnimation {
390 frametime: frameTime,
393 { column: 0, row: 0, disposition: < 0, 0> },
394 { column: 0, row: 0, disposition: < 0,-26> },
395 { column: 0, row: 0, disposition: < 0,-42> },
396 { column: 0, row: 0, disposition: < 0,-48> },
397 { column: 0, row: 0, disposition: < 0,-42> },
398 { column: 0, row: 0, disposition: < 0,-26> },
399 { column: 0, row: 0, disposition: < 0, 0> },
400 { column: 0, row: 0, disposition: < 0,-12> },
401 { column: 0, row: 0, disposition: < 0,-20> },
402 { column: 0, row: 0, disposition: < 0,-24> },
403 { column: 0, row: 0, disposition: < 0,-20> },
404 { column: 0, row: 0, disposition: < 0,-12> },
405 { column: 0, row: 0, disposition: < 0, 0> },
406 { column: 0, row: 0, disposition: < 0, -6> },
407 { column: 0, row: 0, disposition: < 0,-10> },
408 { column: 0, row: 0, disposition: < 0,-12> },
409 { column: 0, row: 0, disposition: < 0,-10> },
410 { column: 0, row: 0, disposition: < 0, -6> },
411 { column: 0, row: 0, disposition: < 0, 0> },
412 { column: 0, row: 0, disposition: < 0, 0> },
413 { column: 0, row: 0, disposition: < 0, 0> },
414 { column: 0, row: 0, disposition: < 0, 0> },
415 { column: 0, row: 0, disposition: < 0, 0> },
416 { column: 0, row: 0, disposition: < 0, 0> },
417 { column: 0, row: 0, disposition: < 0, 0> },
418 { column: 0, row: 0, disposition: < 0, 0> },
419 { column: 0, row: 0, disposition: < 0, 0> },
420 { column: 0, row: 0, disposition: < 0, 0> },
421 { column: 0, row: 0, disposition: < 0, 0> },
422 { column: 0, row: 0, disposition: < 0, 0> },
423 { column: 0, row: 0, disposition: < 0, 0> },
424 { column: 0, row: 0, disposition: < 0, 0> },
425 { column: 0, row: 0, disposition: < 0,-36> },
426 { column: 0, row: 0, disposition: < 0,-32> },
427 { column: 0, row: 0, disposition: < 0,-18> }
430 bigNumberSprite: Sprite {
431 image: :"big-numbers.png",
434 greenNumberSprite: Sprite {
435 image: :"big-green-numbers.png",
439 heroTagLabels: Sprite {
440 image: :"hero-tag-sprites.png",
455 image: :"numbers.png",
461 activeHeroTagFrame: Frame {
462 image: :"tag-frames.png",
465 heroTagFrame: Frame {
466 image: :"tag-frames.png",
471 smallHeroTagFrame: Frame {
472 image: :"small-tag-frame.png",
475 lastSmallHeroTagFrame: Frame {
476 image: :"small-tag-frame.png",
480 heroesBgColor: (24, 40, 49),
483 image: :"gauges.png",
492 image: :"gauges.png",
501 image: :"gauges.png",
511 image: :"select-frame.png",
514 normalFont: normalFont,
515 disabledFont: disabledFont,
517 image: :"cursor-hand.png",
521 weaponTargetCursor: Sprite {
522 image: :"targeting-icons.png",
525 magicTargetCursor: Sprite {
526 image: :"targeting-icons.png",
530 itemTargetCursor: Sprite {
531 image: :"targeting-icons.png",
536 weaponMenuIcon: swordIcon,
537 armorMenuIcon: armorIcon,
538 shieldMenuIcon: shieldIcon,
539 helmetMenuIcon: helmetIcon,
540 ringMenuIcon: ringIcon,
541 jewelMenuIcon: jewelIcon,
543 spellMenuHeadline: "Please choose a spell.",
544 spellMenuProperties: MenuProperties {
546 disabledFont: disabledFont,
558 itemMenuHeadline: "Please choose an item.",
559 itemMenuProperties: MenuProperties {
561 disabledFont: disabledFont,
573 ikariMenuHeadline: "Please choose equipment.",
574 ikariMenuProperties: MenuProperties {
576 disabledFont: disabledFont,
584 charsPerAdditionalText: 12,
585 additionalTextGap: 16
587 noEquipmentText: "No equip",
589 escapeText: "Escapes."