- Made miniswig support HSQUIRRELVM arguments (and realized it was not needed
[supertux.git] / data / levels / test / script.stl
1 ;; Generated by Flexlay Editor
2 (supertux-level
3   (version 2)
4   (name   (_ "Scripting Test"))
5   (author "totally pointless script maker")
6   (sector
7     (name  "main")
8     (music  "salcon.mod")
9     (gravity 10.000000)
10     (tilemap
11       (layer  "background")
12       (solid #f)
13       (speed  1.000000)
14       (width  25)
15       (height 20)
16       (tiles
17         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
18         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
19         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
20         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
21         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
22         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
23         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
24         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
25         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
26         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
27         0 0 0 0 0 0 0 0 0 0 0 0 124 210 210 125 0 0 0 0 0 0 0 0 0 
28         0 0 0 0 0 0 0 0 0 0 0 0 124 210 210 125 0 0 0 0 0 0 0 0 0 
29         0 0 0 0 0 0 0 0 0 0 0 0 124 210 210 125 0 0 0 0 0 0 0 0 0 
30         0 0 124 125 0 0 0 0 0 0 0 0 124 210 210 125 0 0 0 0 0 0 0 0 0 
31         0 0 124 125 0 0 0 0 0 0 0 0 124 210 210 125 0 0 124 125 0 0 0 0 0 
32         0 0 124 125 0 0 25 0 0 0 24 0 124 210 210 125 0 0 124 125 0 0 24 0 0 
33         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
34         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
35         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
36         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
37         ))
38     (tilemap
39       (layer  "interactive")
40       (solid #t)
41       (speed  1.000000)
42       (width  25)
43       (height 20)
44       (tiles
45         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
46         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
47         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
48         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
49         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
50         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
51         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
52         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
53         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
54         0 0 0 0 0 0 0 0 0 0 0 0 122 209 209 123 0 0 0 0 0 0 0 0 0 
55         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
56         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
57         0 0 122 123 0 0 0 0 0 0 0 0 0 0 402 403 404 405 0 0 0 0 0 0 0 
58         0 0 0 0 0 0 0 0 0 0 0 0 0 0 406 407 408 409 122 123 0 0 0 0 0 
59         0 403 404 0 0 0 0 0 0 0 0 0 0 0 410 451 412 413 0 0 0 0 0 0 0 
60         8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 
61         14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 
62         11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 
63         11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 
64         11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 
65         ))
66     (tilemap
67       (layer  "foreground")
68       (solid #f)
69       (speed  1.000000)
70       (width  25)
71       (height 20)
72       (tiles
73         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
74         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
75         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
76         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
77         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
78         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
79         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
80         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
81         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
82         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
83         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
84         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
85         0 0 0 0 0 0 0 0 0 0 0 0 0 0 402 403 404 405 0 0 0 0 0 0 0 
86         0 0 0 0 0 0 0 0 0 0 0 0 0 0 406 407 408 409 0 0 0 0 0 0 0 
87         0 403 404 0 0 0 0 0 0 0 0 0 0 0 410 411 412 413 0 0 0 0 0 0 0 
88         0 407 408 0 0 0 0 0 0 0 0 0 0 0 414 423 416 425 0 0 0 0 0 0 0 
89         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
90         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
91         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
92         0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
93         ))
94     (camera
95       (mode "normal")
96     )
97
98        (background
99          (image "semi_arctic.jpg")
100          (speed 0.500000)
101        )
102        (spawnpoint (name "main") (x 320) (y 384))
103        (particles-snow
104        )
105        (scriptedobject
106          (name "TUX")
107          (x 160)
108          (y 448)
109          (sprite "dummyguy")
110        )
111        (scriptedobject
112          (name "PENNY")
113          (x 390)
114          (y 448)
115          (sprite "dummyguy")
116        )
117        (scriptedobject
118          (name "NOLOK")
119          (x 420)
120          (y 94)
121          (sprite "dummyguy")
122          (visible #f)
123          (physic-enabled #f)
124          (solid #f)
125        )
126        (init-script "
127 function wait(time) {
128     set_wakeup_time(time);
129     suspend();
130 }
131
132 Text.set_text(translate(\"The Crazy Nolok Dance\"));
133 Text.fade_in(2);
134 TUX.set_animation(\"jump\");
135 wait(4);
136 Text.fade_out(1);
137 wait(1);
138 NOLOK.set_visible(true);
139 PENNY.set_velocity(-200, 200);
140 tuxjumps <- 2;
141 while(true) {
142   wait(0.8);
143   Sound.play_sound(\"jump\");
144   if(tuxjumps >= 0) {
145     TUX.set_velocity(50, 300);
146   } else {
147     TUX.set_velocity(-50, 300);
148     if(tuxjumps < -2)
149       tuxjumps = 3;
150   }
151   tuxjumps--;
152   wait(0.5);
153   if(PENNY.get_animation() == \"stand\") {
154     PENNY.set_animation(\"throw\");
155   } else if(PENNY.get_animation() == \"throw\") {
156     PENNY.set_animation(\"jump\");
157   } else if(PENNY.get_animation() == \"jump\") {
158     PENNY.set_animation(\"dead\");
159   } else {
160     Sound.play_sound(\"grow\");
161     PENNY.set_animation(\"stand\");
162     PENNY.set_velocity(0, 900);
163   }
164 }
165 ")
166    )
167 )
168