diff options
author | Kelly Rauchenberger <fefferburbia@gmail.com> | 2021-02-26 16:47:24 -0500 |
---|---|---|
committer | Kelly Rauchenberger <fefferburbia@gmail.com> | 2021-02-26 16:47:24 -0500 |
commit | d5e3bc615b300eb985d59b91ebd1f2f1a4d4e107 (patch) | |
tree | 7356a6796ff166a85b8f7accb20e82596f200a63 | |
parent | 46bf85e7b85b8d3e61f0d2b276450c4f439b5c30 (diff) | |
download | tanetane-d5e3bc615b300eb985d59b91ebd1f2f1a4d4e107.tar.gz tanetane-d5e3bc615b300eb985d59b91ebd1f2f1a4d4e107.tar.bz2 tanetane-d5e3bc615b300eb985d59b91ebd1f2f1a4d4e107.zip |
Added first underwater map
Also spruced up the event that takes you there. Also fixed an issue where transplantParty wouldn't take the medium of the new position into consideration. Also added a constructor to the lua version of vec2i.
-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", |