]> git.localhorst.tv Git - l2e.git/blob - test-data/test.l2s
moved Selan to test.l2s
[l2e.git] / test-data / test.l2s
1 Number frameTime 33
2 Number twoFramesTime 66
3 Number fourFramesTime 132
4 Number fiveFramesTime 165 // darn, i really need to implement expressions
5
6 Sprite lizardSprite {
7         // using pathes relative to project root until path resolution is implemented
8         image: "test-data/monster.png",
9         size: <64,64>
10 }
11
12 export Monster lizard {
13         name: "Lizard",
14         sprite: lizardSprite,
15         level: 1,
16         maxHealth: 8,
17         health: 8,
18         stats: Stats {
19                 atp: 14,
20                 dfp:  6,
21                 str:  6,
22                 agl:  6,
23                 int:  6,
24                 gut:  6,
25                 mgr:  6
26         },
27         attackAnimation: ComplexAnimation {
28                 sprite: lizardSprite,
29                 frametime: fourFramesTime,
30                 repeat: false,
31                 frames: [
32                         { column: 0, row: 1, disposition: < 0, 16> },
33                         { column: 0, row: 0, disposition: < 0, 16> },
34                         { column: 0, row: 1, disposition: < 0, 16> },
35                         { column: 0, row: 0, disposition: < 0, 16> }
36                 ]
37         },
38         meleeAnimation: SimpleAnimation {
39                 sprite: Sprite {
40                         image: "test-data/attack-monster.png",
41                         size: <96,64>
42                 },
43                 frametime: frameTime,
44                 framecount: 14
45         }
46 }
47
48 Sprite maximSprite {
49         image: "test-data/maxim.png",
50         size: <64,64>
51 }
52 export Hero maxim {
53         name: "Maxim",
54         level: 1,
55         sprite: maximSprite,
56         maxHealth: 33,
57         health: 33,
58         maxMana: 20,
59         mana: 20,
60         ip: 0,
61         stats: Stats {
62                 atp:  28,
63                 dfp:  22,
64                 str:  28,
65                 agl:  17,
66                 int:  14,
67                 gut: 100,
68                 mgr:  10
69         },
70         attackAnimation: ComplexAnimation {
71                 sprite: maximSprite,
72                 frametime: frameTime,
73                 repeat: false,
74                 frames: [
75                         { column: 1, row: 0, disposition: < 0, 0> },
76                         { column: 1, row: 0, disposition: < 0, 0> },
77                         { column: 1, row: 0, disposition: < 0, 0> },
78                         { column: 1, row: 0, disposition: < 0, 0> },
79                         { column: 1, row: 0, disposition: < 0, 0> },
80                         { column: 1, row: 0, disposition: < 0, 0> },
81                         { column: 1, row: 0, disposition: < 0, 0> },
82                         { column: 1, row: 0, disposition: < 4,-1> },
83                         { column: 1, row: 0, disposition: < 4,-1> },
84                         { column: 2, row: 0, disposition: < 4,-2> },
85                         { column: 2, row: 0, disposition: < 4,-2> },
86                         { column: 2, row: 0, disposition: < 6,-2> },
87                         { column: 2, row: 0, disposition: < 6,-2> },
88                         { column: 2, row: 1, disposition: < 6,-1> },
89                         { column: 2, row: 1, disposition: < 3,-1> },
90                         { column: 2, row: 1, disposition: < 3,-1> },
91                         { column: 2, row: 1, disposition: < 0, 0> },
92                         { column: 2, row: 2, disposition: < 0, 0> },
93                         { column: 2, row: 2, disposition: < 0, 0> },
94                         { column: 2, row: 2, disposition: < 2, 0> },
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                 ]
103         },
104         spellAnimation: ComplexAnimation {
105                 sprite: maximSprite,
106                 frametime: fiveFramesTime,
107                 repeat: false,
108                 frames: [
109                         { column: 3, row: 0, disposition: < 0, 0> },
110                         { column: 3, row: 0, disposition: < 0, 0> },
111                         { column: 3, row: 1, disposition: < 0, 0> }
112                 ]
113         },
114         meleeAnimation: SimpleAnimation {
115                 sprite: Sprite {
116                         image: "test-data/melee-maxim.png",
117                         size: <96,96>
118                 },
119                 frametime: twoFramesTime,
120                 framecount: 4
121         }
122 }
123
124 Sprite selanSprite {
125         image: "test-data/selan.png",
126         size: <64,64>
127 }
128 export Hero selan {
129         name: "Selan",
130         level: 1,
131         sprite: selanSprite,
132         maxHealth: 28,
133         health: 28,
134         maxMana: 23,
135         mana: 23,
136         ip: 0,
137         stats: Stats {
138                 atp: 23,
139                 dfp: 21,
140                 str: 23,
141                 agl: 19,
142                 int: 22,
143                 gut: 80,
144                 mgr: 13
145         },
146         attackAnimation: ComplexAnimation {
147                 sprite: selanSprite,
148                 frametime: frameTime,
149                 repeat: false,
150                 frames: [
151                         { column: 1, row: 0, disposition: < 4, 0> },
152                         { column: 1, row: 0, disposition: < 4, 0> },
153                         { column: 1, row: 0, disposition: < 8, 2> },
154                         { column: 2, row: 0, disposition: <10, 4> },
155                         { column: 2, row: 0, disposition: <14, 4> },
156                         { column: 2, row: 0, disposition: <12, 2> },
157                         { column: 2, row: 0, disposition: <12, 2> },
158                         { column: 2, row: 0, disposition: <12, 2> },
159                         { column: 2, row: 1, disposition: <14, 2> },
160                         { column: 2, row: 1, disposition: <14, 2> },
161                         { column: 2, row: 1, disposition: < 2, 0> },
162                         { column: 2, row: 2, disposition: <-2,-4> },
163                         { column: 2, row: 2, disposition: <-8,-8> },
164                         { column: 2, row: 2, disposition: < 0, 0> }
165                 ]
166         },
167         spellAnimation: ComplexAnimation {
168                 sprite: selanSprite,
169                 frametime: frameTime,
170                 repeat: false,
171                 frames: [
172                         { column: 3, row: 0, disposition: < 0, 0> },
173                         { column: 3, row: 0, disposition: < 0, 0> },
174                         { column: 3, row: 0, disposition: < 0, 0> },
175                         { column: 3, row: 1, disposition: < 0, 0> },
176                         { column: 3, row: 1, disposition: < 0, 0> },
177                         { column: 3, row: 2, disposition: < 0, 0> },
178                         { column: 3, row: 2, disposition: < 0, 0> },
179                         { column: 3, row: 2, disposition: < 0, 0> },
180                         { column: 3, row: 3, disposition: < 0, 0> },
181                         { column: 3, row: 3, disposition: < 0, 0> }
182                 ]
183         },
184         meleeAnimation: SimpleAnimation {
185                 sprite: Sprite {
186                         image: "test-data/melee-selan.png",
187                         size: <96,96>
188                 },
189                 frametime: twoFramesTime,
190                 framecount: 4
191         }
192 }