diff options
-rw-r--r-- | res/maps/underwater.tsx | 1179 | ||||
-rw-r--r-- | res/maps/underwater_start.tmx | 136 | ||||
-rw-r--r-- | res/maps/underwater_tiles.png | bin | 0 -> 41392 bytes | |||
-rw-r--r-- | res/scripts/common.lua | 21 | ||||
-rw-r--r-- | res/scripts/hallucination_hot_spring.lua | 26 | ||||
-rw-r--r-- | res/scripts/underwater.lua | 21 | ||||
-rw-r--r-- | res/scripts/underwater_start.lua | 8 | ||||
-rw-r--r-- | src/character_system.cpp | 3 | ||||
-rw-r--r-- | src/script_system.cpp | 4 |
9 files changed, 1377 insertions, 21 deletions
diff --git a/res/maps/underwater.tsx b/res/maps/underwater.tsx new file mode 100644 index 0000000..92bb02a --- /dev/null +++ b/res/maps/underwater.tsx | |||
@@ -0,0 +1,1179 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <tileset version="1.4" tiledversion="1.4.3" name="underwater" tilewidth="16" tileheight="16" tilecount="350" columns="10"> | ||
3 | <image source="underwater_tiles.png" width="160" height="560"/> | ||
4 | <tile id="2"> | ||
5 | <properties> | ||
6 | <property name="solid" type="bool" value="true"/> | ||
7 | </properties> | ||
8 | </tile> | ||
9 | <tile id="3"> | ||
10 | <properties> | ||
11 | <property name="solid" type="bool" value="true"/> | ||
12 | </properties> | ||
13 | </tile> | ||
14 | <tile id="4"> | ||
15 | <properties> | ||
16 | <property name="solid" type="bool" value="true"/> | ||
17 | </properties> | ||
18 | </tile> | ||
19 | <tile id="5"> | ||
20 | <properties> | ||
21 | <property name="solid" type="bool" value="true"/> | ||
22 | </properties> | ||
23 | </tile> | ||
24 | <tile id="6"> | ||
25 | <properties> | ||
26 | <property name="solid" type="bool" value="true"/> | ||
27 | </properties> | ||
28 | </tile> | ||
29 | <tile id="8"> | ||
30 | <properties> | ||
31 | <property name="solid" type="bool" value="true"/> | ||
32 | </properties> | ||
33 | </tile> | ||
34 | <tile id="9"> | ||
35 | <properties> | ||
36 | <property name="solid" type="bool" value="true"/> | ||
37 | </properties> | ||
38 | </tile> | ||
39 | <tile id="11"> | ||
40 | <properties> | ||
41 | <property name="solid" type="bool" value="true"/> | ||
42 | </properties> | ||
43 | </tile> | ||
44 | <tile id="13"> | ||
45 | <properties> | ||
46 | <property name="solid" type="bool" value="true"/> | ||
47 | </properties> | ||
48 | </tile> | ||
49 | <tile id="14"> | ||
50 | <properties> | ||
51 | <property name="solid" type="bool" value="true"/> | ||
52 | </properties> | ||
53 | </tile> | ||
54 | <tile id="15"> | ||
55 | <properties> | ||
56 | <property name="solid" type="bool" value="true"/> | ||
57 | </properties> | ||
58 | </tile> | ||
59 | <tile id="16"> | ||
60 | <properties> | ||
61 | <property name="solid" type="bool" value="true"/> | ||
62 | </properties> | ||
63 | </tile> | ||
64 | <tile id="17"> | ||
65 | <properties> | ||
66 | <property name="solid" type="bool" value="true"/> | ||
67 | </properties> | ||
68 | </tile> | ||
69 | <tile id="18"> | ||
70 | <properties> | ||
71 | <property name="solid" type="bool" value="true"/> | ||
72 | </properties> | ||
73 | </tile> | ||
74 | <tile id="20"> | ||
75 | <properties> | ||
76 | <property name="solid" type="bool" value="true"/> | ||
77 | </properties> | ||
78 | </tile> | ||
79 | <tile id="21"> | ||
80 | <properties> | ||
81 | <property name="solid" type="bool" value="true"/> | ||
82 | </properties> | ||
83 | </tile> | ||
84 | <tile id="23"> | ||
85 | <properties> | ||
86 | <property name="solid" type="bool" value="true"/> | ||
87 | </properties> | ||
88 | </tile> | ||
89 | <tile id="24"> | ||
90 | <properties> | ||
91 | <property name="solid" type="bool" value="true"/> | ||
92 | </properties> | ||
93 | </tile> | ||
94 | <tile id="27"> | ||
95 | <properties> | ||
96 | <property name="solid" type="bool" value="true"/> | ||
97 | </properties> | ||
98 | </tile> | ||
99 | <tile id="28"> | ||
100 | <properties> | ||
101 | <property name="solid" type="bool" value="true"/> | ||
102 | </properties> | ||
103 | </tile> | ||
104 | <tile id="29"> | ||
105 | <properties> | ||
106 | <property name="solid" type="bool" value="true"/> | ||
107 | </properties> | ||
108 | </tile> | ||
109 | <tile id="31"> | ||
110 | <properties> | ||
111 | <property name="solid" type="bool" value="true"/> | ||
112 | </properties> | ||
113 | </tile> | ||
114 | <tile id="32"> | ||
115 | <properties> | ||
116 | <property name="solid" type="bool" value="true"/> | ||
117 | </properties> | ||
118 | </tile> | ||
119 | <tile id="33"> | ||
120 | <properties> | ||
121 | <property name="solid" type="bool" value="true"/> | ||
122 | </properties> | ||
123 | </tile> | ||
124 | <tile id="35"> | ||
125 | <properties> | ||
126 | <property name="solid" type="bool" value="true"/> | ||
127 | </properties> | ||
128 | </tile> | ||
129 | <tile id="36"> | ||
130 | <properties> | ||
131 | <property name="solid" type="bool" value="true"/> | ||
132 | </properties> | ||
133 | </tile> | ||
134 | <tile id="37"> | ||
135 | <properties> | ||
136 | <property name="solid" type="bool" value="true"/> | ||
137 | </properties> | ||
138 | </tile> | ||
139 | <tile id="38"> | ||
140 | <properties> | ||
141 | <property name="solid" type="bool" value="true"/> | ||
142 | </properties> | ||
143 | </tile> | ||
144 | <tile id="39"> | ||
145 | <properties> | ||
146 | <property name="solid" type="bool" value="true"/> | ||
147 | </properties> | ||
148 | </tile> | ||
149 | <tile id="40"> | ||
150 | <properties> | ||
151 | <property name="solid" type="bool" value="true"/> | ||
152 | </properties> | ||
153 | </tile> | ||
154 | <tile id="41"> | ||
155 | <properties> | ||
156 | <property name="solid" type="bool" value="true"/> | ||
157 | </properties> | ||
158 | </tile> | ||
159 | <tile id="44"> | ||
160 | <properties> | ||
161 | <property name="solid" type="bool" value="true"/> | ||
162 | </properties> | ||
163 | </tile> | ||
164 | <tile id="45"> | ||
165 | <properties> | ||
166 | <property name="solid" type="bool" value="true"/> | ||
167 | </properties> | ||
168 | </tile> | ||
169 | <tile id="48"> | ||
170 | <properties> | ||
171 | <property name="solid" type="bool" value="true"/> | ||
172 | </properties> | ||
173 | </tile> | ||
174 | <tile id="51"> | ||
175 | <properties> | ||
176 | <property name="solid" type="bool" value="true"/> | ||
177 | </properties> | ||
178 | </tile> | ||
179 | <tile id="52"> | ||
180 | <properties> | ||
181 | <property name="solid" type="bool" value="true"/> | ||
182 | </properties> | ||
183 | </tile> | ||
184 | <tile id="55"> | ||
185 | <properties> | ||
186 | <property name="solid" type="bool" value="true"/> | ||
187 | </properties> | ||
188 | </tile> | ||
189 | <tile id="56"> | ||
190 | <properties> | ||
191 | <property name="solid" type="bool" value="true"/> | ||
192 | </properties> | ||
193 | </tile> | ||
194 | <tile id="57"> | ||
195 | <properties> | ||
196 | <property name="solid" type="bool" value="true"/> | ||
197 | </properties> | ||
198 | </tile> | ||
199 | <tile id="58"> | ||
200 | <properties> | ||
201 | <property name="solid" type="bool" value="true"/> | ||
202 | </properties> | ||
203 | </tile> | ||
204 | <tile id="59"> | ||
205 | <properties> | ||
206 | <property name="solid" type="bool" value="true"/> | ||
207 | </properties> | ||
208 | </tile> | ||
209 | <tile id="60"> | ||
210 | <properties> | ||
211 | <property name="solid" type="bool" value="true"/> | ||
212 | </properties> | ||
213 | </tile> | ||
214 | <tile id="62"> | ||
215 | <properties> | ||
216 | <property name="solid" type="bool" value="true"/> | ||
217 | </properties> | ||
218 | </tile> | ||
219 | <tile id="63"> | ||
220 | <properties> | ||
221 | <property name="solid" type="bool" value="true"/> | ||
222 | </properties> | ||
223 | </tile> | ||
224 | <tile id="65"> | ||
225 | <properties> | ||
226 | <property name="solid" type="bool" value="true"/> | ||
227 | </properties> | ||
228 | </tile> | ||
229 | <tile id="67"> | ||
230 | <properties> | ||
231 | <property name="solid" type="bool" value="true"/> | ||
232 | </properties> | ||
233 | </tile> | ||
234 | <tile id="68"> | ||
235 | <properties> | ||
236 | <property name="solid" type="bool" value="true"/> | ||
237 | </properties> | ||
238 | </tile> | ||
239 | <tile id="70"> | ||
240 | <properties> | ||
241 | <property name="solid" type="bool" value="true"/> | ||
242 | </properties> | ||
243 | </tile> | ||
244 | <tile id="78"> | ||
245 | <properties> | ||
246 | <property name="solid" type="bool" value="true"/> | ||
247 | </properties> | ||
248 | </tile> | ||
249 | <tile id="79"> | ||
250 | <properties> | ||
251 | <property name="solid" type="bool" value="true"/> | ||
252 | </properties> | ||
253 | </tile> | ||
254 | <tile id="80"> | ||
255 | <properties> | ||
256 | <property name="solid" type="bool" value="true"/> | ||
257 | </properties> | ||
258 | </tile> | ||
259 | <tile id="81"> | ||
260 | <properties> | ||
261 | <property name="solid" type="bool" value="true"/> | ||
262 | </properties> | ||
263 | </tile> | ||
264 | <tile id="82"> | ||
265 | <properties> | ||
266 | <property name="solid" type="bool" value="true"/> | ||
267 | </properties> | ||
268 | </tile> | ||
269 | <tile id="83"> | ||
270 | <properties> | ||
271 | <property name="solid" type="bool" value="true"/> | ||
272 | </properties> | ||
273 | </tile> | ||
274 | <tile id="84"> | ||
275 | <properties> | ||
276 | <property name="solid" type="bool" value="true"/> | ||
277 | </properties> | ||
278 | </tile> | ||
279 | <tile id="85"> | ||
280 | <properties> | ||
281 | <property name="solid" type="bool" value="true"/> | ||
282 | </properties> | ||
283 | </tile> | ||
284 | <tile id="86"> | ||
285 | <properties> | ||
286 | <property name="solid" type="bool" value="true"/> | ||
287 | </properties> | ||
288 | </tile> | ||
289 | <tile id="87"> | ||
290 | <properties> | ||
291 | <property name="solid" type="bool" value="true"/> | ||
292 | </properties> | ||
293 | </tile> | ||
294 | <tile id="90"> | ||
295 | <properties> | ||
296 | <property name="solid" type="bool" value="true"/> | ||
297 | </properties> | ||
298 | </tile> | ||
299 | <tile id="91"> | ||
300 | <properties> | ||
301 | <property name="solid" type="bool" value="true"/> | ||
302 | </properties> | ||
303 | </tile> | ||
304 | <tile id="95"> | ||
305 | <properties> | ||
306 | <property name="solid" type="bool" value="true"/> | ||
307 | </properties> | ||
308 | </tile> | ||
309 | <tile id="96"> | ||
310 | <properties> | ||
311 | <property name="solid" type="bool" value="true"/> | ||
312 | </properties> | ||
313 | </tile> | ||
314 | <tile id="97"> | ||
315 | <properties> | ||
316 | <property name="solid" type="bool" value="true"/> | ||
317 | </properties> | ||
318 | </tile> | ||
319 | <tile id="98"> | ||
320 | <properties> | ||
321 | <property name="solid" type="bool" value="true"/> | ||
322 | </properties> | ||
323 | </tile> | ||
324 | <tile id="99"> | ||
325 | <properties> | ||
326 | <property name="solid" type="bool" value="true"/> | ||
327 | </properties> | ||
328 | </tile> | ||
329 | <tile id="100"> | ||
330 | <properties> | ||
331 | <property name="solid" type="bool" value="true"/> | ||
332 | </properties> | ||
333 | </tile> | ||
334 | <tile id="101"> | ||
335 | <properties> | ||
336 | <property name="solid" type="bool" value="true"/> | ||
337 | </properties> | ||
338 | </tile> | ||
339 | <tile id="102"> | ||
340 | <properties> | ||
341 | <property name="solid" type="bool" value="true"/> | ||
342 | </properties> | ||
343 | </tile> | ||
344 | <tile id="107"> | ||
345 | <properties> | ||
346 | <property name="solid" type="bool" value="true"/> | ||
347 | </properties> | ||
348 | </tile> | ||
349 | <tile id="108"> | ||
350 | <properties> | ||
351 | <property name="solid" type="bool" value="true"/> | ||
352 | </properties> | ||
353 | </tile> | ||
354 | <tile id="109"> | ||
355 | <properties> | ||
356 | <property name="solid" type="bool" value="true"/> | ||
357 | </properties> | ||
358 | </tile> | ||
359 | <tile id="110"> | ||
360 | <properties> | ||
361 | <property name="solid" type="bool" value="true"/> | ||
362 | </properties> | ||
363 | </tile> | ||
364 | <tile id="111"> | ||
365 | <properties> | ||
366 | <property name="solid" type="bool" value="true"/> | ||
367 | </properties> | ||
368 | </tile> | ||
369 | <tile id="118"> | ||
370 | <properties> | ||
371 | <property name="solid" type="bool" value="true"/> | ||
372 | </properties> | ||
373 | </tile> | ||
374 | <tile id="119"> | ||
375 | <properties> | ||
376 | <property name="solid" type="bool" value="true"/> | ||
377 | </properties> | ||
378 | </tile> | ||
379 | <tile id="120"> | ||
380 | <properties> | ||
381 | <property name="solid" type="bool" value="true"/> | ||
382 | </properties> | ||
383 | </tile> | ||
384 | <tile id="121"> | ||
385 | <properties> | ||
386 | <property name="medium" value="ladder"/> | ||
387 | </properties> | ||
388 | </tile> | ||
389 | <tile id="123"> | ||
390 | <properties> | ||
391 | <property name="solid" type="bool" value="true"/> | ||
392 | </properties> | ||
393 | </tile> | ||
394 | <tile id="124"> | ||
395 | <properties> | ||
396 | <property name="medium" value="ladder"/> | ||
397 | </properties> | ||
398 | </tile> | ||
399 | <tile id="125"> | ||
400 | <properties> | ||
401 | <property name="solid" type="bool" value="true"/> | ||
402 | </properties> | ||
403 | </tile> | ||
404 | <tile id="126"> | ||
405 | <properties> | ||
406 | <property name="medium" value="ladder"/> | ||
407 | </properties> | ||
408 | </tile> | ||
409 | <tile id="127"> | ||
410 | <properties> | ||
411 | <property name="solid" type="bool" value="true"/> | ||
412 | </properties> | ||
413 | </tile> | ||
414 | <tile id="130"> | ||
415 | <properties> | ||
416 | <property name="solid" type="bool" value="true"/> | ||
417 | </properties> | ||
418 | </tile> | ||
419 | <tile id="131"> | ||
420 | <properties> | ||
421 | <property name="solid" type="bool" value="true"/> | ||
422 | </properties> | ||
423 | </tile> | ||
424 | <tile id="132"> | ||
425 | <properties> | ||
426 | <property name="solid" type="bool" value="true"/> | ||
427 | </properties> | ||
428 | </tile> | ||
429 | <tile id="133"> | ||
430 | <properties> | ||
431 | <property name="solid" type="bool" value="true"/> | ||
432 | </properties> | ||
433 | </tile> | ||
434 | <tile id="134"> | ||
435 | <properties> | ||
436 | <property name="solid" type="bool" value="true"/> | ||
437 | </properties> | ||
438 | </tile> | ||
439 | <tile id="135"> | ||
440 | <properties> | ||
441 | <property name="solid" type="bool" value="true"/> | ||
442 | </properties> | ||
443 | </tile> | ||
444 | <tile id="136"> | ||
445 | <properties> | ||
446 | <property name="solid" type="bool" value="true"/> | ||
447 | </properties> | ||
448 | </tile> | ||
449 | <tile id="137"> | ||
450 | <properties> | ||
451 | <property name="solid" type="bool" value="true"/> | ||
452 | </properties> | ||
453 | </tile> | ||
454 | <tile id="138"> | ||
455 | <properties> | ||
456 | <property name="solid" type="bool" value="true"/> | ||
457 | </properties> | ||
458 | </tile> | ||
459 | <tile id="140"> | ||
460 | <properties> | ||
461 | <property name="solid" type="bool" value="true"/> | ||
462 | </properties> | ||
463 | </tile> | ||
464 | <tile id="141"> | ||
465 | <properties> | ||
466 | <property name="solid" type="bool" value="true"/> | ||
467 | </properties> | ||
468 | </tile> | ||
469 | <tile id="143"> | ||
470 | <properties> | ||
471 | <property name="solid" type="bool" value="true"/> | ||
472 | </properties> | ||
473 | </tile> | ||
474 | <tile id="144"> | ||
475 | <properties> | ||
476 | <property name="solid" type="bool" value="true"/> | ||
477 | </properties> | ||
478 | </tile> | ||
479 | <tile id="145"> | ||
480 | <properties> | ||
481 | <property name="solid" type="bool" value="true"/> | ||
482 | </properties> | ||
483 | </tile> | ||
484 | <tile id="146"> | ||
485 | <properties> | ||
486 | <property name="solid" type="bool" value="true"/> | ||
487 | </properties> | ||
488 | </tile> | ||
489 | <tile id="147"> | ||
490 | <properties> | ||
491 | <property name="solid" type="bool" value="true"/> | ||
492 | </properties> | ||
493 | </tile> | ||
494 | <tile id="148"> | ||
495 | <properties> | ||
496 | <property name="solid" type="bool" value="true"/> | ||
497 | </properties> | ||
498 | </tile> | ||
499 | <tile id="152"> | ||
500 | <properties> | ||
501 | <property name="solid" type="bool" value="true"/> | ||
502 | </properties> | ||
503 | </tile> | ||
504 | <tile id="154"> | ||
505 | <properties> | ||
506 | <property name="solid" type="bool" value="true"/> | ||
507 | </properties> | ||
508 | </tile> | ||
509 | <tile id="155"> | ||
510 | <properties> | ||
511 | <property name="solid" type="bool" value="true"/> | ||
512 | </properties> | ||
513 | </tile> | ||
514 | <tile id="157"> | ||
515 | <properties> | ||
516 | <property name="solid" type="bool" value="true"/> | ||
517 | </properties> | ||
518 | </tile> | ||
519 | <tile id="158"> | ||
520 | <properties> | ||
521 | <property name="solid" type="bool" value="true"/> | ||
522 | </properties> | ||
523 | </tile> | ||
524 | <tile id="164"> | ||
525 | <properties> | ||
526 | <property name="solid" type="bool" value="true"/> | ||
527 | </properties> | ||
528 | </tile> | ||
529 | <tile id="165"> | ||
530 | <properties> | ||
531 | <property name="solid" type="bool" value="true"/> | ||
532 | </properties> | ||
533 | </tile> | ||
534 | <tile id="166"> | ||
535 | <properties> | ||
536 | <property name="solid" type="bool" value="true"/> | ||
537 | </properties> | ||
538 | </tile> | ||
539 | <tile id="171"> | ||
540 | <properties> | ||
541 | <property name="solid" type="bool" value="true"/> | ||
542 | </properties> | ||
543 | </tile> | ||
544 | <tile id="173"> | ||
545 | <properties> | ||
546 | <property name="solid" type="bool" value="true"/> | ||
547 | </properties> | ||
548 | </tile> | ||
549 | <tile id="175"> | ||
550 | <properties> | ||
551 | <property name="solid" type="bool" value="true"/> | ||
552 | </properties> | ||
553 | </tile> | ||
554 | <tile id="176"> | ||
555 | <properties> | ||
556 | <property name="solid" type="bool" value="true"/> | ||
557 | </properties> | ||
558 | </tile> | ||
559 | <tile id="177"> | ||
560 | <properties> | ||
561 | <property name="solid" type="bool" value="true"/> | ||
562 | </properties> | ||
563 | </tile> | ||
564 | <tile id="178"> | ||
565 | <properties> | ||
566 | <property name="solid" type="bool" value="true"/> | ||
567 | </properties> | ||
568 | </tile> | ||
569 | <tile id="179"> | ||
570 | <properties> | ||
571 | <property name="solid" type="bool" value="true"/> | ||
572 | </properties> | ||
573 | </tile> | ||
574 | <tile id="180"> | ||
575 | <properties> | ||
576 | <property name="solid" type="bool" value="true"/> | ||
577 | </properties> | ||
578 | </tile> | ||
579 | <tile id="181"> | ||
580 | <properties> | ||
581 | <property name="solid" type="bool" value="true"/> | ||
582 | </properties> | ||
583 | </tile> | ||
584 | <tile id="182"> | ||
585 | <properties> | ||
586 | <property name="solid" type="bool" value="true"/> | ||
587 | </properties> | ||
588 | </tile> | ||
589 | <tile id="183"> | ||
590 | <properties> | ||
591 | <property name="solid" type="bool" value="true"/> | ||
592 | </properties> | ||
593 | </tile> | ||
594 | <tile id="184"> | ||
595 | <properties> | ||
596 | <property name="solid" type="bool" value="true"/> | ||
597 | </properties> | ||
598 | </tile> | ||
599 | <tile id="185"> | ||
600 | <properties> | ||
601 | <property name="solid" type="bool" value="true"/> | ||
602 | </properties> | ||
603 | </tile> | ||
604 | <tile id="186"> | ||
605 | <properties> | ||
606 | <property name="solid" type="bool" value="true"/> | ||
607 | </properties> | ||
608 | </tile> | ||
609 | <tile id="187"> | ||
610 | <properties> | ||
611 | <property name="solid" type="bool" value="true"/> | ||
612 | </properties> | ||
613 | </tile> | ||
614 | <tile id="188"> | ||
615 | <properties> | ||
616 | <property name="solid" type="bool" value="true"/> | ||
617 | </properties> | ||
618 | </tile> | ||
619 | <tile id="189"> | ||
620 | <properties> | ||
621 | <property name="solid" type="bool" value="true"/> | ||
622 | </properties> | ||
623 | </tile> | ||
624 | <tile id="191"> | ||
625 | <properties> | ||
626 | <property name="solid" type="bool" value="true"/> | ||
627 | </properties> | ||
628 | </tile> | ||
629 | <tile id="192"> | ||
630 | <properties> | ||
631 | <property name="solid" type="bool" value="true"/> | ||
632 | </properties> | ||
633 | </tile> | ||
634 | <tile id="193"> | ||
635 | <properties> | ||
636 | <property name="solid" type="bool" value="true"/> | ||
637 | </properties> | ||
638 | </tile> | ||
639 | <tile id="194"> | ||
640 | <properties> | ||
641 | <property name="solid" type="bool" value="true"/> | ||
642 | </properties> | ||
643 | </tile> | ||
644 | <tile id="195"> | ||
645 | <properties> | ||
646 | <property name="solid" type="bool" value="true"/> | ||
647 | </properties> | ||
648 | </tile> | ||
649 | <tile id="197"> | ||
650 | <properties> | ||
651 | <property name="solid" type="bool" value="true"/> | ||
652 | </properties> | ||
653 | </tile> | ||
654 | <tile id="198"> | ||
655 | <properties> | ||
656 | <property name="solid" type="bool" value="true"/> | ||
657 | </properties> | ||
658 | </tile> | ||
659 | <tile id="200"> | ||
660 | <properties> | ||
661 | <property name="solid" type="bool" value="true"/> | ||
662 | </properties> | ||
663 | </tile> | ||
664 | <tile id="201"> | ||
665 | <properties> | ||
666 | <property name="solid" type="bool" value="true"/> | ||
667 | </properties> | ||
668 | </tile> | ||
669 | <tile id="203"> | ||
670 | <properties> | ||
671 | <property name="solid" type="bool" value="true"/> | ||
672 | </properties> | ||
673 | </tile> | ||
674 | <tile id="204"> | ||
675 | <properties> | ||
676 | <property name="solid" type="bool" value="true"/> | ||
677 | </properties> | ||
678 | </tile> | ||
679 | <tile id="205"> | ||
680 | <properties> | ||
681 | <property name="solid" type="bool" value="true"/> | ||
682 | </properties> | ||
683 | </tile> | ||
684 | <tile id="206"> | ||
685 | <properties> | ||
686 | <property name="solid" type="bool" value="true"/> | ||
687 | </properties> | ||
688 | </tile> | ||
689 | <tile id="208"> | ||
690 | <properties> | ||
691 | <property name="solid" type="bool" value="true"/> | ||
692 | </properties> | ||
693 | </tile> | ||
694 | <tile id="210"> | ||
695 | <properties> | ||
696 | <property name="solid" type="bool" value="true"/> | ||
697 | </properties> | ||
698 | </tile> | ||
699 | <tile id="213"> | ||
700 | <properties> | ||
701 | <property name="solid" type="bool" value="true"/> | ||
702 | </properties> | ||
703 | </tile> | ||
704 | <tile id="214"> | ||
705 | <properties> | ||
706 | <property name="solid" type="bool" value="true"/> | ||
707 | </properties> | ||
708 | </tile> | ||
709 | <tile id="215"> | ||
710 | <properties> | ||
711 | <property name="solid" type="bool" value="true"/> | ||
712 | </properties> | ||
713 | </tile> | ||
714 | <tile id="217"> | ||
715 | <properties> | ||
716 | <property name="solid" type="bool" value="true"/> | ||
717 | </properties> | ||
718 | </tile> | ||
719 | <tile id="218"> | ||
720 | <properties> | ||
721 | <property name="solid" type="bool" value="true"/> | ||
722 | </properties> | ||
723 | </tile> | ||
724 | <tile id="219"> | ||
725 | <properties> | ||
726 | <property name="solid" type="bool" value="true"/> | ||
727 | </properties> | ||
728 | </tile> | ||
729 | <tile id="220"> | ||
730 | <properties> | ||
731 | <property name="solid" type="bool" value="true"/> | ||
732 | </properties> | ||
733 | </tile> | ||
734 | <tile id="221"> | ||
735 | <properties> | ||
736 | <property name="solid" type="bool" value="true"/> | ||
737 | </properties> | ||
738 | </tile> | ||
739 | <tile id="222"> | ||
740 | <properties> | ||
741 | <property name="solid" type="bool" value="true"/> | ||
742 | </properties> | ||
743 | </tile> | ||
744 | <tile id="224"> | ||
745 | <properties> | ||
746 | <property name="solid" type="bool" value="true"/> | ||
747 | </properties> | ||
748 | </tile> | ||
749 | <tile id="225"> | ||
750 | <properties> | ||
751 | <property name="solid" type="bool" value="true"/> | ||
752 | </properties> | ||
753 | </tile> | ||
754 | <tile id="226"> | ||
755 | <properties> | ||
756 | <property name="solid" type="bool" value="true"/> | ||
757 | </properties> | ||
758 | </tile> | ||
759 | <tile id="227"> | ||
760 | <properties> | ||
761 | <property name="solid" type="bool" value="true"/> | ||
762 | </properties> | ||
763 | </tile> | ||
764 | <tile id="228"> | ||
765 | <properties> | ||
766 | <property name="solid" type="bool" value="true"/> | ||
767 | </properties> | ||
768 | </tile> | ||
769 | <tile id="229"> | ||
770 | <properties> | ||
771 | <property name="solid" type="bool" value="true"/> | ||
772 | </properties> | ||
773 | </tile> | ||
774 | <tile id="230"> | ||
775 | <properties> | ||
776 | <property name="solid" type="bool" value="true"/> | ||
777 | </properties> | ||
778 | </tile> | ||
779 | <tile id="231"> | ||
780 | <properties> | ||
781 | <property name="solid" type="bool" value="true"/> | ||
782 | </properties> | ||
783 | </tile> | ||
784 | <tile id="232"> | ||
785 | <properties> | ||
786 | <property name="solid" type="bool" value="true"/> | ||
787 | </properties> | ||
788 | </tile> | ||
789 | <tile id="233"> | ||
790 | <properties> | ||
791 | <property name="solid" type="bool" value="true"/> | ||
792 | </properties> | ||
793 | </tile> | ||
794 | <tile id="234"> | ||
795 | <properties> | ||
796 | <property name="solid" type="bool" value="true"/> | ||
797 | </properties> | ||
798 | </tile> | ||
799 | <tile id="235"> | ||
800 | <properties> | ||
801 | <property name="solid" type="bool" value="true"/> | ||
802 | </properties> | ||
803 | </tile> | ||
804 | <tile id="236"> | ||
805 | <properties> | ||
806 | <property name="solid" type="bool" value="true"/> | ||
807 | </properties> | ||
808 | </tile> | ||
809 | <tile id="239"> | ||
810 | <properties> | ||
811 | <property name="solid" type="bool" value="true"/> | ||
812 | </properties> | ||
813 | </tile> | ||
814 | <tile id="240"> | ||
815 | <properties> | ||
816 | <property name="solid" type="bool" value="true"/> | ||
817 | </properties> | ||
818 | </tile> | ||
819 | <tile id="241"> | ||
820 | <properties> | ||
821 | <property name="solid" type="bool" value="true"/> | ||
822 | </properties> | ||
823 | </tile> | ||
824 | <tile id="242"> | ||
825 | <properties> | ||
826 | <property name="solid" type="bool" value="true"/> | ||
827 | </properties> | ||
828 | </tile> | ||
829 | <tile id="243"> | ||
830 | <properties> | ||
831 | <property name="solid" type="bool" value="true"/> | ||
832 | </properties> | ||
833 | </tile> | ||
834 | <tile id="245"> | ||
835 | <properties> | ||
836 | <property name="solid" type="bool" value="true"/> | ||
837 | </properties> | ||
838 | </tile> | ||
839 | <tile id="246"> | ||
840 | <properties> | ||
841 | <property name="solid" type="bool" value="true"/> | ||
842 | </properties> | ||
843 | </tile> | ||
844 | <tile id="247"> | ||
845 | <properties> | ||
846 | <property name="solid" type="bool" value="true"/> | ||
847 | </properties> | ||
848 | </tile> | ||
849 | <tile id="248"> | ||
850 | <properties> | ||
851 | <property name="solid" type="bool" value="true"/> | ||
852 | </properties> | ||
853 | </tile> | ||
854 | <tile id="252"> | ||
855 | <properties> | ||
856 | <property name="solid" type="bool" value="true"/> | ||
857 | </properties> | ||
858 | </tile> | ||
859 | <tile id="253"> | ||
860 | <properties> | ||
861 | <property name="solid" type="bool" value="true"/> | ||
862 | </properties> | ||
863 | </tile> | ||
864 | <tile id="256"> | ||
865 | <properties> | ||
866 | <property name="solid" type="bool" value="true"/> | ||
867 | </properties> | ||
868 | </tile> | ||
869 | <tile id="260"> | ||
870 | <properties> | ||
871 | <property name="solid" type="bool" value="true"/> | ||
872 | </properties> | ||
873 | </tile> | ||
874 | <tile id="266"> | ||
875 | <properties> | ||
876 | <property name="solid" type="bool" value="true"/> | ||
877 | </properties> | ||
878 | </tile> | ||
879 | <tile id="267"> | ||
880 | <properties> | ||
881 | <property name="solid" type="bool" value="true"/> | ||
882 | </properties> | ||
883 | </tile> | ||
884 | <tile id="268"> | ||
885 | <properties> | ||
886 | <property name="solid" type="bool" value="true"/> | ||
887 | </properties> | ||
888 | </tile> | ||
889 | <tile id="271"> | ||
890 | <properties> | ||
891 | <property name="solid" type="bool" value="true"/> | ||
892 | </properties> | ||
893 | </tile> | ||
894 | <tile id="274"> | ||
895 | <properties> | ||
896 | <property name="solid" type="bool" value="true"/> | ||
897 | </properties> | ||
898 | </tile> | ||
899 | <tile id="275"> | ||
900 | <properties> | ||
901 | <property name="solid" type="bool" value="true"/> | ||
902 | </properties> | ||
903 | </tile> | ||
904 | <tile id="276"> | ||
905 | <properties> | ||
906 | <property name="solid" type="bool" value="true"/> | ||
907 | </properties> | ||
908 | </tile> | ||
909 | <tile id="277"> | ||
910 | <properties> | ||
911 | <property name="solid" type="bool" value="true"/> | ||
912 | </properties> | ||
913 | </tile> | ||
914 | <tile id="278"> | ||
915 | <properties> | ||
916 | <property name="solid" type="bool" value="true"/> | ||
917 | </properties> | ||
918 | </tile> | ||
919 | <tile id="279"> | ||
920 | <properties> | ||
921 | <property name="solid" type="bool" value="true"/> | ||
922 | </properties> | ||
923 | </tile> | ||
924 | <tile id="282"> | ||
925 | <properties> | ||
926 | <property name="solid" type="bool" value="true"/> | ||
927 | </properties> | ||
928 | </tile> | ||
929 | <tile id="283"> | ||
930 | <properties> | ||
931 | <property name="medium" value="ladder"/> | ||
932 | </properties> | ||
933 | </tile> | ||
934 | <tile id="284"> | ||
935 | <properties> | ||
936 | <property name="solid" type="bool" value="true"/> | ||
937 | </properties> | ||
938 | </tile> | ||
939 | <tile id="285"> | ||
940 | <properties> | ||
941 | <property name="solid" type="bool" value="true"/> | ||
942 | </properties> | ||
943 | </tile> | ||
944 | <tile id="286"> | ||
945 | <properties> | ||
946 | <property name="solid" type="bool" value="true"/> | ||
947 | </properties> | ||
948 | </tile> | ||
949 | <tile id="287"> | ||
950 | <properties> | ||
951 | <property name="medium" value="ladder"/> | ||
952 | </properties> | ||
953 | </tile> | ||
954 | <tile id="288"> | ||
955 | <properties> | ||
956 | <property name="solid" type="bool" value="true"/> | ||
957 | </properties> | ||
958 | </tile> | ||
959 | <tile id="289"> | ||
960 | <properties> | ||
961 | <property name="medium" value="ladder"/> | ||
962 | </properties> | ||
963 | </tile> | ||
964 | <tile id="290"> | ||
965 | <properties> | ||
966 | <property name="solid" type="bool" value="true"/> | ||
967 | </properties> | ||
968 | </tile> | ||
969 | <tile id="291"> | ||
970 | <properties> | ||
971 | <property name="solid" type="bool" value="true"/> | ||
972 | </properties> | ||
973 | </tile> | ||
974 | <tile id="292"> | ||
975 | <properties> | ||
976 | <property name="solid" type="bool" value="true"/> | ||
977 | </properties> | ||
978 | </tile> | ||
979 | <tile id="294"> | ||
980 | <properties> | ||
981 | <property name="solid" type="bool" value="true"/> | ||
982 | </properties> | ||
983 | </tile> | ||
984 | <tile id="295"> | ||
985 | <properties> | ||
986 | <property name="solid" type="bool" value="true"/> | ||
987 | </properties> | ||
988 | </tile> | ||
989 | <tile id="296"> | ||
990 | <properties> | ||
991 | <property name="solid" type="bool" value="true"/> | ||
992 | </properties> | ||
993 | </tile> | ||
994 | <tile id="297"> | ||
995 | <properties> | ||
996 | <property name="solid" type="bool" value="true"/> | ||
997 | </properties> | ||
998 | </tile> | ||
999 | <tile id="298"> | ||
1000 | <properties> | ||
1001 | <property name="solid" type="bool" value="true"/> | ||
1002 | </properties> | ||
1003 | </tile> | ||
1004 | <tile id="299"> | ||
1005 | <properties> | ||
1006 | <property name="solid" type="bool" value="true"/> | ||
1007 | </properties> | ||
1008 | </tile> | ||
1009 | <tile id="300"> | ||
1010 | <properties> | ||
1011 | <property name="solid" type="bool" value="true"/> | ||
1012 | </properties> | ||
1013 | </tile> | ||
1014 | <tile id="301"> | ||
1015 | <properties> | ||
1016 | <property name="solid" type="bool" value="true"/> | ||
1017 | </properties> | ||
1018 | </tile> | ||
1019 | <tile id="304"> | ||
1020 | <properties> | ||
1021 | <property name="solid" type="bool" value="true"/> | ||
1022 | </properties> | ||
1023 | </tile> | ||
1024 | <tile id="305"> | ||
1025 | <properties> | ||
1026 | <property name="solid" type="bool" value="true"/> | ||
1027 | </properties> | ||
1028 | </tile> | ||
1029 | <tile id="306"> | ||
1030 | <properties> | ||
1031 | <property name="solid" type="bool" value="true"/> | ||
1032 | </properties> | ||
1033 | </tile> | ||
1034 | <tile id="307"> | ||
1035 | <properties> | ||
1036 | <property name="medium" value="ladder"/> | ||
1037 | </properties> | ||
1038 | </tile> | ||
1039 | <tile id="308"> | ||
1040 | <properties> | ||
1041 | <property name="solid" type="bool" value="true"/> | ||
1042 | </properties> | ||
1043 | </tile> | ||
1044 | <tile id="309"> | ||
1045 | <properties> | ||
1046 | <property name="solid" type="bool" value="true"/> | ||
1047 | </properties> | ||
1048 | </tile> | ||
1049 | <tile id="310"> | ||
1050 | <properties> | ||
1051 | <property name="solid" type="bool" value="true"/> | ||
1052 | </properties> | ||
1053 | </tile> | ||
1054 | <tile id="311"> | ||
1055 | <properties> | ||
1056 | <property name="medium" value="ladder"/> | ||
1057 | </properties> | ||
1058 | </tile> | ||
1059 | <tile id="312"> | ||
1060 | <properties> | ||
1061 | <property name="solid" type="bool" value="true"/> | ||
1062 | </properties> | ||
1063 | </tile> | ||
1064 | <tile id="313"> | ||
1065 | <properties> | ||
1066 | <property name="solid" type="bool" value="true"/> | ||
1067 | </properties> | ||
1068 | </tile> | ||
1069 | <tile id="314"> | ||
1070 | <properties> | ||
1071 | <property name="solid" type="bool" value="true"/> | ||
1072 | </properties> | ||
1073 | </tile> | ||
1074 | <tile id="315"> | ||
1075 | <properties> | ||
1076 | <property name="medium" value="ladder"/> | ||
1077 | </properties> | ||
1078 | </tile> | ||
1079 | <tile id="316"> | ||
1080 | <properties> | ||
1081 | <property name="solid" type="bool" value="true"/> | ||
1082 | </properties> | ||
1083 | </tile> | ||
1084 | <tile id="317"> | ||
1085 | <properties> | ||
1086 | <property name="solid" type="bool" value="true"/> | ||
1087 | </properties> | ||
1088 | </tile> | ||
1089 | <tile id="318"> | ||
1090 | <properties> | ||
1091 | <property name="solid" type="bool" value="true"/> | ||
1092 | </properties> | ||
1093 | </tile> | ||
1094 | <tile id="322"> | ||
1095 | <properties> | ||
1096 | <property name="solid" type="bool" value="true"/> | ||
1097 | </properties> | ||
1098 | </tile> | ||
1099 | <tile id="324"> | ||
1100 | <properties> | ||
1101 | <property name="solid" type="bool" value="true"/> | ||
1102 | </properties> | ||
1103 | </tile> | ||
1104 | <tile id="325"> | ||
1105 | <properties> | ||
1106 | <property name="solid" type="bool" value="true"/> | ||
1107 | </properties> | ||
1108 | </tile> | ||
1109 | <tile id="326"> | ||
1110 | <properties> | ||
1111 | <property name="solid" type="bool" value="true"/> | ||
1112 | </properties> | ||
1113 | </tile> | ||
1114 | <tile id="327"> | ||
1115 | <properties> | ||
1116 | <property name="solid" type="bool" value="true"/> | ||
1117 | </properties> | ||
1118 | </tile> | ||
1119 | <tile id="328"> | ||
1120 | <properties> | ||
1121 | <property name="solid" type="bool" value="true"/> | ||
1122 | </properties> | ||
1123 | </tile> | ||
1124 | <tile id="329"> | ||
1125 | <properties> | ||
1126 | <property name="solid" type="bool" value="true"/> | ||
1127 | </properties> | ||
1128 | </tile> | ||
1129 | <tile id="330"> | ||
1130 | <properties> | ||
1131 | <property name="solid" type="bool" value="true"/> | ||
1132 | </properties> | ||
1133 | </tile> | ||
1134 | <tile id="331"> | ||
1135 | <properties> | ||
1136 | <property name="solid" type="bool" value="true"/> | ||
1137 | </properties> | ||
1138 | </tile> | ||
1139 | <tile id="332"> | ||
1140 | <properties> | ||
1141 | <property name="solid" type="bool" value="true"/> | ||
1142 | </properties> | ||
1143 | </tile> | ||
1144 | <tile id="333"> | ||
1145 | <properties> | ||
1146 | <property name="solid" type="bool" value="true"/> | ||
1147 | </properties> | ||
1148 | </tile> | ||
1149 | <tile id="334"> | ||
1150 | <properties> | ||
1151 | <property name="solid" type="bool" value="true"/> | ||
1152 | </properties> | ||
1153 | </tile> | ||
1154 | <tile id="335"> | ||
1155 | <properties> | ||
1156 | <property name="solid" type="bool" value="true"/> | ||
1157 | </properties> | ||
1158 | </tile> | ||
1159 | <tile id="336"> | ||
1160 | <properties> | ||
1161 | <property name="solid" type="bool" value="true"/> | ||
1162 | </properties> | ||
1163 | </tile> | ||
1164 | <tile id="337"> | ||
1165 | <properties> | ||
1166 | <property name="solid" type="bool" value="true"/> | ||
1167 | </properties> | ||
1168 | </tile> | ||
1169 | <tile id="338"> | ||
1170 | <properties> | ||
1171 | <property name="solid" type="bool" value="true"/> | ||
1172 | </properties> | ||
1173 | </tile> | ||
1174 | <tile id="339"> | ||
1175 | <properties> | ||
1176 | <property name="solid" type="bool" value="true"/> | ||
1177 | </properties> | ||
1178 | </tile> | ||
1179 | </tileset> | ||
diff --git a/res/maps/underwater_start.tmx b/res/maps/underwater_start.tmx new file mode 100644 index 0000000..161bb3e --- /dev/null +++ b/res/maps/underwater_start.tmx | |||
@@ -0,0 +1,136 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <map version="1.4" tiledversion="1.4.3" orientation="orthogonal" renderorder="right-down" width="32" height="32" tilewidth="16" tileheight="16" infinite="0" nextlayerid="4" nextobjectid="4"> | ||
3 | <tileset firstgid="1" source="underwater.tsx"/> | ||
4 | <layer id="1" name="Lower" width="32" height="32"> | ||
5 | <data encoding="csv"> | ||
6 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
7 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
8 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
9 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
10 | 283,283,283,283,283,283,283,283,283,283,283,308,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
11 | 283,283,283,283,283,283,283,283,309,310,311,312,309,310,311,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
12 | 283,283,283,283,283,283,283,283,313,314,315,316,313,314,315,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
13 | 283,283,283,283,283,283,283,283,317,318,319,320,317,318,319,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
14 | 283,283,283,283,283,283,283,283,321,321,321,321,321,321,321,309,310,311,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
15 | 283,283,283,283,283,283,283,283,283,321,321,321,321,322,323,313,314,315,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
16 | 283,283,283,283,283,283,283,283,283,283,321,321,321,324,325,326,327,328,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
17 | 283,283,283,283,283,283,283,283,283,283,321,321,321,2147483969,321,321,321,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
18 | 283,283,283,283,283,283,283,2147483959,2147483958,2147483957,321,2147483969,321,321,321,321,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
19 | 283,283,283,283,283,283,283,2147483963,2147483962,2147483961,2147483971,2147483970,321,321,322,323,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
20 | 283,283,283,283,283,283,283,2147483967,2147483975,2147483974,2147483973,2147483972,321,321,324,325,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
21 | 283,283,283,283,283,283,283,321,321,321,321,2147483969,321,321,321,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
22 | 283,283,283,283,283,283,283,2147483971,2147483970,321,321,321,321,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
23 | 283,283,283,283,283,283,283,2147483973,2147483972,321,321,322,323,283,283,283,283,283,283,308,283,283,283,283,283,283,283,283,283,283,283,283, | ||
24 | 283,283,283,283,283,283,2147483957,321,321,321,321,324,325,309,310,311,309,310,311,312,309,310,283,283,283,283,283,283,283,283,283,283, | ||
25 | 283,283,283,283,283,283,2147483961,2147483971,2147483970,2147483969,321,322,323,313,314,315,313,314,315,316,313,314,283,283,283,283,283,283,283,283,283,283, | ||
26 | 283,283,283,283,283,283,2147483974,2147483973,2147483972,2147483969,321,324,325,326,327,328,317,318,319,320,317,318,283,283,283,283,283,283,283,283,283,283, | ||
27 | 283,283,283,283,283,283,283,283,321,321,321,321,321,321,321,321,321,321,321,321,321,283,283,283,283,283,283,283,283,283,283,283, | ||
28 | 283,283,283,283,283,283,283,283,283,321,321,321,321,321,321,321,321,321,321,321,283,283,283,283,283,283,283,283,283,283,283,283, | ||
29 | 283,283,283,283,283,283,283,283,283,283,283,321,321,321,321,321,321,321,321,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
30 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
31 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
32 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
33 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
34 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
35 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
36 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283, | ||
37 | 283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283,283 | ||
38 | </data> | ||
39 | </layer> | ||
40 | <layer id="3" name="Lower (solid ornamentation)" width="32" height="32"> | ||
41 | <data encoding="csv"> | ||
42 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
43 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
44 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
45 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
46 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
47 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
48 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
49 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
50 | 129,129,129,129,129,129,129,129,283,129,129,129,129,129,335,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
51 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
52 | 129,129,129,129,129,129,129,129,129,129,2147483979,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
53 | 129,129,129,129,129,129,129,129,129,129,2147483981,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
54 | 129,129,129,129,129,129,129,129,129,129,2147483983,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
55 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
56 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
57 | 129,129,129,129,129,129,129,2147483985,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
58 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
59 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
60 | 129,129,129,129,129,129,129,2147483983,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
61 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
62 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
63 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
64 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
65 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
66 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
67 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
68 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
69 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
70 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
71 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
72 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
73 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129 | ||
74 | </data> | ||
75 | </layer> | ||
76 | <objectgroup id="2" name="Objects"> | ||
77 | <object id="1" name="spawn" type="warp" x="280.212" y="352.31"> | ||
78 | <point/> | ||
79 | </object> | ||
80 | <object id="2" name="fish1" type="sprite" x="216.923" y="198.462"> | ||
81 | <properties> | ||
82 | <property name="animation" value="../res/sprites/fish_anim.txt"/> | ||
83 | <property name="collisionHeight" type="int" value="8"/> | ||
84 | <property name="collisionOffsetX" type="int" value="-8"/> | ||
85 | <property name="collisionOffsetY" type="int" value="-8"/> | ||
86 | <property name="collisionWidth" type="int" value="12"/> | ||
87 | <property name="enclosureZone" value="fish1_enclosure"/> | ||
88 | <property name="interactionScript" value="talk_to_fish1"/> | ||
89 | <property name="movementSpeed" type="int" value="1"/> | ||
90 | <property name="shadow" type="bool" value="true"/> | ||
91 | <property name="wander" type="bool" value="true"/> | ||
92 | </properties> | ||
93 | <point/> | ||
94 | </object> | ||
95 | <object id="3" name="fish1_enclosure" type="zone" x="176" y="144" width="80" height="96"/> | ||
96 | </objectgroup> | ||
97 | <layer id="1" name="Upper" width="32" height="32"> | ||
98 | <properties> | ||
99 | <property name="above" type="bool" value="true"/> | ||
100 | </properties> | ||
101 | <data encoding="csv"> | ||
102 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
103 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
104 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
105 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
106 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
107 | 129,129,129,129,129,129,129,129,2147483977,129,129,129,129,129,330,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
108 | 129,129,129,129,129,129,129,129,2147483979,129,129,129,129,129,331,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
109 | 129,129,129,129,129,129,129,129,2147483980,129,129,129,129,129,333,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
110 | 129,129,129,129,129,129,129,129,283,2147483982,129,129,129,129,335,129,129,330,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
111 | 129,129,129,129,129,129,129,129,283,283,2147483984,129,129,129,129,129,129,331,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
112 | 129,129,129,129,129,129,129,129,129,283,2147483979,129,129,129,129,129,129,332,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
113 | 129,129,129,129,129,129,129,129,129,129,2147483981,129,129,129,129,129,334,283,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
114 | 129,129,129,129,129,129,129,2147483977,129,129,2147483983,129,129,129,129,336,283,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
115 | 129,129,129,129,129,129,129,2147483979,129,129,129,129,129,129,129,331,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
116 | 129,129,129,129,129,129,129,2147483981,129,129,129,129,129,129,129,332,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
117 | 129,129,129,129,129,129,129,2147483985,129,129,129,129,129,334,338,283,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
118 | 129,129,129,129,129,129,129,2147483979,129,129,129,129,336,283,283,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
119 | 129,129,129,129,129,129,129,2147483981,129,129,129,129,331,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
120 | 129,129,129,129,283,283,2147483979,2147483983,129,129,129,129,335,129,129,129,129,129,129,129,129,330,129,129,129,129,129,129,129,129,129,129, | ||
121 | 129,129,129,129,129,129,2147483980,129,129,129,129,129,129,129,129,129,129,129,129,129,129,331,129,129,129,129,129,129,129,129,129,129, | ||
122 | 129,129,129,129,129,129,283,2147483982,129,129,129,129,129,129,129,129,129,129,129,129,129,332,129,129,129,129,129,129,129,129,129,129, | ||
123 | 129,129,129,129,129,129,129,283,2147483982,129,129,129,129,129,129,129,129,129,129,129,334,283,129,129,129,129,129,129,129,129,129,129, | ||
124 | 129,129,129,129,129,129,129,129,283,338,2147483982,129,129,129,129,129,129,129,129,334,283,129,129,129,129,129,129,129,129,129,129,129, | ||
125 | 129,129,129,129,129,129,129,129,129,129,283,2147483987,2147483954,306,339,2147483987,2147483954,306,339,283,129,129,129,129,129,129,129,129,129,129,129,129, | ||
126 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
127 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
128 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
129 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
130 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
131 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
132 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, | ||
133 | 129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129 | ||
134 | </data> | ||
135 | </layer> | ||
136 | </map> | ||
diff --git a/res/maps/underwater_tiles.png b/res/maps/underwater_tiles.png new file mode 100644 index 0000000..3841a6f --- /dev/null +++ b/res/maps/underwater_tiles.png | |||
Binary files differ | |||
diff --git a/res/scripts/common.lua b/res/scripts/common.lua index af25333..e95f6f1 100644 --- a/res/scripts/common.lua +++ b/res/scripts/common.lua | |||
@@ -34,6 +34,10 @@ CutsceneOptions = { | |||
34 | DO_NOT_CHANGE_ANIMATION = 1 -- Prevents player party animation being set to "frozen" at the start of a cutscene or "still" at the end | 34 | DO_NOT_CHANGE_ANIMATION = 1 -- Prevents player party animation being set to "frozen" at the start of a cutscene or "still" at the end |
35 | } | 35 | } |
36 | 36 | ||
37 | ChangeMapOptions = { | ||
38 | DO_NOT_FADE = 1 -- Prevents fading to and from black | ||
39 | } | ||
40 | |||
37 | gamestate = {} | 41 | gamestate = {} |
38 | 42 | ||
39 | --- Yields until the specified amount of time has passed. | 43 | --- Yields until the specified amount of time has passed. |
@@ -129,6 +133,11 @@ function GetPosition(spriteName) | |||
129 | return sprite.loc | 133 | return sprite.loc |
130 | end | 134 | end |
131 | 135 | ||
136 | function SetPosition(spriteName, x, y) | ||
137 | local spriteId = getSpriteByAlias(spriteName) | ||
138 | transform():moveSprite(spriteId, vec2i.new(x, y)) | ||
139 | end | ||
140 | |||
132 | function SetDirection(spriteName, dir) | 141 | function SetDirection(spriteName, dir) |
133 | local spriteId = getSpriteByAlias(spriteName) | 142 | local spriteId = getSpriteByAlias(spriteName) |
134 | animation():setSpriteDirection(spriteId, dir) | 143 | animation():setSpriteDirection(spriteId, dir) |
@@ -239,18 +248,24 @@ function SetPartyAnimation(spriteId, animName) | |||
239 | end | 248 | end |
240 | end | 249 | end |
241 | 250 | ||
242 | function ChangeMap(map, warp) | 251 | function ChangeMap(map, warp, options) |
252 | options = options or 0 | ||
253 | |||
243 | local playerId = getPlayerSprite() | 254 | local playerId = getPlayerSprite() |
244 | local playerSprite = getSprite(playerId) | 255 | local playerSprite = getSprite(playerId) |
245 | local direction = playerSprite.dir | 256 | local direction = playerSprite.dir |
246 | 257 | ||
247 | playerSprite.controllable = false | 258 | playerSprite.controllable = false |
248 | FadeToBlack(150) | 259 | if (options & ChangeMapOptions.DO_NOT_FADE == 0) then |
260 | FadeToBlack(150) | ||
261 | end | ||
249 | loadMap(map) | 262 | loadMap(map) |
250 | character():transplantParty(playerId, getWarpPoint(warp), direction) | 263 | character():transplantParty(playerId, getWarpPoint(warp), direction) |
251 | 264 | ||
252 | coroutine.yield() | 265 | coroutine.yield() |
253 | RemoveFadeout(150) | 266 | if (options & ChangeMapOptions.DO_NOT_FADE == 0) then |
267 | RemoveFadeout(150) | ||
268 | end | ||
254 | playerSprite.controllable = true | 269 | playerSprite.controllable = true |
255 | end | 270 | end |
256 | 271 | ||
diff --git a/res/scripts/hallucination_hot_spring.lua b/res/scripts/hallucination_hot_spring.lua index df4084c..4e3ca44 100644 --- a/res/scripts/hallucination_hot_spring.lua +++ b/res/scripts/hallucination_hot_spring.lua | |||
@@ -15,15 +15,20 @@ end | |||
15 | 15 | ||
16 | function hallucination_hot_spring.enter_hot_spring() | 16 | function hallucination_hot_spring.enter_hot_spring() |
17 | if gamestate.ionia_in_water then | 17 | if gamestate.ionia_in_water then |
18 | StartCutscene(CutsceneOptions.DO_NOT_CHANGE_ANIMATION) | 18 | -- Soft cutscene start; don't show bars but do take away control |
19 | getSprite(getPlayerSprite()).controllable = false | ||
20 | character():halt(getPlayerSprite()) | ||
21 | |||
22 | -- Leave the rest of the party behind and have Lucas wade into the hot spring | ||
19 | character():breakUpParty(getPlayerSprite()) | 23 | character():breakUpParty(getPlayerSprite()) |
20 | getSprite(getPlayerSprite()).paused = false | ||
21 | character():moveInDirection(getPlayerSprite(), Direction.UP) | 24 | character():moveInDirection(getPlayerSprite(), Direction.UP) |
22 | Delay(500) | 25 | Delay(500) |
23 | character():stopDirecting(getPlayerSprite()) | 26 | character():stopDirecting(getPlayerSprite()) |
24 | getSprite(getPlayerSprite()).paused = true | ||
25 | SetDirection("lucas", Direction.DOWN) | 27 | SetDirection("lucas", Direction.DOWN) |
26 | Delay(1000) | 28 | Delay(1000) |
29 | |||
30 | -- Show the cutscene bars when he gets surprised | ||
31 | StartCutscene(CutsceneOptions.DO_NOT_CHANGE_ANIMATION) | ||
27 | ShowExpression("lucas", "surprise") | 32 | ShowExpression("lucas", "surprise") |
28 | Delay(1000) | 33 | Delay(1000) |
29 | RemoveExpression("lucas") | 34 | RemoveExpression("lucas") |
@@ -32,6 +37,21 @@ function hallucination_hot_spring.enter_hot_spring() | |||
32 | Delay(200) | 37 | Delay(200) |
33 | PlaySound("splash_submerge.wav") | 38 | PlaySound("splash_submerge.wav") |
34 | WaitForAnimation("lucas") | 39 | WaitForAnimation("lucas") |
40 | Delay(1000) | ||
41 | |||
42 | -- After we fade to black, move the rest of the party offscreen. | ||
43 | -- We need to remove control again right after the map change because | ||
44 | -- ChangeMap automatically gives it back. | ||
45 | FadeToBlack(1000) | ||
46 | HideCutsceneBars() | ||
47 | SetPosition("kuma", -100, -100) | ||
48 | SetPosition("duster", -100, -100) | ||
49 | SetPosition("boney", -100, -100) | ||
50 | ChangeMap("underwater_start", "spawn", ChangeMapOptions.DO_NOT_FADE) | ||
51 | getSprite(getPlayerSprite()).controllable = false | ||
52 | Delay(500) | ||
53 | RemoveFadeout(1000) | ||
54 | getSprite(getPlayerSprite()).controllable = true | ||
35 | end | 55 | end |
36 | end | 56 | end |
37 | 57 | ||
diff --git a/res/scripts/underwater.lua b/res/scripts/underwater.lua index cc6d085..602c8d4 100644 --- a/res/scripts/underwater.lua +++ b/res/scripts/underwater.lua | |||
@@ -1,57 +1,50 @@ | |||
1 | underwater = {} | 1 | underwater = {} |
2 | 2 | ||
3 | function underwater.fish1() | ||
4 | StartCutscene() | ||
5 | DisplayMessage("* You deserved what she did to you.", "Fish", SpeakerType.BOY) | ||
6 | WaitForEndOfMessages() | ||
7 | HideCutsceneBars() | ||
8 | end | ||
9 | |||
10 | function underwater.fish2() | 3 | function underwater.fish2() |
11 | StartCutscene() | 4 | StartCutscene() |
12 | DisplayMessage("* What are you complaining about?\nYou're so powerful now...\n\fYou owe it all to her.", "Fish", SpeakerType.BOY) | 5 | DisplayMessage("* What are you complaining about?\nYou're so powerful now...\n\fYou owe it all to her.", "Fish", SpeakerType.BOY) |
13 | WaitForEndOfMessages() | 6 | WaitForEndOfMessage() |
14 | HideCutsceneBars() | 7 | HideCutsceneBars() |
15 | end | 8 | end |
16 | 9 | ||
17 | function underwater.fish3() | 10 | function underwater.fish3() |
18 | StartCutscene() | 11 | StartCutscene() |
19 | DisplayMessage("* You wanted to become stronger, and now you're stronger. Quit crying.\n\f* Oh wait, that wasn't you.\n\fThat was Claus.\n\fYou were totally willing to stay at home and cry.", "Fish", SpeakerType.BOY) | 12 | DisplayMessage("* You wanted to become stronger, and now you're stronger. Quit crying.\n\f* Oh wait, that wasn't you.\n\fThat was Claus.\n\fYou were totally willing to stay at home and cry.", "Fish", SpeakerType.BOY) |
20 | WaitForEndOfMessages() | 13 | WaitForEndOfMessage() |
21 | HideCutsceneBars() | 14 | HideCutsceneBars() |
22 | end | 15 | end |
23 | 16 | ||
24 | function underwater.fish4() | 17 | function underwater.fish4() |
25 | StartCutscene() | 18 | StartCutscene() |
26 | DisplayMessage("* You think it hurt when your PSI unlocked?\n\fJust picture what it was like for Claus.", "Fish", SpeakerType.BOY) | 19 | DisplayMessage("* You think it hurt when your PSI unlocked?\n\fJust picture what it was like for Claus.", "Fish", SpeakerType.BOY) |
27 | WaitForEndOfMessages() | 20 | WaitForEndOfMessage() |
28 | HideCutsceneBars() | 21 | HideCutsceneBars() |
29 | end | 22 | end |
30 | 23 | ||
31 | function underwater.fish5() | 24 | function underwater.fish5() |
32 | StartCutscene() | 25 | StartCutscene() |
33 | DisplayMessage("* What did Aeolia do to your brother?\n\fStrangle him?\n\fPush him down a flight of stairs?\n\fMaybe it was in the hot spring just like you.", "Fish", SpeakerType.BOY) | 26 | DisplayMessage("* What did Aeolia do to your brother?\n\fStrangle him?\n\fPush him down a flight of stairs?\n\fMaybe it was in the hot spring just like you.", "Fish", SpeakerType.BOY) |
34 | WaitForEndOfMessages() | 27 | WaitForEndOfMessage() |
35 | HideCutsceneBars() | 28 | HideCutsceneBars() |
36 | end | 29 | end |
37 | 30 | ||
38 | function underwater.fish6() | 31 | function underwater.fish6() |
39 | StartCutscene() | 32 | StartCutscene() |
40 | DisplayMessage("* Still, you're probably eager to get your revenge. You don't fool me.\n\f* You have everyone else fooled but you can't fool yourself.", "Fish", SpeakerType.BOY) | 33 | DisplayMessage("* Still, you're probably eager to get your revenge. You don't fool me.\n\f* You have everyone else fooled but you can't fool yourself.", "Fish", SpeakerType.BOY) |
41 | WaitForEndOfMessages() | 34 | WaitForEndOfMessage() |
42 | HideCutsceneBars() | 35 | HideCutsceneBars() |
43 | end | 36 | end |
44 | 37 | ||
45 | function underwater.fish7() | 38 | function underwater.fish7() |
46 | StartCutscene() | 39 | StartCutscene() |
47 | DisplayMessage("* There's only three left.\nAnd after Mixolydia, it'll be her.", "Fish", SpeakerType.BOY) | 40 | DisplayMessage("* There's only three left.\nAnd after Mixolydia, it'll be her.", "Fish", SpeakerType.BOY) |
48 | WaitForEndOfMessages() | 41 | WaitForEndOfMessage() |
49 | HideCutsceneBars() | 42 | HideCutsceneBars() |
50 | end | 43 | end |
51 | 44 | ||
52 | function underwater.fish8() | 45 | function underwater.fish8() |
53 | StartCutscene() | 46 | StartCutscene() |
54 | DisplayMessage("* I bet you can't wait to wrap your hands around her needle,\n\fand\n\fpull\n\fas\n\fhard\n\fas\n\fyou\n\fcan.", "Fish", SpeakerType.BOY) | 47 | DisplayMessage("* I bet you can't wait to wrap your hands around her needle,\n\fand\n\fpull\n\fas\n\fhard\n\fas\n\fyou\n\fcan.", "Fish", SpeakerType.BOY) |
55 | WaitForEndOfMessages() | 48 | WaitForEndOfMessage() |
56 | HideCutsceneBars() | 49 | HideCutsceneBars() |
57 | end | 50 | end |
diff --git a/res/scripts/underwater_start.lua b/res/scripts/underwater_start.lua new file mode 100644 index 0000000..fe582ab --- /dev/null +++ b/res/scripts/underwater_start.lua | |||
@@ -0,0 +1,8 @@ | |||
1 | underwater_start = {} | ||
2 | |||
3 | function underwater_start.talk_to_fish1() | ||
4 | StartCutscene() | ||
5 | DisplayMessage("* You deserved what she did to you.", "Fish", SpeakerType.BOY) | ||
6 | WaitForEndOfMessage() | ||
7 | HideCutsceneBars() | ||
8 | end \ No newline at end of file | ||
diff --git a/src/character_system.cpp b/src/character_system.cpp index d18c592..a24bdcc 100644 --- a/src/character_system.cpp +++ b/src/character_system.cpp | |||
@@ -46,10 +46,12 @@ void CharacterSystem::addSpriteToParty(int leaderId, int followerId) { | |||
46 | void CharacterSystem::transplantParty(int leaderId, vec2i pos, Direction dir) { | 46 | void CharacterSystem::transplantParty(int leaderId, vec2i pos, Direction dir) { |
47 | Sprite& leader = game_.getSprite(leaderId); | 47 | Sprite& leader = game_.getSprite(leaderId); |
48 | CharacterState oldState = leader.characterState; | 48 | CharacterState oldState = leader.characterState; |
49 | CharacterMedium newMedium = game_.getSystem<TransformSystem>().getMediumAtPosition(leaderId, pos); | ||
49 | 50 | ||
50 | std::vector<int> followers = leader.followers; | 51 | std::vector<int> followers = leader.followers; |
51 | leader.followers.clear(); | 52 | leader.followers.clear(); |
52 | leader.trailsAreHalved = false; | 53 | leader.trailsAreHalved = false; |
54 | leader.characterMedium = newMedium; | ||
53 | 55 | ||
54 | game_.getSystem<TransformSystem>().moveSprite(leaderId, pos); | 56 | game_.getSystem<TransformSystem>().moveSprite(leaderId, pos); |
55 | game_.getSystem<AnimationSystem>().setSpriteDirection(leaderId, dir); | 57 | game_.getSystem<AnimationSystem>().setSpriteDirection(leaderId, dir); |
@@ -60,6 +62,7 @@ void CharacterSystem::transplantParty(int leaderId, vec2i pos, Direction dir) { | |||
60 | 62 | ||
61 | game_.getSystem<TransformSystem>().moveSprite(followerId, pos); | 63 | game_.getSystem<TransformSystem>().moveSprite(followerId, pos); |
62 | game_.getSystem<AnimationSystem>().setSpriteDirection(followerId, dir); | 64 | game_.getSystem<AnimationSystem>().setSpriteDirection(followerId, dir); |
65 | follower.characterMedium = newMedium; | ||
63 | addSpriteToParty(leaderId, followerId); | 66 | addSpriteToParty(leaderId, followerId); |
64 | } | 67 | } |
65 | 68 | ||
diff --git a/src/script_system.cpp b/src/script_system.cpp index 0d82436..31b8bee 100644 --- a/src/script_system.cpp +++ b/src/script_system.cpp | |||
@@ -17,6 +17,7 @@ ScriptSystem::ScriptSystem(Game& game) : game_(game) { | |||
17 | 17 | ||
18 | engine_.new_usertype<vec2i>( | 18 | engine_.new_usertype<vec2i>( |
19 | "vec2i", | 19 | "vec2i", |
20 | sol::constructors<vec2i(int, int)>(), | ||
20 | "x", [] (const vec2i& v) { return v.x(); }, | 21 | "x", [] (const vec2i& v) { return v.x(); }, |
21 | "y", [] (const vec2i& v) { return v.y(); }); | 22 | "y", [] (const vec2i& v) { return v.y(); }); |
22 | 23 | ||
@@ -70,7 +71,8 @@ ScriptSystem::ScriptSystem(Game& game) : game_(game) { | |||
70 | "initSprite", [] (TransformSystem& transform, int spriteId, int x, int y, SpriteLayer layer) { | 71 | "initSprite", [] (TransformSystem& transform, int spriteId, int x, int y, SpriteLayer layer) { |
71 | transform.initSprite(spriteId, vec2i{x, y}, layer); | 72 | transform.initSprite(spriteId, vec2i{x, y}, layer); |
72 | }, | 73 | }, |
73 | "undoCollision", &TransformSystem::undoCollision); | 74 | "undoCollision", &TransformSystem::undoCollision, |
75 | "moveSprite", &TransformSystem::moveSprite); | ||
74 | 76 | ||
75 | engine_.new_usertype<EffectSystem>( | 77 | engine_.new_usertype<EffectSystem>( |
76 | "effect", | 78 | "effect", |