Advertisement
Guest User

Untitled

a guest
Apr 22nd, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 123.31 KB | None | 0 0
  1.  
  2. include names.h
  3.  
  4. include quotes.m32
  5.  
  6. include keys.m32
  7.  
  8. gamevar i 0 1 // per-block (top-level, event, or state) variable
  9. gamevar j 0 1
  10. gamevar k 0 1
  11. gamevar k 0 1
  12. gamevar l 0 1
  13.  
  14. var ENEMY_ANIM1 0 2
  15. var ENEMY_ANIM2 0 2
  16.  
  17. gamevar p 0 1
  18. gamevar r 0 1
  19.  
  20. gamevar z 0 0
  21.  
  22. gamevar cinbars 0 0
  23.  
  24. gamevar dx 0 0
  25. gamevar dy 0 0
  26. gamevar dz 0 0
  27. gamevar dang 0 0
  28.  
  29. gamevar tmp 0 0
  30. gamevar cnt 0 0
  31.  
  32. gamevar sec 0 0
  33. gamevar wal 0 0
  34.  
  35. gamevar drawcol 9 0
  36.  
  37. gamevar tmp2 0 0
  38.  
  39. gamevar LOTAG 0 1
  40. gamevar HITAG 0 1
  41. gamevar EXTRA 0 1
  42. gamevar XVEL 0 1
  43. gamevar YVEL 0 0
  44. gamevar ZVEL 0 1
  45.  
  46. gamevar m 0 1
  47.  
  48. gamevar TEMP 0 0
  49. gamevar TEMP2 0 0
  50. gamevar TEMP3 0 0
  51. gamevar TEMP4 0 0
  52. gamevar TEMP5 0 0
  53. gamevar TEMP6 0 0
  54.  
  55. gamevar davr 65536 0
  56. gamevar dayx 65536 0
  57.  
  58. gamevar drawcol 9 0
  59.  
  60. gamevar PICNUM 0 0
  61.  
  62. gamevar pal 0 0
  63. gamevar shade 0 0
  64.  
  65. gamevar x 0 0
  66. gamevar y 0 0
  67.  
  68. gamearray ar 128
  69. gamearray parm 8
  70.  
  71. define TQUOTE 3
  72.  
  73. defstate cmp_by_lotag
  74. set RETURN sprite[SV2].lotag
  75. sub RETURN sprite[SV1].lotag
  76. ends
  77.  
  78. // LOCATORS auto-incrementer
  79. onevent EVENT_INSERTSPRITE2D
  80. set k I
  81. set j -1
  82. for i spritesofsector .sectnum
  83. {
  84. ifn i k, ifactor LOCATORS, ifg .lotag j
  85. set j .lotag
  86. }
  87. ifg j -1
  88. {
  89. add j 1
  90. set .lotag j
  91. }
  92. endevent
  93.  
  94.  
  95. onevent EVENT_LINKTAGS
  96.  
  97. ife sprite[searchwall].picnum DOORTRANSPORT // DOOR TRANSPORT
  98. {
  99. setvar RETURN 1
  100. }
  101.  
  102. ife sprite[searchwall].picnum DOORTRANSPORT // DOOR TRANSPORT
  103. {
  104. setvar RETURN 1
  105. }
  106.  
  107. endevent
  108.  
  109. // Whether RESPAWN sprites show the respawned sprite picnum unconditionally instead of
  110. // only when aimed at (and locked onto) the RESPAWN sprite in 3D mode.
  111. gamevar showrespawn_always 1 0
  112. // When set to 1, previewed sprites are 66% translucent instead of 33%:
  113. gamevar showrespawn_fulltrans 1 0
  114.  
  115.  
  116. onevent EVENT_ANALYZESPRITES
  117.  
  118.  
  119. var ts ow pic z
  120. var k onumtspr
  121.  
  122. ife showrespawn_always 0
  123. {
  124. ifaimingsprite ife sprite[searchwall].picnum RESPAWN nullop
  125. else break
  126. }
  127.  
  128.  
  129. set onumtspr spritesortcnt
  130.  
  131. for ts range onumtspr
  132. {
  133. set ow tsprite[ts].owner
  134. ife showrespawn_always 0 ifn ow searchwall nullop else
  135. {
  136. ife sprite[ow].picnum RESPAWN
  137. {
  138. set k spritesortcnt
  139. tdupsprite ow
  140.  
  141. // XXX: doesn't work with E1L5 boss RESPAWN...
  142. // Something's wrong with setting tsprite[] members.
  143. sub tsprite[k].z 4096
  144.  
  145. set tsprite[k].xrepeat 32
  146. set tsprite[k].yrepeat 32
  147.  
  148. set pic sprite[ow].hitag
  149. ifge pic 0 ifl pic MAXTILES
  150. set tsprite[k].picnum pic
  151.  
  152. and tsprite[k].cstat 0xfffffdff // clear bit 512 (reverse translucency)
  153. or tsprite[k].cstat 2 // set bit 2 (33% translucency)
  154. ifvarn showrespawn_fulltrans 0
  155. or tsprite[k].cstat 512
  156. }
  157.  
  158. ife sprite[ow].picnum SPRITE_DETECT
  159. {
  160. set k spritesortcnt
  161. tdupsprite ow
  162.  
  163. // XXX: doesn't work with E1L5 boss RESPAWN...
  164. // Something's wrong with setting tsprite[] members.
  165. sub tsprite[k].z 4096
  166.  
  167. set tsprite[k].xrepeat 32
  168. set tsprite[k].yrepeat 32
  169.  
  170. ife sprite[ow].pal 0 set pic BATTERY_SPRITE
  171. ifge pic 0 ifl pic MAXTILES
  172. set tsprite[k].picnum pic
  173.  
  174. and tsprite[k].cstat 0xfffffdff // clear bit 512 (reverse translucency)
  175. or tsprite[k].cstat 2 // set bit 2 (33% translucency)
  176. ifvarn showrespawn_fulltrans 0
  177. or tsprite[k].cstat 512
  178. }
  179.  
  180. ife sprite[ow].picnum 14
  181. {
  182. set k spritesortcnt
  183. tdupsprite ow
  184.  
  185. // XXX: doesn't work with E1L5 boss RESPAWN...
  186. // Something's wrong with setting tsprite[] members.
  187. sub tsprite[k].z 4096
  188.  
  189. set tsprite[k].xrepeat 32
  190. set tsprite[k].yrepeat 32
  191.  
  192. set pic sprite[ow].hitag
  193. ifge pic 0 ifl pic MAXTILES
  194. set tsprite[k].picnum pic
  195.  
  196. and tsprite[k].cstat 0xfffffdff // clear bit 512 (reverse translucency)
  197. or tsprite[k].cstat 2 // set bit 2 (33% translucency)
  198. ifvarn showrespawn_fulltrans 0
  199. or tsprite[k].cstat 512
  200. }
  201.  
  202.  
  203. ife sprite[ow].picnum 16011
  204. {
  205. set k spritesortcnt
  206. tdupsprite ow
  207.  
  208. // XXX: doesn't work with E1L5 boss RESPAWN...
  209. // Something's wrong with setting tsprite[] members.
  210. sub tsprite[k].z 4096
  211.  
  212. set tsprite[k].xrepeat 32
  213. set tsprite[k].yrepeat 32
  214.  
  215. set pic sprite[ow].hitag
  216. ifge pic 0 ifl pic MAXTILES
  217. set tsprite[k].picnum pic
  218.  
  219. and tsprite[k].cstat 0xfffffdff // clear bit 512 (reverse translucency)
  220. or tsprite[k].cstat 2 // set bit 2 (33% translucency)
  221. ifvarn showrespawn_fulltrans 0
  222. or tsprite[k].cstat 512
  223. }
  224.  
  225.  
  226. ife sprite[ow].picnum 2001
  227. {
  228. set sprite[ow].xrepeat 40
  229. set sprite[ow].yrepeat 40
  230. }
  231.  
  232. ife sprite[ow].picnum 1232
  233. {
  234. set pic sprite[ow].lotag
  235. ifvarg pic 0
  236. {
  237. set k spritesortcnt
  238. tdupsprite ow
  239.  
  240. // XXX: doesn't work with E1L5 boss RESPAWN...
  241. // Something's wrong with setting tsprite[] members.
  242. sub tsprite[k].z 6096
  243.  
  244. set tsprite[k].xrepeat 32
  245. set tsprite[k].yrepeat 32
  246.  
  247.  
  248.  
  249. ifl pic MAXTILES
  250. set tsprite[k].picnum pic
  251.  
  252. and tsprite[k].cstat 0xfffffdff // clear bit 512 (reverse translucency)
  253. or tsprite[k].cstat 2 // set bit 2 (33% translucency)
  254. }
  255. }
  256.  
  257. ife sprite[ow].picnum 23761
  258. {
  259. set pic sprite[ow].hitag
  260. ifvarg pic 0
  261. {
  262. set k spritesortcnt
  263. tdupsprite ow
  264.  
  265. // XXX: doesn't work with E1L5 boss RESPAWN...
  266. // Something's wrong with setting tsprite[] members.
  267. sub tsprite[k].z 6096
  268.  
  269. set tsprite[k].xrepeat 32
  270. set tsprite[k].yrepeat 32
  271.  
  272.  
  273.  
  274. ifl pic MAXTILES
  275. set tsprite[k].picnum pic
  276.  
  277. and tsprite[k].cstat 0xfffffdff // clear bit 512 (reverse translucency)
  278. or tsprite[k].cstat 2 // set bit 2 (33% translucency)
  279. }
  280. }
  281.  
  282. ife sprite[ow].picnum 4087
  283. {
  284. set pic sprite[ow].hitag
  285. ifvarg pic 0
  286. {
  287. set k spritesortcnt
  288. tdupsprite ow
  289.  
  290. // XXX: doesn't work with E1L5 boss RESPAWN...
  291. // Something's wrong with setting tsprite[] members.
  292. sub tsprite[k].z 12096
  293.  
  294. set tsprite[k].xrepeat 32
  295. set tsprite[k].yrepeat 32
  296.  
  297.  
  298.  
  299. ifl pic MAXTILES
  300. set tsprite[k].picnum pic
  301.  
  302. and tsprite[k].cstat 0xfffffdff // clear bit 512 (reverse translucency)
  303. or tsprite[k].cstat 2 // set bit 2 (33% translucency)
  304. }
  305. }
  306.  
  307. ife sprite[ow].picnum FIRSTGUNSPRITE
  308. {
  309. set k spritesortcnt
  310. tdupsprite ow
  311.  
  312. // XXX: doesn't work with E1L5 boss RESPAWN...
  313. // Something's wrong with setting tsprite[] members.
  314. sub tsprite[k].z 4096
  315.  
  316. set tsprite[k].xrepeat 32
  317. set tsprite[k].yrepeat 32
  318.  
  319. ife sprite[ow].xvel 0 setvar pic 3587
  320. ife sprite[ow].xvel 1 setvar pic 5245
  321. ife sprite[ow].xvel 2 setvar pic 5501
  322. ife sprite[ow].xvel 4 setvar pic 6400
  323. ife sprite[ow].xvel 8 setvar pic 6013
  324. ife sprite[ow].xvel 16 setvar pic 6336
  325. ife sprite[ow].xvel 32 setvar pic 6656
  326. ife sprite[ow].xvel 64 setvar pic 6429
  327. ife sprite[ow].xvel 128 setvar pic 6912
  328. ife sprite[ow].xvel 256 setvar pic 16384
  329. ifge pic 0 ifl pic MAXTILES
  330. set tsprite[k].picnum pic
  331.  
  332. and tsprite[k].cstat 0xfffffdff // clear bit 512 (reverse translucency)
  333. or tsprite[k].cstat 2 // set bit 2 (33% translucency)
  334. }
  335.  
  336. ife sprite[ow].picnum SHOTGUNSPRITE
  337. {
  338. set k spritesortcnt
  339. tdupsprite ow
  340.  
  341. // XXX: doesn't work with E1L5 boss RESPAWN...
  342. // Something's wrong with setting tsprite[] members.
  343. sub tsprite[k].z 4096
  344.  
  345. set tsprite[k].xrepeat 32
  346. set tsprite[k].yrepeat 32
  347.  
  348. ife sprite[ow].xvel 0 setvar pic 3587
  349. ife sprite[ow].xvel 1 setvar pic 5245
  350. ife sprite[ow].xvel 2 setvar pic 5501
  351. ife sprite[ow].xvel 4 setvar pic 6400
  352. ife sprite[ow].xvel 8 setvar pic 6013
  353. ife sprite[ow].xvel 16 setvar pic 6336
  354. ife sprite[ow].xvel 32 setvar pic 6656
  355. ife sprite[ow].xvel 64 setvar pic 6429
  356. ife sprite[ow].xvel 128 setvar pic 6912
  357. ife sprite[ow].xvel 256 setvar pic 16384
  358. ifge pic 0 ifl pic MAXTILES
  359. set tsprite[k].picnum pic
  360.  
  361. and tsprite[k].cstat 0xfffffdff // clear bit 512 (reverse translucency)
  362. or tsprite[k].cstat 2 // set bit 2 (33% translucency)
  363. }
  364.  
  365.  
  366. }
  367. }
  368.  
  369. for i drawnsprites
  370. {
  371. set j tsprite[i].owner
  372. switch sprite[j].picnum
  373. case 8960
  374. set sprite[j].xrepeat 33
  375. set sprite[j].yrepeat 33
  376. break
  377. case 8689
  378. set sprite[j].xrepeat 32
  379. set sprite[j].yrepeat 32
  380. break
  381. case WASP_DRONE
  382. set sprite[j].xrepeat 24
  383. set sprite[j].yrepeat 24
  384. break
  385. case GORILLA
  386. ife ENEMY_ANIM2 1 cactor 22785
  387. ife ENEMY_ANIM2 2 cactor 22790
  388. ife ENEMY_ANIM2 3 cactor 22795
  389. ife ENEMY_ANIM2 0 cactor 22800
  390. ife sprite[j].pal 10
  391. {
  392. set sprite[j].xrepeat 50
  393. set sprite[j].yrepeat 50
  394. }
  395. else
  396. ife sprite[j].pal 13
  397. {
  398. set sprite[j].xrepeat 50
  399. set sprite[j].yrepeat 50
  400. }
  401. else
  402. ife sprite[j].pal 24
  403. {
  404. set sprite[j].xrepeat 45
  405. set sprite[j].yrepeat 45
  406. }
  407. else
  408. {
  409. set sprite[j].xrepeat 40
  410. set sprite[j].yrepeat 40
  411. }
  412. break
  413. case GORILLA_STAYPUT
  414. ife ENEMY_ANIM2 1 cactor 22786
  415. ife ENEMY_ANIM2 2 cactor 22791
  416. ife ENEMY_ANIM2 3 cactor 22796
  417. ife ENEMY_ANIM2 0 cactor 22801
  418. ife sprite[j].pal 10
  419. {
  420. set sprite[j].xrepeat 50
  421. set sprite[j].yrepeat 50
  422. }
  423. else
  424. ife sprite[j].pal 13
  425. {
  426. set sprite[j].xrepeat 50
  427. set sprite[j].yrepeat 50
  428. }
  429. else
  430. ife sprite[j].pal 24
  431. {
  432. set sprite[j].xrepeat 45
  433. set sprite[j].yrepeat 45
  434. }
  435. else
  436. {
  437. set sprite[j].xrepeat 40
  438. set sprite[j].yrepeat 40
  439. }
  440. break
  441. case NAZI
  442. ife ENEMY_ANIM2 1 cactor 22887
  443. ife ENEMY_ANIM2 2 cactor 22892
  444. ife ENEMY_ANIM2 3 cactor 22897
  445. ife ENEMY_ANIM2 0 cactor 22902
  446. set sprite[j].xrepeat 17
  447. set sprite[j].yrepeat 17
  448. break
  449. case NAZI_STAYPUT
  450. ife ENEMY_ANIM2 1 cactor 22888
  451. ife ENEMY_ANIM2 2 cactor 22893
  452. ife ENEMY_ANIM2 3 cactor 22898
  453. ife ENEMY_ANIM2 0 cactor 22903
  454. set sprite[j].xrepeat 17
  455. set sprite[j].yrepeat 17
  456. break
  457. case FASCIST
  458. ife ENEMY_ANIM2 1 cactor 13076
  459. ife ENEMY_ANIM2 2 cactor 13061
  460. ife ENEMY_ANIM2 3 cactor 13066
  461. ife ENEMY_ANIM2 0 cactor 13071
  462. ife sprite[j].pal 0 set sprite[j].pal 22
  463. set sprite[j].xrepeat 38
  464. set sprite[j].yrepeat 38
  465. break
  466. case FASCIST_STAYPUT
  467. ife ENEMY_ANIM2 1 cactor 13077
  468. ife ENEMY_ANIM2 2 cactor 13062
  469. ife ENEMY_ANIM2 3 cactor 13067
  470. ife ENEMY_ANIM2 0 cactor 13072
  471. ife sprite[j].pal 0 set sprite[j].pal 22
  472. set sprite[j].xrepeat 38
  473. set sprite[j].yrepeat 38
  474. break
  475. case 13061
  476. case 13062
  477. case 13063
  478. case 13066
  479. case 13071
  480. case 13079
  481. case 13080
  482. case 13082
  483. case 13086
  484. case 13087
  485. ife sprite[j].pal 0 set sprite[j].pal 22
  486. set sprite[j].xrepeat 38
  487. set sprite[j].yrepeat 38
  488. break
  489. case 22877
  490. set sprite[j].xrepeat 40
  491. set sprite[j].yrepeat 40
  492. break
  493. case CULTIST
  494. ife ENEMY_ANIM2 1 cactor 7680
  495. ife ENEMY_ANIM2 2 cactor 7685
  496. ife ENEMY_ANIM2 3 cactor 7690
  497. ife ENEMY_ANIM2 0 cactor 7695
  498. ife sprite[j].pal 0 set sprite[j].pal 15
  499. set sprite[j].xrepeat 28
  500. set sprite[j].yrepeat 28
  501. break
  502. case CULTISTSTAYPUT
  503. ife ENEMY_ANIM2 1 cactor 7681
  504. ife ENEMY_ANIM2 2 cactor 7686
  505. ife ENEMY_ANIM2 3 cactor 7691
  506. ife ENEMY_ANIM2 0 cactor 7696
  507. ife sprite[j].pal 0 set sprite[j].pal 15
  508. set sprite[j].xrepeat 28
  509. set sprite[j].yrepeat 28
  510. break
  511. case CULTISTJUMP
  512. ife ENEMY_ANIM2 1 cactor 7706
  513. ife ENEMY_ANIM2 2 cactor 7711
  514. ife ENEMY_ANIM2 3 cactor 7716
  515. ife ENEMY_ANIM2 0 cactor 7721
  516. ife sprite[j].pal 0 set sprite[j].pal 15
  517. set sprite[j].xrepeat 28
  518. set sprite[j].yrepeat 28
  519. break
  520. case LOST
  521. ife ENEMY_ANIM2 1 cactor 9728
  522. ife ENEMY_ANIM2 2 cactor 9743
  523. ife ENEMY_ANIM2 3 cactor 9728
  524. ife ENEMY_ANIM2 0 cactor 9743
  525. set sprite[j].xrepeat 32
  526. set sprite[j].yrepeat 32
  527. break
  528. case SORCERER
  529. ife ENEMY_ANIM2 1 cactor 9772
  530. ife ENEMY_ANIM2 2 cactor 9777
  531. ife ENEMY_ANIM2 3 cactor 9772
  532. ife ENEMY_ANIM2 0 cactor 9777
  533. set sprite[j].xrepeat 40
  534. set sprite[j].yrepeat 40
  535. ife sprite[j].pal 0 set sprite[j].pal 21
  536. break
  537. case CYBERCULTIST
  538. ife ENEMY_ANIM2 1 cactor 19969
  539. ife ENEMY_ANIM2 2 cactor 19974
  540. ife ENEMY_ANIM2 3 cactor 19979
  541. ife ENEMY_ANIM2 0 cactor 19984
  542. set sprite[j].xrepeat 36
  543. set sprite[j].yrepeat 36
  544. ife sprite[j].pal 0 set sprite[j].pal 20
  545. break
  546. case CYBERCULTISTSTAYPUT
  547. ife ENEMY_ANIM2 1 cactor 19970
  548. ife ENEMY_ANIM2 2 cactor 19975
  549. ife ENEMY_ANIM2 3 cactor 19980
  550. ife ENEMY_ANIM2 0 cactor 19985
  551. set sprite[j].xrepeat 36
  552. set sprite[j].yrepeat 36
  553. ife sprite[j].pal 0 set sprite[j].pal 20
  554. break
  555. case CYBERCULTISTJUMP
  556. ife ENEMY_ANIM2 1 cactor 19995
  557. ife ENEMY_ANIM2 2 cactor 20000
  558. ife ENEMY_ANIM2 3 cactor 20005
  559. ife ENEMY_ANIM2 0 cactor 20010
  560. set sprite[j].xrepeat 36
  561. set sprite[j].yrepeat 36
  562. ife sprite[j].pal 0 set sprite[j].pal 20
  563. break
  564. case ZOMBIE
  565. ife ENEMY_ANIM2 1 cactor 9869
  566. ife ENEMY_ANIM2 2 cactor 9874
  567. ife ENEMY_ANIM2 3 cactor 9879
  568. ife ENEMY_ANIM2 0 cactor 9884
  569. set sprite[j].xrepeat 38
  570. set sprite[j].yrepeat 38
  571. break
  572. case ZPIGCOP
  573. ife ENEMY_ANIM2 1 cactor 16775
  574. ife ENEMY_ANIM2 2 cactor 16780
  575. ife ENEMY_ANIM2 3 cactor 16785
  576. ife ENEMY_ANIM2 0 cactor 16790
  577. set sprite[j].xrepeat 40
  578. set sprite[j].yrepeat 40
  579. break
  580. case ZPIGCOP_STAYPUT
  581. ife ENEMY_ANIM2 1 cactor 16776
  582. ife ENEMY_ANIM2 2 cactor 16781
  583. ife ENEMY_ANIM2 3 cactor 16786
  584. ife ENEMY_ANIM2 0 cactor 16791
  585. set sprite[j].xrepeat 40
  586. set sprite[j].yrepeat 40
  587. break
  588. case SPIDER2
  589. ife ENEMY_ANIM2 1 cactor 23510
  590. ife ENEMY_ANIM2 2 cactor 23495
  591. ife ENEMY_ANIM2 3 cactor 23500
  592. ife ENEMY_ANIM2 0 cactor 23505
  593. ife sprite[j].pal 11
  594. {
  595. set sprite[j].xrepeat 24
  596. set sprite[j].yrepeat 24
  597. }
  598. else
  599. ife sprite[j].pal 21
  600. {
  601. set sprite[j].xrepeat 16
  602. set sprite[j].yrepeat 16
  603. }
  604. else
  605. ife sprite[j].pal 36
  606. {
  607. set sprite[j].xrepeat 40
  608. set sprite[j].yrepeat 40
  609. }
  610. else
  611. ife sprite[j].pal 12
  612. {
  613. set sprite[j].xrepeat 60
  614. set sprite[j].yrepeat 60
  615. }
  616. else
  617. {
  618. set sprite[j].xrepeat 36
  619. set sprite[j].yrepeat 36
  620. }
  621. break
  622. case CHRYSSALID
  623. ife ENEMY_ANIM2 1 cactor 24200
  624. ife ENEMY_ANIM2 2 cactor 24205
  625. ife ENEMY_ANIM2 3 cactor 24210
  626. ife ENEMY_ANIM2 0 cactor 24215
  627. set sprite[j].xrepeat 28
  628. set sprite[j].yrepeat 28
  629. break
  630. case SHAMBLER
  631. ife ENEMY_ANIM2 1 cactor 24345
  632. ife ENEMY_ANIM2 2 cactor 24330
  633. ife ENEMY_ANIM2 3 cactor 24335
  634. ife ENEMY_ANIM2 0 cactor 24340
  635. set sprite[j].xrepeat 60
  636. set sprite[j].yrepeat 60
  637. break
  638. case MERC
  639. ife ENEMY_ANIM2 1 cactor 8799
  640. ife ENEMY_ANIM2 2 cactor 8804
  641. ife ENEMY_ANIM2 3 cactor 8809
  642. ife ENEMY_ANIM2 0 cactor 8814
  643. set sprite[j].xrepeat 42
  644. set sprite[j].yrepeat 42
  645. break
  646. case MERCSTAYPUT
  647. ife ENEMY_ANIM2 1 cactor 8800
  648. ife ENEMY_ANIM2 2 cactor 8805
  649. ife ENEMY_ANIM2 3 cactor 8810
  650. ife ENEMY_ANIM2 0 cactor 8815
  651. set sprite[j].xrepeat 42
  652. set sprite[j].yrepeat 42
  653. break
  654. case MERC2
  655. ife ENEMY_ANIM2 1 cactor 13640
  656. ife ENEMY_ANIM2 2 cactor 13645
  657. ife ENEMY_ANIM2 3 cactor 13650
  658. ife ENEMY_ANIM2 0 cactor 13655
  659. set sprite[j].xrepeat 46
  660. set sprite[j].yrepeat 46
  661. break
  662. case MERC2STAYPUT
  663. ife ENEMY_ANIM2 1 cactor 13641
  664. ife ENEMY_ANIM2 2 cactor 13646
  665. ife ENEMY_ANIM2 3 cactor 13651
  666. ife ENEMY_ANIM2 0 cactor 13656
  667. set sprite[j].xrepeat 46
  668. set sprite[j].yrepeat 46
  669. break
  670. case LPOWERSUIT
  671. ife ENEMY_ANIM2 1 cactor 8704
  672. ife ENEMY_ANIM2 2 cactor 8709
  673. ife ENEMY_ANIM2 3 cactor 8714
  674. ife ENEMY_ANIM2 0 cactor 8719
  675. set sprite[j].xrepeat 59
  676. set sprite[j].yrepeat 59
  677. break
  678. case LPOWERSUITSTAYPUT
  679. ife ENEMY_ANIM2 1 cactor 8705
  680. ife ENEMY_ANIM2 2 cactor 8710
  681. ife ENEMY_ANIM2 3 cactor 8715
  682. ife ENEMY_ANIM2 0 cactor 8720
  683. set sprite[j].xrepeat 59
  684. set sprite[j].yrepeat 59
  685. break
  686. case TRIAD
  687. ife ENEMY_ANIM2 1 cactor 3926
  688. ife ENEMY_ANIM2 2 cactor 3931
  689. ife ENEMY_ANIM2 3 cactor 3936
  690. ife ENEMY_ANIM2 0 cactor 3941
  691. set sprite[j].xrepeat 28
  692. set sprite[j].yrepeat 28
  693. break
  694. case TRIADSTAYPUT
  695. ife ENEMY_ANIM2 1 cactor 3927
  696. ife ENEMY_ANIM2 2 cactor 3932
  697. ife ENEMY_ANIM2 3 cactor 3937
  698. ife ENEMY_ANIM2 0 cactor 3942
  699. set sprite[j].xrepeat 28
  700. set sprite[j].yrepeat 28
  701. break
  702. case TRIADJUMP
  703. ife ENEMY_ANIM2 1 cactor 3997
  704. ife ENEMY_ANIM2 2 cactor 4002
  705. ife ENEMY_ANIM2 3 cactor 4007
  706. ife ENEMY_ANIM2 0 cactor 3992
  707. set sprite[j].xrepeat 28
  708. set sprite[j].yrepeat 28
  709. break
  710. case NINJA
  711. ife ENEMY_ANIM2 1 cactor 14848
  712. ife ENEMY_ANIM2 2 cactor 14853
  713. ife ENEMY_ANIM2 3 cactor 14858
  714. ife ENEMY_ANIM2 0 cactor 14863
  715. set sprite[j].xrepeat 30
  716. set sprite[j].yrepeat 30
  717. break
  718. case NINJASTAYPUT
  719. ife ENEMY_ANIM2 1 cactor 14849
  720. ife ENEMY_ANIM2 2 cactor 14854
  721. ife ENEMY_ANIM2 3 cactor 14859
  722. ife ENEMY_ANIM2 0 cactor 14864
  723. set sprite[j].xrepeat 30
  724. set sprite[j].yrepeat 30
  725. break
  726. case NINJAJUMP
  727. ife ENEMY_ANIM2 1 cactor 14919
  728. ife ENEMY_ANIM2 2 cactor 14924
  729. ife ENEMY_ANIM2 3 cactor 14929
  730. ife ENEMY_ANIM2 0 cactor 14914
  731. set sprite[j].xrepeat 30
  732. set sprite[j].yrepeat 30
  733. break
  734. case GUARDIAN
  735. ife ENEMY_ANIM2 1 cactor 17783
  736. ife ENEMY_ANIM2 2 cactor 17788
  737. ife ENEMY_ANIM2 3 cactor 17793
  738. ife ENEMY_ANIM2 0 cactor 17798
  739. ife sprite[j].pal 36
  740. {
  741. set sprite[j].xrepeat 50
  742. set sprite[j].yrepeat 50
  743. }
  744. else
  745. {
  746. ife sprite[j].pal 0 spritepal 11
  747. set sprite[j].xrepeat 40
  748. set sprite[j].yrepeat 40
  749. }
  750. break
  751. case GUARDIANSTAYPUT
  752. ife ENEMY_ANIM2 1 cactor 17784
  753. ife ENEMY_ANIM2 2 cactor 17789
  754. ife ENEMY_ANIM2 3 cactor 17794
  755. ife ENEMY_ANIM2 0 cactor 17799
  756. ife sprite[j].pal 36
  757. {
  758. set sprite[j].xrepeat 50
  759. set sprite[j].yrepeat 50
  760. }
  761. else
  762. {
  763. ife sprite[j].pal 0 spritepal 11
  764. set sprite[j].xrepeat 40
  765. set sprite[j].yrepeat 40
  766. }
  767. break
  768. case MAMANO
  769. ife ENEMY_ANIM2 1 cactor 15730
  770. ife ENEMY_ANIM2 2 cactor 15735
  771. ife ENEMY_ANIM2 3 cactor 15740
  772. ife ENEMY_ANIM2 0 cactor 15745
  773. set sprite[j].xrepeat 50
  774. set sprite[j].yrepeat 50
  775.  
  776. break
  777. case MAMANOJUMP
  778. ife ENEMY_ANIM2 1 cactor 15790
  779. ife ENEMY_ANIM2 2 cactor 15795
  780. ife ENEMY_ANIM2 3 cactor 15800
  781. ife ENEMY_ANIM2 3 cactor 15805
  782. set sprite[j].xrepeat 50
  783. set sprite[j].yrepeat 50
  784.  
  785. break
  786. case RIPPER
  787. ife ENEMY_ANIM2 1 cactor 17689
  788. ife ENEMY_ANIM2 2 cactor 17694
  789. ife ENEMY_ANIM2 3 cactor 17699
  790. ife ENEMY_ANIM2 0 cactor 17704
  791. ife sprite[j].pal 50
  792. {
  793. set sprite[j].xrepeat 64
  794. set sprite[j].yrepeat 64
  795. }
  796. else
  797. {
  798. set sprite[j].xrepeat 40
  799. set sprite[j].yrepeat 40
  800. }
  801. break
  802. case RIPPERJUMP
  803. ife ENEMY_ANIM2 1 cactor 17714
  804. ife ENEMY_ANIM2 2 cactor 17719
  805. ife ENEMY_ANIM2 3 cactor 17724
  806. ife ENEMY_ANIM2 0 cactor 17709
  807. ife sprite[j].pal 50
  808. {
  809. set sprite[j].xrepeat 64
  810. set sprite[j].yrepeat 64
  811. }
  812. else
  813. {
  814. set sprite[j].xrepeat 40
  815. set sprite[j].yrepeat 40
  816. }
  817. break
  818. case ANUBIS
  819. ife ENEMY_ANIM2 1 cactor 12544
  820. ife ENEMY_ANIM2 2 cactor 12549
  821. ife ENEMY_ANIM2 3 cactor 12554
  822. ife ENEMY_ANIM2 0 cactor 12559
  823. ife sprite[j].pal 41
  824. {
  825. set sprite[j].xrepeat 45
  826. set sprite[j].yrepeat 45
  827. }
  828. else
  829. {
  830. set sprite[j].xrepeat 32
  831. set sprite[j].yrepeat 32
  832. }
  833. break
  834. case ANUBIS_STAYPUT
  835. ife ENEMY_ANIM2 1 cactor 12545
  836. ife ENEMY_ANIM2 2 cactor 12550
  837. ife ENEMY_ANIM2 3 cactor 12555
  838. ife ENEMY_ANIM2 0 cactor 12560
  839. set sprite[j].xrepeat 32
  840. set sprite[j].yrepeat 32
  841. break
  842. case ANUBIS_MUMMY
  843. ife ENEMY_ANIM2 1 cactor 12727
  844. ife ENEMY_ANIM2 2 cactor 12732
  845. ife ENEMY_ANIM2 3 cactor 12737
  846. ife ENEMY_ANIM2 0 cactor 12742
  847. set sprite[j].xrepeat 22
  848. set sprite[j].yrepeat 22
  849. break
  850. case ANUBIS_MUMMY_STAYPUT
  851. ife ENEMY_ANIM2 1 cactor 12728
  852. ife ENEMY_ANIM2 2 cactor 12733
  853. ife ENEMY_ANIM2 3 cactor 12738
  854. ife ENEMY_ANIM2 0 cactor 12743
  855. set sprite[j].xrepeat 22
  856. set sprite[j].yrepeat 22
  857. break
  858. case SIREN
  859. ife ENEMY_ANIM2 1 cactor 22114
  860. ife ENEMY_ANIM2 2 cactor 22144
  861. ife ENEMY_ANIM2 3 cactor 22114
  862. ife ENEMY_ANIM2 0 cactor 22144
  863. set sprite[j].xrepeat 34
  864. set sprite[j].yrepeat 34
  865. break
  866. case COBRA
  867. ife ENEMY_ANIM2 1 cactor 22840
  868. ife ENEMY_ANIM2 2 cactor 22845
  869. ife ENEMY_ANIM2 3 cactor 22850
  870. ife ENEMY_ANIM2 0 cactor 22855
  871. set sprite[j].xrepeat 45
  872. set sprite[j].yrepeat 45
  873. break
  874. case COBRA_STAYPUT
  875. ife ENEMY_ANIM2 1 cactor 22841
  876. ife ENEMY_ANIM2 2 cactor 22846
  877. ife ENEMY_ANIM2 3 cactor 22851
  878. ife ENEMY_ANIM2 0 cactor 22856
  879. set sprite[j].xrepeat 45
  880. set sprite[j].yrepeat 45
  881. break
  882. case SCORPIONESS
  883. ife ENEMY_ANIM2 1 cactor 22155
  884. ife ENEMY_ANIM2 2 cactor 22160
  885. ife ENEMY_ANIM2 3 cactor 22165
  886. ife ENEMY_ANIM2 0 cactor 22170
  887. ife sprite[j].pal 42
  888. {
  889. set sprite[j].xrepeat 65
  890. set sprite[j].yrepeat 65
  891. }
  892. else
  893. {
  894. set sprite[j].xrepeat 40
  895. set sprite[j].yrepeat 40
  896. }
  897. break
  898. case SCORPIONESS_STAYPUT
  899. ife ENEMY_ANIM2 1 cactor 22156
  900. ife ENEMY_ANIM2 2 cactor 22161
  901. ife ENEMY_ANIM2 3 cactor 22166
  902. ife ENEMY_ANIM2 0 cactor 22171
  903. ife sprite[j].pal 42
  904. {
  905. set sprite[j].xrepeat 65
  906. set sprite[j].yrepeat 65
  907. }
  908. else
  909. {
  910. set sprite[j].xrepeat 40
  911. set sprite[j].yrepeat 40
  912. }
  913. break
  914. case BRUISER
  915. ife ENEMY_ANIM2 1 cactor 7535
  916. ife ENEMY_ANIM2 2 cactor 7540
  917. ife ENEMY_ANIM2 3 cactor 7545
  918. ife ENEMY_ANIM2 0 cactor 7550
  919. ife sprite[j].pal 24
  920. {
  921. set sprite[j].xrepeat 75
  922. set sprite[j].yrepeat 75
  923. }
  924. else
  925. {
  926. set sprite[j].xrepeat 60
  927. set sprite[j].yrepeat 60
  928. }
  929. break
  930. case BRUISERSTAYPUT
  931. ife ENEMY_ANIM2 1 cactor 7536
  932. ife ENEMY_ANIM2 2 cactor 7541
  933. ife ENEMY_ANIM2 3 cactor 7546
  934. ife ENEMY_ANIM2 0 cactor 7551
  935. ife sprite[j].pal 24
  936. {
  937. set sprite[j].xrepeat 75
  938. set sprite[j].yrepeat 75
  939. }
  940. else
  941. {
  942. set sprite[j].xrepeat 60
  943. set sprite[j].yrepeat 60
  944. }
  945. break
  946. case SPIRIT
  947. ife ENEMY_ANIM2 1 cactor 22016
  948. ife ENEMY_ANIM2 2 cactor 22021
  949. ife ENEMY_ANIM2 3 cactor 22026
  950. ife ENEMY_ANIM2 0 cactor 22031
  951. ife sprite[j].pal 24
  952. {
  953. set sprite[j].xrepeat 66
  954. set sprite[j].yrepeat 66
  955. }
  956. else
  957. {
  958. set sprite[j].xrepeat 56
  959. set sprite[j].yrepeat 56
  960. }
  961. break
  962. case SPIRITSTAYPUT
  963. ife ENEMY_ANIM2 1 cactor 22017
  964. ife ENEMY_ANIM2 2 cactor 22022
  965. ife ENEMY_ANIM2 3 cactor 22027
  966. ife ENEMY_ANIM2 0 cactor 22032
  967. ife sprite[j].pal 24
  968. {
  969. set sprite[j].xrepeat 66
  970. set sprite[j].yrepeat 66
  971. }
  972. else
  973. {
  974. set sprite[j].xrepeat 56
  975. set sprite[j].yrepeat 56
  976. }
  977. break
  978. case SHADE
  979. ife ENEMY_ANIM2 1 cactor 7472
  980. ife ENEMY_ANIM2 2 cactor 7477
  981. ife ENEMY_ANIM2 3 cactor 7482
  982. ife ENEMY_ANIM2 0 cactor 7487
  983. ife sprite[j].pal 24
  984. {
  985. set sprite[j].xrepeat 60
  986. set sprite[j].yrepeat 60
  987. }
  988. else
  989. {
  990. set sprite[j].xrepeat 50
  991. set sprite[j].yrepeat 50
  992. }
  993. break
  994. case SHADESTAYPUT
  995. ife ENEMY_ANIM2 1 cactor 7473
  996. ife ENEMY_ANIM2 2 cactor 7478
  997. ife ENEMY_ANIM2 3 cactor 7483
  998. ife ENEMY_ANIM2 0 cactor 7488
  999. ife sprite[j].pal 24
  1000. {
  1001. set sprite[j].xrepeat 60
  1002. set sprite[j].yrepeat 60
  1003. }
  1004. else
  1005. {
  1006. set sprite[j].xrepeat 50
  1007. set sprite[j].yrepeat 50
  1008. }
  1009. break
  1010. case HADESPHERE
  1011. ife ENEMY_ANIM2 1 cactor 8192
  1012. ife ENEMY_ANIM2 2 cactor 8197
  1013. ife ENEMY_ANIM2 3 cactor 8192
  1014. ife ENEMY_ANIM2 0 cactor 8197
  1015. ife sprite[j].pal 24
  1016. {
  1017. set sprite[j].xrepeat 70
  1018. set sprite[j].yrepeat 70
  1019. }
  1020. else
  1021. {
  1022. set sprite[j].xrepeat 50
  1023. set sprite[j].yrepeat 50
  1024. }
  1025. break
  1026. case HADESPHERESTAYPUT
  1027. ife ENEMY_ANIM2 1 cactor 8193
  1028. ife ENEMY_ANIM2 2 cactor 8198
  1029. ife ENEMY_ANIM2 3 cactor 8193
  1030. ife ENEMY_ANIM2 0 cactor 8198
  1031. ife sprite[j].pal 24
  1032. {
  1033. set sprite[j].xrepeat 70
  1034. set sprite[j].yrepeat 70
  1035. }
  1036. else
  1037. {
  1038. set sprite[j].xrepeat 50
  1039. set sprite[j].yrepeat 50
  1040. }
  1041. break
  1042. case MAEPHISTO
  1043. ife ENEMY_ANIM2 1 cactor 14336
  1044. ife ENEMY_ANIM2 2 cactor 14341
  1045. ife ENEMY_ANIM2 3 cactor 14346
  1046. ife ENEMY_ANIM2 0 cactor 14351
  1047. set sprite[j].xrepeat 50
  1048. set sprite[j].yrepeat 50
  1049. break
  1050. case FLESHWIZARD
  1051. ife ENEMY_ANIM2 1 cactor 8368
  1052. ife ENEMY_ANIM2 2 cactor 8373
  1053. ife ENEMY_ANIM2 3 cactor 8368
  1054. ife ENEMY_ANIM2 0 cactor 8373
  1055. set sprite[j].xrepeat 38
  1056. set sprite[j].yrepeat 38
  1057. break
  1058. case FLESHWIZARDSTAYPUT
  1059. ife ENEMY_ANIM2 1 cactor 8369
  1060. ife ENEMY_ANIM2 2 cactor 8374
  1061. ife ENEMY_ANIM2 3 cactor 8369
  1062. ife ENEMY_ANIM2 0 cactor 8374
  1063. set sprite[j].xrepeat 38
  1064. set sprite[j].yrepeat 38
  1065. break
  1066. case SATYR
  1067. ife ENEMY_ANIM2 1 cactor 7424
  1068. ife ENEMY_ANIM2 2 cactor 7429
  1069. ife ENEMY_ANIM2 3 cactor 7434
  1070. ife ENEMY_ANIM2 0 cactor 7439
  1071. ife sprite[j].pal 47
  1072. {
  1073. set sprite[j].xrepeat 52
  1074. set sprite[j].yrepeat 52
  1075. }
  1076. else
  1077. {
  1078. set sprite[j].xrepeat 46
  1079. set sprite[j].yrepeat 46
  1080. }
  1081. break
  1082. case SATYRSTAYPUT
  1083. ife ENEMY_ANIM2 1 cactor 7425
  1084. ife ENEMY_ANIM2 2 cactor 7430
  1085. ife ENEMY_ANIM2 3 cactor 7435
  1086. ife ENEMY_ANIM2 0 cactor 7440
  1087. ife sprite[j].pal 47
  1088. {
  1089. set sprite[j].xrepeat 52
  1090. set sprite[j].yrepeat 52
  1091. }
  1092. else
  1093. {
  1094. set sprite[j].xrepeat 46
  1095. set sprite[j].yrepeat 46
  1096. }
  1097. break
  1098. case Z_GRENADEL
  1099. ife ENEMY_ANIM2 1 cactor 16640
  1100. ife ENEMY_ANIM2 2 cactor 16645
  1101. ife ENEMY_ANIM2 3 cactor 16650
  1102. ife ENEMY_ANIM2 0 cactor 16655
  1103. ife sprite[j].pal 24
  1104. {
  1105. set sprite[j].xrepeat 60
  1106. set sprite[j].yrepeat 60
  1107. }
  1108. else
  1109. {
  1110. set sprite[j].xrepeat 55
  1111. set sprite[j].yrepeat 55
  1112. }
  1113. break
  1114. case Z_GRENADEL_STAYPUT
  1115. ife ENEMY_ANIM2 1 cactor 16641
  1116. ife ENEMY_ANIM2 2 cactor 16646
  1117. ife ENEMY_ANIM2 3 cactor 16651
  1118. ife ENEMY_ANIM2 0 cactor 16656
  1119. ife sprite[j].pal 24
  1120. {
  1121. set sprite[j].xrepeat 60
  1122. set sprite[j].yrepeat 60
  1123. }
  1124. else
  1125. {
  1126. set sprite[j].xrepeat 55
  1127. set sprite[j].yrepeat 55
  1128. }
  1129. break
  1130. case ZCHAING
  1131. ife ENEMY_ANIM2 1 cactor 8323
  1132. ife ENEMY_ANIM2 2 cactor 8328
  1133. ife ENEMY_ANIM2 3 cactor 8333
  1134. ife ENEMY_ANIM2 0 cactor 8338
  1135. ife sprite[j].pal 24
  1136. {
  1137. set sprite[j].xrepeat 60
  1138. set sprite[j].yrepeat 60
  1139. }
  1140. else
  1141. {
  1142. set sprite[j].xrepeat 55
  1143. set sprite[j].yrepeat 55
  1144. }
  1145. break
  1146. case ZCHAINGSTAYPUT
  1147. ife ENEMY_ANIM2 1 cactor 8324
  1148. ife ENEMY_ANIM2 2 cactor 8329
  1149. ife ENEMY_ANIM2 3 cactor 8334
  1150. ife ENEMY_ANIM2 0 cactor 8339
  1151. ife sprite[j].pal 24
  1152. {
  1153. set sprite[j].xrepeat 60
  1154. set sprite[j].yrepeat 60
  1155. }
  1156. else
  1157. {
  1158. set sprite[j].xrepeat 55
  1159. set sprite[j].yrepeat 55
  1160. }
  1161. break
  1162. case ZSOLDIER
  1163. ife ENEMY_ANIM2 1 cactor 13979
  1164. ife ENEMY_ANIM2 2 cactor 13984
  1165. ife ENEMY_ANIM2 3 cactor 13989
  1166. ife ENEMY_ANIM2 0 cactor 13994
  1167. ife sprite[j].pal 24
  1168. {
  1169. set sprite[j].xrepeat 60
  1170. set sprite[j].yrepeat 60
  1171. }
  1172. else
  1173. {
  1174. set sprite[j].xrepeat 55
  1175. set sprite[j].yrepeat 55
  1176. }
  1177. break
  1178. case ZSOLDIER_STAYPUT
  1179. ife ENEMY_ANIM2 1 cactor 13980
  1180. ife ENEMY_ANIM2 2 cactor 13985
  1181. ife ENEMY_ANIM2 3 cactor 13980
  1182. ife ENEMY_ANIM2 0 cactor 13995
  1183. ife sprite[j].pal 24
  1184. {
  1185. set sprite[j].xrepeat 60
  1186. set sprite[j].yrepeat 60
  1187. }
  1188. else
  1189. {
  1190. set sprite[j].xrepeat 55
  1191. set sprite[j].yrepeat 55
  1192. }
  1193. break
  1194. case ZSOLDIER2
  1195. ife ENEMY_ANIM2 1 cactor 15283
  1196. ife ENEMY_ANIM2 2 cactor 15288
  1197. ife ENEMY_ANIM2 3 cactor 15293
  1198. ife ENEMY_ANIM2 0 cactor 15298
  1199. ife sprite[j].pal 24
  1200. {
  1201. set sprite[j].xrepeat 60
  1202. set sprite[j].yrepeat 60
  1203. }
  1204. else
  1205. {
  1206. set sprite[j].xrepeat 55
  1207. set sprite[j].yrepeat 55
  1208. }
  1209. break
  1210. case ZSOLDIER2_STAYPUT
  1211. ife ENEMY_ANIM2 1 cactor 15284
  1212. ife ENEMY_ANIM2 2 cactor 15289
  1213. ife ENEMY_ANIM2 3 cactor 15294
  1214. ife ENEMY_ANIM2 0 cactor 15299
  1215. ife sprite[j].pal 24
  1216. {
  1217. set sprite[j].xrepeat 60
  1218. set sprite[j].yrepeat 60
  1219. }
  1220. else
  1221. {
  1222. set sprite[j].xrepeat 55
  1223. set sprite[j].yrepeat 55
  1224. }
  1225. break
  1226. case ZSCIEN
  1227. ife ENEMY_ANIM2 1 cactor 7633
  1228. ife ENEMY_ANIM2 2 cactor 7638
  1229. ife ENEMY_ANIM2 3 cactor 7643
  1230. ife ENEMY_ANIM2 0 cactor 7648
  1231. ife sprite[j].pal 24
  1232. {
  1233. set sprite[j].xrepeat 60
  1234. set sprite[j].yrepeat 60
  1235. }
  1236. else
  1237. {
  1238. set sprite[j].xrepeat 55
  1239. set sprite[j].yrepeat 55
  1240. }
  1241. break
  1242. case ZSCIENSTAYPUT
  1243. ife ENEMY_ANIM2 1 cactor 7634
  1244. ife ENEMY_ANIM2 2 cactor 7639
  1245. ife ENEMY_ANIM2 3 cactor 7644
  1246. ife ENEMY_ANIM2 0 cactor 7649
  1247. ife sprite[j].pal 24
  1248. {
  1249. set sprite[j].xrepeat 60
  1250. set sprite[j].yrepeat 60
  1251. }
  1252. else
  1253. {
  1254. set sprite[j].xrepeat 55
  1255. set sprite[j].yrepeat 55
  1256. }
  1257. break
  1258. case INFERNAL
  1259. ife ENEMY_ANIM2 1 cactor 15104
  1260. ife ENEMY_ANIM2 2 cactor 15109
  1261. ife ENEMY_ANIM2 3 cactor 15114
  1262. ife ENEMY_ANIM2 0 cactor 15119
  1263. set sprite[j].xrepeat 50
  1264. set sprite[j].yrepeat 50
  1265. break
  1266. case INFERNAL_STAYPUT
  1267. ife ENEMY_ANIM2 1 cactor 15105
  1268. ife ENEMY_ANIM2 2 cactor 15110
  1269. ife ENEMY_ANIM2 3 cactor 15115
  1270. ife ENEMY_ANIM2 0 cactor 15120
  1271. set sprite[j].xrepeat 50
  1272. set sprite[j].yrepeat 50
  1273. break
  1274. case TERMINATOR
  1275. ife sprite[j].extra -1
  1276. {
  1277. ife ENEMY_ANIM2 1 cactor 24741
  1278. ife ENEMY_ANIM2 2 cactor 24746
  1279. ife ENEMY_ANIM2 3 cactor 24751
  1280. ife ENEMY_ANIM2 0 cactor 24756
  1281. }
  1282. set sprite[j].xrepeat 29
  1283. set sprite[j].yrepeat 25
  1284. break
  1285. case TERMINATORSTAYPUT
  1286. ife ENEMY_ANIM2 1 cactor 24742
  1287. ife ENEMY_ANIM2 2 cactor 24747
  1288. ife ENEMY_ANIM2 3 cactor 24752
  1289. ife ENEMY_ANIM2 0 cactor 24757
  1290. set sprite[j].xrepeat 29
  1291. set sprite[j].yrepeat 25
  1292. break
  1293. case TERMINATORDUCKING
  1294. ife ENEMY_ANIM2 1 cactor 24771
  1295. ife ENEMY_ANIM2 2 cactor 24776
  1296. ife ENEMY_ANIM2 3 cactor 24771
  1297. ife ENEMY_ANIM2 0 cactor 24776
  1298. set sprite[j].xrepeat 29
  1299. set sprite[j].yrepeat 25
  1300. break
  1301. case TERMINATORCRAWLING
  1302. ife ENEMY_ANIM2 1 cactor 24781
  1303. ife ENEMY_ANIM2 2 cactor 24786
  1304. ife ENEMY_ANIM2 3 cactor 24791
  1305. ife ENEMY_ANIM2 0 cactor 24796
  1306. set sprite[j].xrepeat 29
  1307. set sprite[j].yrepeat 25
  1308. break
  1309. case OGRE
  1310. ife ENEMY_ANIM2 1 cactor 12603
  1311. ife ENEMY_ANIM2 2 cactor 12608
  1312. ife ENEMY_ANIM2 3 cactor 12613
  1313. ife ENEMY_ANIM2 0 cactor 12618
  1314. ife sprite[j].pal 24
  1315. {
  1316. set sprite[j].xrepeat 60
  1317. set sprite[j].yrepeat 60
  1318. }
  1319. else
  1320. {
  1321. set sprite[j].xrepeat 46
  1322. set sprite[j].yrepeat 46
  1323. }
  1324. break
  1325. case OGRE_STAYPUT
  1326. ife ENEMY_ANIM2 1 cactor 12604
  1327. ife ENEMY_ANIM2 2 cactor 12609
  1328. ife ENEMY_ANIM2 3 cactor 12614
  1329. ife ENEMY_ANIM2 0 cactor 12619
  1330. ife sprite[j].pal 24
  1331. {
  1332. set sprite[j].xrepeat 60
  1333. set sprite[j].yrepeat 60
  1334. }
  1335. else
  1336. {
  1337. set sprite[j].xrepeat 46
  1338. set sprite[j].yrepeat 46
  1339. }
  1340. break
  1341. case NETHERBRUTE
  1342. ife ENEMY_ANIM2 1 cactor 15190
  1343. ife ENEMY_ANIM2 2 cactor 15195
  1344. ife ENEMY_ANIM2 3 cactor 15200
  1345. ife ENEMY_ANIM2 0 cactor 15205
  1346. set sprite[j].xrepeat 60
  1347. set sprite[j].yrepeat 60
  1348. break
  1349. case NETHERBRUTE_STAYPUT
  1350. ife ENEMY_ANIM2 1 cactor 15191
  1351. ife ENEMY_ANIM2 2 cactor 15196
  1352. ife ENEMY_ANIM2 3 cactor 15201
  1353. ife ENEMY_ANIM2 0 cactor 15206
  1354. set sprite[j].xrepeat 60
  1355. set sprite[j].yrepeat 60
  1356. break
  1357. case GOBLIN
  1358. ife ENEMY_ANIM2 1 cactor 24406
  1359. ife ENEMY_ANIM2 2 cactor 24411
  1360. ife ENEMY_ANIM2 3 cactor 24416
  1361. ife ENEMY_ANIM2 0 cactor 24421
  1362. set sprite[j].xrepeat 40
  1363. set sprite[j].yrepeat 40
  1364. break
  1365. case GOBLIN_STAYPUT
  1366. ife ENEMY_ANIM2 1 cactor 24407
  1367. ife ENEMY_ANIM2 2 cactor 24412
  1368. ife ENEMY_ANIM2 3 cactor 24417
  1369. ife ENEMY_ANIM2 0 cactor 24422
  1370. set sprite[j].xrepeat 40
  1371. set sprite[j].yrepeat 40
  1372. break
  1373. case ARCHER
  1374. ife ENEMY_ANIM2 1 cactor 24447
  1375. ife ENEMY_ANIM2 2 cactor 24452
  1376. ife ENEMY_ANIM2 3 cactor 24457
  1377. ife ENEMY_ANIM2 0 cactor 24462
  1378. set sprite[j].xrepeat 50
  1379. set sprite[j].yrepeat 50
  1380. break
  1381. case ARCHER_STAYPUT
  1382. ife ENEMY_ANIM2 1 cactor 24448
  1383. ife ENEMY_ANIM2 2 cactor 24453
  1384. ife ENEMY_ANIM2 3 cactor 24458
  1385. ife ENEMY_ANIM2 0 cactor 24463
  1386. set sprite[j].xrepeat 50
  1387. set sprite[j].yrepeat 50
  1388. break
  1389. case BERSERKER
  1390. ife ENEMY_ANIM2 1 cactor 11696
  1391. ife ENEMY_ANIM2 2 cactor 11701
  1392. ife ENEMY_ANIM2 3 cactor 11706
  1393. ife ENEMY_ANIM2 0 cactor 11711
  1394. set sprite[j].xrepeat 46
  1395. set sprite[j].yrepeat 46
  1396. break
  1397. case BERSERKER_STAYPUT
  1398. ife ENEMY_ANIM2 1 cactor 11697
  1399. ife ENEMY_ANIM2 2 cactor 11702
  1400. ife ENEMY_ANIM2 3 cactor 11707
  1401. ife ENEMY_ANIM2 0 cactor 11712
  1402. set sprite[j].xrepeat 46
  1403. set sprite[j].yrepeat 46
  1404. break
  1405. case CYBERTOUR
  1406. ife ENEMY_ANIM2 1 cactor 8258
  1407. ife ENEMY_ANIM2 2 cactor 8263
  1408. ife ENEMY_ANIM2 3 cactor 8268
  1409. ife ENEMY_ANIM2 0 cactor 8273
  1410. ife sprite[j].pal 24
  1411. {
  1412. set sprite[j].xrepeat 65
  1413. set sprite[j].yrepeat 65
  1414. }
  1415. else
  1416. {
  1417. set sprite[j].xrepeat 55
  1418. set sprite[j].yrepeat 55
  1419. }
  1420. break
  1421. case CYBERTOURSTAYPUT
  1422. ife ENEMY_ANIM2 1 cactor 8259
  1423. ife ENEMY_ANIM2 2 cactor 8264
  1424. ife ENEMY_ANIM2 3 cactor 8269
  1425. ife ENEMY_ANIM2 0 cactor 8274
  1426. ife sprite[j].pal 24
  1427. {
  1428. set sprite[j].xrepeat 65
  1429. set sprite[j].yrepeat 65
  1430. }
  1431. else
  1432. {
  1433. set sprite[j].xrepeat 55
  1434. set sprite[j].yrepeat 55
  1435. }
  1436. break
  1437. case MJ12_ASSASSIN
  1438. ife ENEMY_ANIM2 1 cactor 18812
  1439. ife ENEMY_ANIM2 2 cactor 18817
  1440. ife ENEMY_ANIM2 3 cactor 18822
  1441. ife ENEMY_ANIM2 0 cactor 18827
  1442. set sprite[j].xrepeat 40
  1443. set sprite[j].yrepeat 40
  1444. break
  1445. case MJ12_ASSASSIN_JUMP
  1446. ife ENEMY_ANIM2 1 cactor 18832
  1447. ife ENEMY_ANIM2 2 cactor 18833
  1448. ife ENEMY_ANIM2 3 cactor 18834
  1449. ife ENEMY_ANIM2 0 cactor 18835
  1450. set sprite[j].xrepeat 40
  1451. set sprite[j].yrepeat 40
  1452. break
  1453. case MJ12_TROOP
  1454. ife ENEMY_ANIM2 1 cactor 15000
  1455. ife ENEMY_ANIM2 2 cactor 15005
  1456. ife ENEMY_ANIM2 3 cactor 15010
  1457. ife ENEMY_ANIM2 0 cactor 15015
  1458. set sprite[j].xrepeat 30
  1459. set sprite[j].yrepeat 30
  1460. break
  1461. case MJ12_TROOP_STAYPUT
  1462. ife ENEMY_ANIM2 1 cactor 15001
  1463. ife ENEMY_ANIM2 2 cactor 15006
  1464. ife ENEMY_ANIM2 3 cactor 15011
  1465. ife ENEMY_ANIM2 0 cactor 15016
  1466. set sprite[j].xrepeat 30
  1467. set sprite[j].yrepeat 30
  1468. break
  1469. case PITFIEND
  1470. case PITFIEND_STAYPUT
  1471. set sprite[j].xrepeat 35
  1472. set sprite[j].yrepeat 35
  1473. break
  1474. case PE_SENTRY
  1475. set sprite[j].xrepeat 50
  1476. set sprite[j].yrepeat 50
  1477. break
  1478. case PE_ELDER
  1479. ife ENEMY_ANIM2 1 cactor 18766
  1480. ife ENEMY_ANIM2 2 cactor 18771
  1481. ife ENEMY_ANIM2 3 cactor 18776
  1482. ife ENEMY_ANIM2 0 cactor 18781
  1483. ife sprite[j].pal 24
  1484. {
  1485. set sprite[j].xrepeat 55
  1486. set sprite[j].yrepeat 55
  1487. }
  1488. else
  1489. {
  1490. set sprite[j].xrepeat 50
  1491. set sprite[j].yrepeat 50
  1492. }
  1493. break
  1494. case PE_ELDER_STAYPUT
  1495. ife ENEMY_ANIM2 1 cactor 18767
  1496. ife ENEMY_ANIM2 2 cactor 18772
  1497. ife ENEMY_ANIM2 3 cactor 18777
  1498. ife ENEMY_ANIM2 0 cactor 18782
  1499. ife sprite[j].pal 24
  1500. {
  1501. set sprite[j].xrepeat 55
  1502. set sprite[j].yrepeat 55
  1503. }
  1504. else
  1505. {
  1506. set sprite[j].xrepeat 50
  1507. set sprite[j].yrepeat 50
  1508. }
  1509. break
  1510. case PE_TROOP
  1511. ife ENEMY_ANIM2 1 cactor 18688
  1512. ife ENEMY_ANIM2 2 cactor 18693
  1513. ife ENEMY_ANIM2 3 cactor 18698
  1514. ife ENEMY_ANIM2 0 cactor 18703
  1515. ife sprite[j].pal 24
  1516. {
  1517. set sprite[j].xrepeat 50
  1518. set sprite[j].yrepeat 50
  1519. }
  1520. else
  1521. {
  1522. ife sprite[j].pal 0 spritepal 12
  1523. set sprite[j].xrepeat 45
  1524. set sprite[j].yrepeat 45
  1525. }
  1526. break
  1527. case PE_TROOP_STAYPUT
  1528. ife ENEMY_ANIM2 1 cactor 18689
  1529. ife ENEMY_ANIM2 2 cactor 18694
  1530. ife ENEMY_ANIM2 3 cactor 18699
  1531. ife ENEMY_ANIM2 0 cactor 18704
  1532. ife sprite[j].pal 24
  1533. {
  1534. set sprite[j].xrepeat 50
  1535. set sprite[j].yrepeat 50
  1536. }
  1537. else
  1538. {
  1539. ife sprite[j].pal 0 spritepal 12
  1540. set sprite[j].xrepeat 45
  1541. set sprite[j].yrepeat 45
  1542. }
  1543. break
  1544. case LIZTROOP
  1545. case 1681
  1546. ife sprite[j].pal 0 spritepal 11
  1547. set sprite[j].xrepeat 40
  1548. set sprite[j].yrepeat 40
  1549. break
  1550. case 1682
  1551. ife ENEMY_ANIM2 1 cactor 1682
  1552. ife ENEMY_ANIM2 2 cactor 1687
  1553. ife ENEMY_ANIM2 3 cactor 1692
  1554. ife ENEMY_ANIM2 0 cactor 1697
  1555. ife sprite[j].pal 0 spritepal 11
  1556. set sprite[j].xrepeat 40
  1557. set sprite[j].yrepeat 40
  1558. break
  1559. case SPACE_LIZTROOP
  1560. case 1715
  1561. case 1725
  1562. case 1741
  1563. case 1742
  1564. case 1744
  1565. case 1880
  1566. case 1920
  1567. case PIGCOP
  1568. case 2001
  1569. case 2045
  1570. case 2120
  1571. case 2121
  1572. case 2150
  1573. case 2160
  1574. case 2165
  1575. set sprite[j].xrepeat 40
  1576. set sprite[j].yrepeat 40
  1577. break
  1578. case 17850
  1579. ife ENEMY_ANIM2 1 cactor 17850
  1580. ife ENEMY_ANIM2 2 cactor 17855
  1581. ife ENEMY_ANIM2 3 cactor 17860
  1582. ife ENEMY_ANIM2 0 cactor 17865
  1583. set sprite[j].xrepeat 40
  1584. set sprite[j].yrepeat 40
  1585. break
  1586. case 17851
  1587. ife ENEMY_ANIM2 1 cactor 17851
  1588. ife ENEMY_ANIM2 2 cactor 17856
  1589. ife ENEMY_ANIM2 3 cactor 17861
  1590. ife ENEMY_ANIM2 0 cactor 17866
  1591. set sprite[j].xrepeat 40
  1592. set sprite[j].yrepeat 40
  1593. break
  1594. case 24064
  1595. ife ENEMY_ANIM2 1 cactor 24064
  1596. ife ENEMY_ANIM2 2 cactor 24069
  1597. ife ENEMY_ANIM2 3 cactor 24074
  1598. ife ENEMY_ANIM2 0 cactor 24079
  1599. set sprite[j].xrepeat 40
  1600. set sprite[j].yrepeat 40
  1601. break
  1602. case 24065
  1603. ife ENEMY_ANIM2 1 cactor 24065
  1604. ife ENEMY_ANIM2 2 cactor 24070
  1605. ife ENEMY_ANIM2 3 cactor 24075
  1606. ife ENEMY_ANIM2 0 cactor 24080
  1607. set sprite[j].xrepeat 40
  1608. set sprite[j].yrepeat 40
  1609. break
  1610. case 24109
  1611. ife ENEMY_ANIM2 1 cactor 24109
  1612. ife ENEMY_ANIM2 2 cactor 24114
  1613. ife ENEMY_ANIM2 3 cactor 24109
  1614. ife ENEMY_ANIM2 0 cactor 24114
  1615. set sprite[j].xrepeat 40
  1616. set sprite[j].yrepeat 40
  1617. break
  1618. case ELITE_LIZMAN
  1619. ife ENEMY_ANIM2 1 cactor 24137
  1620. ife ENEMY_ANIM2 2 cactor 24142
  1621. ife ENEMY_ANIM2 3 cactor 24147
  1622. ife ENEMY_ANIM2 0 cactor 24152
  1623. set sprite[j].xrepeat 45
  1624. set sprite[j].yrepeat 45
  1625. break
  1626. case ELITE_LIZMAN_STAYPUT
  1627. ife ENEMY_ANIM2 1 cactor 24138
  1628. ife ENEMY_ANIM2 2 cactor 24143
  1629. ife ENEMY_ANIM2 3 cactor 24148
  1630. ife ENEMY_ANIM2 0 cactor 24153
  1631. set sprite[j].xrepeat 45
  1632. set sprite[j].yrepeat 45
  1633. break
  1634. case ELITE_LIZMAN_JUMP
  1635. set sprite[j].xrepeat 45
  1636. set sprite[j].yrepeat 45
  1637. break
  1638. case CYBERALIEN
  1639. ife ENEMY_ANIM2 1 cactor 15679
  1640. ife ENEMY_ANIM2 2 cactor 15684
  1641. ife ENEMY_ANIM2 3 cactor 15679
  1642. ife ENEMY_ANIM2 0 cactor 15674
  1643. set sprite[j].xrepeat 45
  1644. set sprite[j].yrepeat 45
  1645. break
  1646. case CYBERALIEN_STAYPUT
  1647. ife ENEMY_ANIM2 1 cactor 15680
  1648. ife ENEMY_ANIM2 2 cactor 15685
  1649. ife ENEMY_ANIM2 3 cactor 15680
  1650. ife ENEMY_ANIM2 0 cactor 15675
  1651. set sprite[j].xrepeat 45
  1652. set sprite[j].yrepeat 45
  1653. break
  1654. case PIGBOSS
  1655. ife ENEMY_ANIM2 1 cactor 24576
  1656. ife ENEMY_ANIM2 2 cactor 24581
  1657. ife ENEMY_ANIM2 3 cactor 24586
  1658. ife ENEMY_ANIM2 0 cactor 24591
  1659. ife sprite[j].pal 0
  1660. {
  1661. set sprite[j].xrepeat 90
  1662. set sprite[j].yrepeat 80
  1663. }
  1664. else
  1665. {
  1666. set sprite[j].xrepeat 48
  1667. set sprite[j].yrepeat 40
  1668. }
  1669. break
  1670. case 1404 // FAKE PLAYER
  1671. ife sprite[j].extra 0 { cactor 5245 set sprite[j].yrepeat 34 } // James
  1672. ife sprite[j].extra 1 { cactor 5501 set sprite[j].yrepeat 34 } // Zaxtor
  1673. ife sprite[j].extra 2 { cactor 6400 ifspritepal 0 spritepal 21 set sprite[j].yrepeat 22 } // Merlijn
  1674. ife sprite[j].extra 3 { cactor 6013 ifspritepal 0 spritepal 11 set sprite[j].yrepeat 34 } // Highwire
  1675. ife sprite[j].extra 4 { cactor 6336 ifspritepal 0 spritepal 21 set sprite[j].yrepeat 44 } // Sang
  1676. ife sprite[j].extra 5 { cactor 6656 ifspritepal 0 spritepal 12 set sprite[j].yrepeat 24 } // Rusty
  1677. ife sprite[j].extra 6 { cactor 6429 ifspritepal 0 spritepal 21 set sprite[j].yrepeat 50 } // Geoffrey
  1678. ife sprite[j].extra 7 { cactor 6912 ifspritepal 0 spritepal 11 set sprite[j].yrepeat 50 } // Mikko
  1679. ife sprite[j].extra 13 { cactor 16384 set sprite[j].yrepeat 20 } // Micky
  1680. ife sprite[j].extra 14 { cactor 20736 set sprite[j].yrepeat 26 } // Snowfall
  1681. break
  1682. case 1405
  1683. cactor 1404
  1684. break
  1685. case 8623
  1686. set sprite[j].blend 255
  1687. break
  1688. case 490
  1689. case 10037
  1690. case 5868
  1691. case 5869
  1692. case 1095
  1693. case 3375
  1694. case 14296
  1695. case 3792
  1696. case 1020
  1697. case 3070
  1698. case 21616
  1699. case 7676
  1700. case 2271
  1701. case 2311
  1702. case 7038
  1703. case 17133
  1704. case 11772
  1705. case 9175
  1706. case 1220
  1707. case 9433
  1708. case 9805
  1709. case 18225
  1710. case 18224
  1711. case 16290
  1712. case 16327
  1713. case 10613
  1714. case 13949
  1715. case 13950
  1716. case 13951
  1717. case 13952
  1718. case 11309
  1719. case 11686
  1720. case 16234
  1721. case 16292
  1722. case 17128
  1723. case 17129
  1724. case 17130
  1725. case 17131
  1726. case 17323
  1727. case 18333
  1728. case 18428
  1729. case 18429
  1730. case 18431
  1731. case 18473
  1732. case 18646
  1733. case 18647
  1734. case 18648
  1735. case 18649
  1736. case 19619
  1737. case 19620
  1738. case 19621
  1739. case 19622
  1740. case 19712
  1741. case 19713
  1742. case 19714
  1743. case 19715
  1744. case 19716
  1745. case 19717
  1746. case 19718
  1747. case 19719
  1748. case 19720
  1749. case 19721
  1750. case 19722
  1751. case 19723
  1752. case 19724
  1753. case 19725
  1754. case 19726
  1755. case 19727
  1756. case 19728
  1757. case 19729
  1758. case 19730
  1759. case 19731
  1760. case 19732
  1761. case 19733
  1762. case 19734
  1763. case 19735
  1764. case 19736
  1765. case 19737
  1766. case 19738
  1767. case 19739
  1768. case 19740
  1769. case 19741
  1770. case 19742
  1771. case 19743
  1772. case 19744
  1773. case 19745
  1774. case 19746
  1775. case 19747
  1776. case 19748
  1777. case 19749
  1778. case 19750
  1779. case 19751
  1780. case 19752
  1781. case 19753
  1782. case 19754
  1783. case 19755
  1784. case 19756
  1785. case 19757
  1786. case 19623
  1787. case 19624
  1788. case 19625
  1789. case 19626
  1790. case 19627
  1791. case 19628
  1792. case 19629
  1793. case 19630
  1794. case 19631
  1795. case 19632
  1796. case 19654
  1797. case 19336
  1798. case 19340
  1799. case 20409
  1800. case 1677
  1801. case 1678
  1802. case 1635
  1803. case 1634
  1804. case 1633
  1805. case 1632
  1806. case 2310
  1807. case 20420
  1808. case 10078
  1809. case 22428
  1810. case 3582
  1811. case 18470
  1812. case 18654
  1813. case 19685
  1814. case 17922
  1815. case 23693
  1816. case 13867
  1817. case 22729
  1818. case 23784
  1819. case 8254
  1820. case 24268
  1821. case 25149
  1822. case 25152
  1823. case 25154
  1824. case 25254
  1825. case 25255
  1826. case 25256
  1827. set sprite[j].blend 255
  1828. break
  1829. endswitch
  1830. }
  1831. endevent
  1832.  
  1833. gamevar i 0 0
  1834. gamevar j 0 0
  1835.  
  1836. gamevar setshade 0 0
  1837.  
  1838. defstate barbwire
  1839. for i allsprites
  1840. {
  1841. ifactor 10729
  1842. {
  1843. set sprite[i].shade sector[j].floorshade
  1844. }
  1845. }
  1846. ends
  1847. defstate edfbody
  1848. for i allsprites
  1849. {
  1850. ifactor 10308
  1851. {
  1852. set sprite[i].xrepeat 32
  1853. set sprite[i].yrepeat 32
  1854. }
  1855. ifactor 10309
  1856. {
  1857. set sprite[i].xrepeat 32
  1858. set sprite[i].yrepeat 32
  1859. }
  1860. ifactor 10436
  1861. {
  1862. set sprite[i].xrepeat 40
  1863. set sprite[i].yrepeat 40
  1864. }
  1865. ifactor 10495
  1866. {
  1867. set sprite[i].xrepeat 32
  1868. set sprite[i].yrepeat 32
  1869. }
  1870. }
  1871. ends
  1872.  
  1873.  
  1874. defstate changecol
  1875. for i allsprites
  1876. {
  1877. ifactor 9
  1878. {
  1879. ife sprite[i].hitag 22924
  1880. {
  1881. set sprite[i].hitag 13056
  1882. set sprite[i].pal 10
  1883. }
  1884. ife sprite[i].hitag 22925
  1885. {
  1886. set sprite[i].hitag 13057
  1887. set sprite[i].pal 10
  1888. }
  1889. }
  1890. ifactor 13056
  1891. {
  1892. set sprite[i].pal 10
  1893. }
  1894. ifactor 13057
  1895. {
  1896. set sprite[i].pal 10
  1897. }
  1898. }
  1899. ends
  1900.  
  1901. defstate removetree
  1902. for i allsprites
  1903. {
  1904. ifactor 1022
  1905. {
  1906. setvarvar TEMP i
  1907. ifvarand TEMP 1 deletesprite i
  1908. }
  1909. }
  1910. ends
  1911.  
  1912. defstate removese
  1913. for i allsprites
  1914. {
  1915. ifactor 1
  1916. {
  1917. ife sprite[i].lotag 50
  1918. deletesprite i
  1919. }
  1920. }
  1921. ends
  1922.  
  1923. defstate changesee
  1924. for i allsprites
  1925. {
  1926. ifactor 3655
  1927. {
  1928. ifvare sprite[i].lotag 5
  1929. ifvare sprite[i].xvel 791
  1930. {
  1931. set sprite[i].lotag 11
  1932. }
  1933. }
  1934. }
  1935. ends
  1936.  
  1937. defstate changetag
  1938. for i allsprites
  1939. {
  1940. ifactor 9
  1941. {
  1942. ifvare sprite[i].hitag 2000 set sprite[i].hitag 24064
  1943. }
  1944. }
  1945. ends
  1946.  
  1947. defstate changeblock
  1948. for i allsprites
  1949. {
  1950. ifand sprite[i].cstat 32
  1951. ifand sprite[i].cstat 1
  1952. {
  1953. set TEMP2 sprite[i].sectnum
  1954. ife sprite[i].z sector[TEMP2].floorz
  1955. {
  1956. addlogvar i
  1957. set TEMP sprite[i].cstat
  1958. xorvar TEMP 1
  1959. set sprite[i].cstat TEMP
  1960. }
  1961. }
  1962. }
  1963. ends
  1964.  
  1965. defstate bridge
  1966. for i allsprites
  1967. {
  1968. ife sprite[i].picnum 12302
  1969. ife sprite[i].shade 23
  1970. {
  1971. set sprite[i].z -41984
  1972. }
  1973. ife sprite[i].picnum 14261
  1974. ife sprite[i].shade 18
  1975. {
  1976. set sprite[i].z 17408
  1977. }
  1978. }
  1979. ends
  1980.  
  1981. defstate fixsepal
  1982. for i allsprites
  1983. {
  1984. switch sprite[i].picnum
  1985. case 1
  1986. ife sprite[i].lotag 12
  1987. {
  1988. ife sprite[i].pal 26 set sprite[i].pal 128
  1989. ife sprite[i].pal 27 set sprite[i].pal 129
  1990. ife sprite[i].pal 28 set sprite[i].pal 130
  1991. ife sprite[i].pal 29 set sprite[i].pal 131
  1992.  
  1993. ife sprite[i].pal 30 set sprite[i].pal 140
  1994. ife sprite[i].pal 31 set sprite[i].pal 141
  1995. ife sprite[i].pal 32 set sprite[i].pal 142
  1996. ife sprite[i].pal 33 set sprite[i].pal 143
  1997. ife sprite[i].pal 34 set sprite[i].pal 144
  1998. ife sprite[i].pal 35 set sprite[i].pal 145
  1999. ife sprite[i].pal 36 set sprite[i].pal 146
  2000.  
  2001. ife sprite[i].pal 17 set sprite[i].pal 27
  2002. ife sprite[i].pal 18 set sprite[i].pal 49
  2003. ife sprite[i].pal 19 set sprite[i].pal 52
  2004. ife sprite[i].pal 22 set sprite[i].pal 36
  2005. }
  2006. ife sprite[i].lotag 51
  2007. {
  2008. ife sprite[i].pal 26 set sprite[i].pal 128
  2009. ife sprite[i].pal 27 set sprite[i].pal 129
  2010. ife sprite[i].pal 28 set sprite[i].pal 130
  2011. ife sprite[i].pal 29 set sprite[i].pal 131
  2012.  
  2013. ife sprite[i].pal 30 set sprite[i].pal 140
  2014. ife sprite[i].pal 31 set sprite[i].pal 141
  2015. ife sprite[i].pal 32 set sprite[i].pal 142
  2016. ife sprite[i].pal 33 set sprite[i].pal 143
  2017. ife sprite[i].pal 34 set sprite[i].pal 144
  2018. ife sprite[i].pal 35 set sprite[i].pal 145
  2019. ife sprite[i].pal 36 set sprite[i].pal 146
  2020.  
  2021. ife sprite[i].pal 17 set sprite[i].pal 27
  2022. ife sprite[i].pal 18 set sprite[i].pal 49
  2023. ife sprite[i].pal 19 set sprite[i].pal 52
  2024. ife sprite[i].pal 22 set sprite[i].pal 36
  2025. }
  2026. ife sprite[i].lotag 54
  2027. {
  2028. ife sprite[i].pal 26 set sprite[i].pal 128
  2029. ife sprite[i].pal 27 set sprite[i].pal 129
  2030. ife sprite[i].pal 28 set sprite[i].pal 130
  2031. ife sprite[i].pal 29 set sprite[i].pal 131
  2032.  
  2033. ife sprite[i].pal 30 set sprite[i].pal 140
  2034. ife sprite[i].pal 31 set sprite[i].pal 141
  2035. ife sprite[i].pal 32 set sprite[i].pal 142
  2036. ife sprite[i].pal 33 set sprite[i].pal 143
  2037. ife sprite[i].pal 34 set sprite[i].pal 144
  2038. ife sprite[i].pal 35 set sprite[i].pal 145
  2039. ife sprite[i].pal 36 set sprite[i].pal 146
  2040.  
  2041. ife sprite[i].pal 17 set sprite[i].pal 27
  2042. ife sprite[i].pal 18 set sprite[i].pal 49
  2043. ife sprite[i].pal 19 set sprite[i].pal 52
  2044. ife sprite[i].pal 22 set sprite[i].pal 36
  2045. }
  2046. ife sprite[i].lotag 55
  2047. {
  2048. ife sprite[i].pal 26 set sprite[i].pal 128
  2049. ife sprite[i].pal 27 set sprite[i].pal 129
  2050. ife sprite[i].pal 28 set sprite[i].pal 130
  2051. ife sprite[i].pal 29 set sprite[i].pal 131
  2052.  
  2053. ife sprite[i].pal 30 set sprite[i].pal 140
  2054. ife sprite[i].pal 31 set sprite[i].pal 141
  2055. ife sprite[i].pal 32 set sprite[i].pal 142
  2056. ife sprite[i].pal 33 set sprite[i].pal 143
  2057. ife sprite[i].pal 34 set sprite[i].pal 144
  2058. ife sprite[i].pal 35 set sprite[i].pal 145
  2059. ife sprite[i].pal 36 set sprite[i].pal 146
  2060.  
  2061. ife sprite[i].pal 17 set sprite[i].pal 27
  2062. ife sprite[i].pal 18 set sprite[i].pal 49
  2063. ife sprite[i].pal 19 set sprite[i].pal 52
  2064. ife sprite[i].pal 22 set sprite[i].pal 36
  2065. }
  2066. break
  2067. endswitch
  2068. }
  2069. ends
  2070.  
  2071. defstate fixmpal
  2072. for i allsectors
  2073. {
  2074. ife sector[i].floorpal 43 set sector[i].floorpal 0
  2075. ife sector[i].ceilingpal 43 set sector[i].ceilingpal 0
  2076. }
  2077.  
  2078. for i allwalls
  2079. {
  2080. ife wall[i].pal 43 set wall[i].pal 0
  2081. }
  2082.  
  2083. for i allsprites
  2084. {
  2085. switch sprite[i].picnum
  2086. default
  2087. // ife sprite[i].pal 26 set sprite[i].pal 128
  2088.  
  2089.  
  2090. ife sprite[i].pal 43 set sprite[i].pal 0
  2091.  
  2092.  
  2093. break
  2094. endswitch
  2095. }
  2096. ends
  2097.  
  2098. defstate soundfix
  2099.  
  2100. for i allsprites
  2101. {
  2102. switch sprite[i].picnum
  2103. case 5
  2104. ife sprite[i].lotag 398 set sprite[i].lotag 254
  2105. break
  2106. endswitch
  2107. }
  2108.  
  2109. ends
  2110.  
  2111. defstate fix_letters
  2112.  
  2113. for i allsprites
  2114. {
  2115. ifg sprite[i].picnum 2939
  2116. ifl sprite[i].picnum 2966
  2117. {
  2118. addlogvar i
  2119. set TEMP sprite[i].picnum
  2120. add TEMP 26
  2121. set sprite[i].picnum TEMP
  2122. }
  2123. }
  2124.  
  2125. ends
  2126.  
  2127. defstate fix_e_pal
  2128.  
  2129. for i allsprites
  2130. {
  2131. switch sprite[i].picnum
  2132. case 9
  2133. ife sprite[i].hitag 7424 ife sprite[i].pal 24
  2134. {
  2135. addlogvar i
  2136. set sprite[i].pal 47
  2137. }
  2138. break
  2139. case 7424
  2140. case 7425
  2141. ife sprite[i].pal 24
  2142. {
  2143. addlogvar i
  2144. set sprite[i].pal 47
  2145. }
  2146. break
  2147. endswitch
  2148. }
  2149.  
  2150. ends
  2151.  
  2152. defstate skypal
  2153. for i allsectors
  2154. {
  2155. ife sector[i].ceilingpal 143 ifand sector[i].ceilingstat 1 set sector[i].ceilingpal 0
  2156.  
  2157. }
  2158. ends
  2159.  
  2160. defstate fixpalse
  2161.  
  2162. for i allsprites
  2163. {
  2164. switch sprite[i].picnum
  2165. case 0
  2166. case 1
  2167. case 2
  2168. case 3
  2169. case 4
  2170. case 5
  2171. case 6
  2172. case 7
  2173. case 8
  2174. case 10
  2175. // ife sprite[i].pal 26 set sprite[i].pal 128
  2176.  
  2177.  
  2178. ife sprite[i].pal 26 set sprite[i].pal 128
  2179. ife sprite[i].pal 27 set sprite[i].pal 129
  2180. ife sprite[i].pal 28 set sprite[i].pal 130
  2181. ife sprite[i].pal 29 set sprite[i].pal 131
  2182.  
  2183. ife sprite[i].pal 30 set sprite[i].pal 140
  2184. ife sprite[i].pal 31 set sprite[i].pal 141
  2185. ife sprite[i].pal 32 set sprite[i].pal 142
  2186. ife sprite[i].pal 33 set sprite[i].pal 143
  2187. ife sprite[i].pal 34 set sprite[i].pal 144
  2188. ife sprite[i].pal 35 set sprite[i].pal 145
  2189. ife sprite[i].pal 36 set sprite[i].pal 146
  2190.  
  2191. break
  2192. endswitch
  2193. }
  2194. ends
  2195.  
  2196. defstate zax
  2197. for i allsectors
  2198. {
  2199. ife sector[i].floorpal 7 set sector[i].floorpal 56
  2200. ife sector[i].ceilingpal 7 set sector[i].ceilingpal 56
  2201. }
  2202.  
  2203. for i allwalls
  2204. {
  2205. ife wall[i].pal 7 set wall[i].pal 56
  2206. ife wall[i].picnum 20253
  2207. {
  2208. ife wall[i].pal 1 set wall[i].pal 74
  2209. ife wall[i].pal 2 set wall[i].pal 82
  2210. }
  2211. ife wall[i].picnum 20275 ife wall[i].pal 2 set wall[i].pal 82
  2212. ife wall[i].picnum 20285 ife wall[i].pal 2 set wall[i].pal 82
  2213. ife wall[i].picnum 20286 ife wall[i].pal 2 set wall[i].pal 82
  2214. ife wall[i].picnum 20270 ife wall[i].pal 2 set wall[i].pal 82
  2215. }
  2216.  
  2217. ends
  2218.  
  2219. defstate rem_exp
  2220. for i selsectors
  2221. {
  2222. ifand sector[i].floorstat 8
  2223. ife sector[i].floorpicnum 14252
  2224. {
  2225. set TEMP sector[i].floorstat
  2226. xorvar TEMP 8
  2227. set sector[i].floorstat TEMP
  2228. }
  2229. }
  2230.  
  2231. ends
  2232.  
  2233. defstate add_exp
  2234. for i allsectors
  2235. {
  2236. ife sector[i].floorpicnum 14253
  2237. {
  2238. set TEMP sector[i].floorstat
  2239. ifand sector[i].floorstat 8 nullop else
  2240. xorvar TEMP 8
  2241. set sector[i].floorstat TEMP
  2242. }
  2243. }
  2244.  
  2245. ends
  2246.  
  2247. defstate skyfog
  2248. for i selsectors
  2249. {
  2250.  
  2251. set sector[i].floorpal 143
  2252. set sector[i].ceilingpal 143
  2253.  
  2254. for j wallsofsector i,
  2255. {
  2256. set wall[i].pal 143
  2257. }
  2258. }
  2259.  
  2260. ends
  2261.  
  2262. defstate fogsprites
  2263. for i selsprites
  2264. {
  2265.  
  2266. set sprite[i].pal 128
  2267.  
  2268. }
  2269.  
  2270. ends
  2271.  
  2272. defstate skyfog2
  2273. for i allsectors
  2274. {
  2275.  
  2276. set sector[i].floorpal 143
  2277. set sector[i].ceilingpal 143
  2278.  
  2279. }
  2280.  
  2281. for i allwalls
  2282. {
  2283.  
  2284. set wall[i].pal 143
  2285.  
  2286. }
  2287.  
  2288. ends
  2289.  
  2290.  
  2291. defstate greyfog
  2292. for i allsectors
  2293. {
  2294.  
  2295. set sector[i].floorpal 128
  2296. set sector[i].ceilingpal 128
  2297.  
  2298. }
  2299.  
  2300. for i allwalls
  2301. {
  2302.  
  2303. set wall[i].pal 128
  2304.  
  2305. }
  2306.  
  2307. ends
  2308.  
  2309. defstate redfog
  2310. for i allsectors
  2311. {
  2312.  
  2313. set sector[i].floorpal 129
  2314. set sector[i].ceilingpal 129
  2315.  
  2316. }
  2317.  
  2318. for i allwalls
  2319. {
  2320.  
  2321. set wall[i].pal 129
  2322.  
  2323. }
  2324.  
  2325. ends
  2326.  
  2327. defstate fixpal
  2328. for i allsectors
  2329. {
  2330. // ife sector[i].floorpal 26 set sector[i].floorpal 128
  2331. // ife sector[i].ceilingpal 26 set sector[i].ceilingpal 128
  2332.  
  2333. ife sector[i].floorpal 19 set sector[i].floorpal 52
  2334. ife sector[i].ceilingpal 19 set sector[i].ceilingpal 52
  2335.  
  2336. ife sector[i].floorpal 26 set sector[i].floorpal 128
  2337. ife sector[i].ceilingpal 26 set sector[i].ceilingpal 128
  2338.  
  2339. ife sector[i].floorpal 27 set sector[i].floorpal 129
  2340. ife sector[i].ceilingpal 27 set sector[i].ceilingpal 129
  2341.  
  2342. ife sector[i].floorpal 28 set sector[i].floorpal 130
  2343. ife sector[i].ceilingpal 28 set sector[i].ceilingpal 130
  2344.  
  2345. ife sector[i].floorpal 29 set sector[i].floorpal 131
  2346. ife sector[i].ceilingpal 29 set sector[i].ceilingpal 131
  2347.  
  2348. ife sector[i].floorpal 30 set sector[i].floorpal 140
  2349. ife sector[i].ceilingpal 30 set sector[i].ceilingpal 140
  2350.  
  2351. ife sector[i].floorpal 31 set sector[i].floorpal 141
  2352. ife sector[i].ceilingpal 31 set sector[i].ceilingpal 141
  2353.  
  2354. ife sector[i].floorpal 32 set sector[i].floorpal 142
  2355. ife sector[i].ceilingpal 32 set sector[i].ceilingpal 142
  2356.  
  2357. ife sector[i].floorpal 33 set sector[i].floorpal 143
  2358. ife sector[i].ceilingpal 3 set sector[i].ceilingpal 143
  2359.  
  2360. ife sector[i].floorpal 34 set sector[i].floorpal 144
  2361. ife sector[i].ceilingpal 34 set sector[i].ceilingpal 144
  2362.  
  2363. ife sector[i].floorpal 35 set sector[i].floorpal 145
  2364. ife sector[i].ceilingpal 35 set sector[i].ceilingpal 145
  2365.  
  2366. ife sector[i].floorpal 36 set sector[i].floorpal 146
  2367. ife sector[i].ceilingpal 36 set sector[i].ceilingpal 146
  2368.  
  2369. ife sector[i].floorpal 17 set sector[i].floorpal 27
  2370. ife sector[i].ceilingpal 17 set sector[i].ceilingpal 27
  2371.  
  2372. ife sector[i].floorpal 18 set sector[i].floorpal 49
  2373. ife sector[i].ceilingpal 18 set sector[i].ceilingpal 49
  2374.  
  2375. ife sector[i].floorpal 22 set sector[i].floorpal 36
  2376. ife sector[i].ceilingpal 22 set sector[i].ceilingpal 36
  2377.  
  2378. }
  2379.  
  2380. for i allwalls
  2381. {
  2382.  
  2383. ife wall[i].pal 26 set wall[i].pal 128
  2384. ife wall[i].pal 27 set wall[i].pal 129
  2385. ife wall[i].pal 28 set wall[i].pal 130
  2386. ife wall[i].pal 29 set wall[i].pal 131
  2387.  
  2388. ife wall[i].pal 30 set wall[i].pal 140
  2389. ife wall[i].pal 31 set wall[i].pal 141
  2390. ife wall[i].pal 32 set wall[i].pal 142
  2391. ife wall[i].pal 33 set wall[i].pal 143
  2392. ife wall[i].pal 34 set wall[i].pal 144
  2393. ife wall[i].pal 35 set wall[i].pal 145
  2394. ife wall[i].pal 36 set wall[i].pal 146
  2395.  
  2396. ife wall[i].pal 17 set wall[i].pal 27
  2397. ife wall[i].pal 18 set wall[i].pal 49
  2398. ife wall[i].pal 19 set wall[i].pal 52
  2399. ife wall[i].pal 22 set wall[i].pal 36
  2400.  
  2401.  
  2402.  
  2403.  
  2404. }
  2405.  
  2406. for i allsprites
  2407. {
  2408. switch sprite[i].picnum
  2409. case 0
  2410. case 1
  2411. case 2
  2412. case 3
  2413. case 4
  2414. case 5
  2415. case 6
  2416. case 7
  2417. case 8
  2418. case 10
  2419. case AMCTSPAWNPOINT
  2420. case ACTIVATELEVEL
  2421. case CUTSCENECAM
  2422. case CUTSCENETEXT
  2423. case SPCOMM_LINK
  2424. case COUNTDOWN_TIMER
  2425. case DOCUMENTD
  2426. case DEBRISSPAWNER
  2427. case DOORTRANSPORT
  2428. case DOORTRANSPORTEXIT
  2429. case FLOORCEILSCROLL
  2430. case FORCE_CHARACTER
  2431. case JETPACKCIVSPAWNER
  2432. case HOVERCARSPAWNER
  2433. case BOX
  2434. case LADDER
  2435. case LOCATION
  2436. case LOCKED_DOOR
  2437. case MAKE_SWITCH
  2438. case MOVEPLAYER
  2439. case MISSIONFAILED
  2440. case MUSICCHANGE
  2441. case PARTICLEE
  2442. case MONS_SPAWNER
  2443. case GRANDFATHER_CLOCK
  2444. case PRELOAD_MUSIC
  2445. case RAINSNOWEFFECT
  2446. case RAINSNOWSTARTER
  2447. case RAINSNOWSOUND
  2448. case RANDOMSOUND
  2449. case RIGHTLEVEL
  2450. case TREESPAWNER
  2451. case SPRITE_LIFT
  2452. case SLO_MO_TRIGGER
  2453. case SPOOKY_TRIGGER
  2454. case TRIGGERONLYIFCHAR
  2455. case TIME_ZONE
  2456. case MISSIONOBJECTIVES
  2457. case WALLSCROLL
  2458. case WEAP_EQUIP_STRIP
  2459. case 10742
  2460. case TOOLBOX_FIX
  2461. case 3347
  2462. case 3788
  2463. case AMCSCIENTIST_WAYPOINT
  2464. case SPECIAL_EFFECTS
  2465. case TIME_DELAY
  2466. case 3601
  2467. case 3602
  2468. case 3609
  2469. case 17636
  2470. case 22446
  2471. case 22771
  2472. break
  2473. default
  2474. // ife sprite[i].pal 26 set sprite[i].pal 128
  2475.  
  2476.  
  2477. ife sprite[i].pal 26 set sprite[i].pal 128
  2478. ife sprite[i].pal 27 set sprite[i].pal 129
  2479. ife sprite[i].pal 28 set sprite[i].pal 130
  2480. ife sprite[i].pal 29 set sprite[i].pal 131
  2481.  
  2482. ife sprite[i].pal 30 set sprite[i].pal 140
  2483. ife sprite[i].pal 31 set sprite[i].pal 141
  2484. ife sprite[i].pal 32 set sprite[i].pal 142
  2485. ife sprite[i].pal 33 set sprite[i].pal 143
  2486. ife sprite[i].pal 34 set sprite[i].pal 144
  2487. ife sprite[i].pal 35 set sprite[i].pal 145
  2488. ife sprite[i].pal 36 set sprite[i].pal 146
  2489.  
  2490. ife sprite[i].pal 17 set sprite[i].pal 27
  2491. ife sprite[i].pal 18 set sprite[i].pal 49
  2492. ife sprite[i].pal 19 set sprite[i].pal 52
  2493. ife sprite[i].pal 22 set sprite[i].pal 36
  2494.  
  2495. break
  2496. endswitch
  2497. }
  2498. ends
  2499.  
  2500. defstate sunlight
  2501. for i selsectors
  2502. {
  2503. ifg sector[i].floorshade 9 set sector[i].floorpal 61
  2504. else set sector[i].floorpal 67
  2505.  
  2506. ifg sector[i].ceilingshade 9 set sector[i].ceilingpal 61
  2507. else set sector[i].ceilingpal 67
  2508.  
  2509. for j wallsofsector i,
  2510. {
  2511. ifg wall[j].shade 9 set wall[j].pal 61
  2512. else set wall[j].pal 67
  2513. }
  2514.  
  2515. }
  2516.  
  2517. for i selwalls
  2518. {
  2519. ifg wall[i].shade 9 set wall[i].pal 61
  2520. else set wall[i].pal 67
  2521. }
  2522.  
  2523. for i selsprites
  2524. {
  2525. switch sprite[i].picnum
  2526. case 0
  2527. case 1
  2528. case 2
  2529. case 3
  2530. case 4
  2531. case 5
  2532. case 6
  2533. case 7
  2534. case 8
  2535. case 10
  2536. case AMCTSPAWNPOINT
  2537. case ACTIVATELEVEL
  2538. case CUTSCENECAM
  2539. case CUTSCENETEXT
  2540. case SPCOMM_LINK
  2541. case COUNTDOWN_TIMER
  2542. case DOCUMENTD
  2543. case DEBRISSPAWNER
  2544. case DOORTRANSPORT
  2545. case DOORTRANSPORTEXIT
  2546. case FLOORCEILSCROLL
  2547. case FORCE_CHARACTER
  2548. case JETPACKCIVSPAWNER
  2549. case HOVERCARSPAWNER
  2550. case ITEM_BOX
  2551. case LADDER
  2552. case LOCATION
  2553. case LOCKED_DOOR
  2554. case MAKE_SWITCH
  2555. case MOVEPLAYER
  2556. case MISSIONFAILED
  2557. case MUSICCHANGE
  2558. case PARTICLEE
  2559. case MONS_SPAWNER
  2560. case GRANDFATHER_CLOCK
  2561. case PRELOAD_MUSIC
  2562. case RAINSNOWEFFECT
  2563. case RAINSNOWSTARTER
  2564. case RAINSNOWSOUND
  2565. case RANDOMSOUND
  2566. case RIGHTLEVEL
  2567. case TREESPAWNER
  2568. case SPRITE_LIFT
  2569. case SLO_MO_TRIGGER
  2570. case SPOOKY_TRIGGER
  2571. case TRIGGERONLYIFCHAR
  2572. case TIME_ZONE
  2573. case MISSIONOBJECTIVES
  2574. case WALLSCROLL
  2575. case WEAP_EQUIP_STRIP
  2576. case 10742
  2577. case TOOLBOX_FIX
  2578. case 3347
  2579. case 3788
  2580. case AMCSCIENTIST_WAYPOINT
  2581. case SPECIAL_EFFECTS
  2582. case TIME_DELAY
  2583. case 3601
  2584. case 3602
  2585. case 3609
  2586. case 17636
  2587. case 22446
  2588. case 22771
  2589. break
  2590. default
  2591. set TEMP sprite[i].sectnum
  2592. ifg sector[TEMP].floorshade 9 set sprite[i].pal 61
  2593. else set sprite[i].pal 67
  2594.  
  2595.  
  2596. break
  2597. endswitch
  2598. }
  2599. ends
  2600.  
  2601. defstate item_box_stuff
  2602. rotatesprite 220 50 32767 0 3308 0 0 33 0 0 xdim ydim
  2603. ifvarn sprite[searchwall].lotag 0 rotatesprite 230 25 16384 0 sprite[searchwall].lotag 0 0 0 0 0 xdim ydim
  2604. ifvarn sprite[searchwall].hitag 0 rotatesprite 253 25 16384 0 sprite[searchwall].hitag 0 0 0 0 0 xdim ydim
  2605. ifvarn sprite[searchwall].extra 0 rotatesprite 230 50 16384 0 sprite[searchwall].extra 0 0 0 0 0 xdim ydim
  2606. ifvarn sprite[searchwall].xvel 0 rotatesprite 253 50 16384 0 sprite[searchwall].xvel 0 0 0 0 0 xdim ydim
  2607. ifvarn sprite[searchwall].yvel 0 rotatesprite 230 75 16384 0 sprite[searchwall].yvel 0 0 0 0 0 xdim ydim
  2608. ifvarn sprite[searchwall].zvel 0 rotatesprite 253 75 16384 0 sprite[searchwall].zvel 0 0 0 0 0 xdim ydim
  2609. ends
  2610.  
  2611. defstate jbladeshade
  2612. for i selsectors
  2613. {
  2614. set sector[i].floorshade setshade
  2615. set sector[i].ceilingshade setshade
  2616.  
  2617. for j wallsofsector i
  2618. {
  2619. set wall[j].shade setshade
  2620. }
  2621.  
  2622. for j spritesofsector i
  2623. {
  2624. set sprite[j].shade setshade
  2625. }
  2626. }
  2627.  
  2628. for i selwalls
  2629. {
  2630. set wall[i].shade setshade
  2631. }
  2632.  
  2633. for i selsprites
  2634. {
  2635. set sprite[i].shade setshade
  2636. }
  2637. ends
  2638.  
  2639. defstate changewalls
  2640.  
  2641. for i selsectors
  2642. {
  2643.  
  2644. for j wallsofsector i
  2645. {
  2646. ifvare wall[j].picnum 21647
  2647. {
  2648. set wall[j].picnum 20616
  2649. }
  2650. }
  2651. }
  2652.  
  2653. ends
  2654.  
  2655. onevent EVENT_DRAW3DSCREEN
  2656.  
  2657. add ENEMY_ANIM1 1
  2658. ifg ENEMY_ANIM1 30
  2659. {
  2660. add ENEMY_ANIM2 1
  2661. ifg ENEMY_ANIM2 3 set ENEMY_ANIM2 0
  2662. set ENEMY_ANIM1 0
  2663. }
  2664.  
  2665. endevent
  2666.  
  2667.  
  2668. onevent EVENT_DRAW2DSCREEN
  2669. ifl cursectnum 0 return
  2670.  
  2671. // connect LOCATORS in a sector by lines
  2672. getarraysize ar tmp
  2673. set j 0
  2674. for i spritesofsector cursectnum
  2675. {
  2676. ifge j tmp nullop else
  2677. ifactor LOCATORS
  2678. {
  2679. set ar[j] i
  2680. add j 1
  2681. }
  2682. }
  2683.  
  2684. set tmp j
  2685. sort ar tmp cmp_by_lotag
  2686.  
  2687. sub tmp 1
  2688. for i range tmp
  2689. {
  2690. set j ar[i]
  2691. set k i, add k 1, set k ar[k]
  2692. drawline16b sprite[j].x sprite[j].y sprite[k].x sprite[k].y drawcol
  2693. }
  2694.  
  2695.  
  2696.  
  2697.  
  2698.  
  2699. set drawlinepat -1
  2700. for i allsprites
  2701. {
  2702.  
  2703. ifactor 3807
  2704. {
  2705. for i allsprites
  2706. {
  2707. ifactor 3664
  2708. {
  2709. ife sprite[i].hitag sprite[searchwall].hitag
  2710. {
  2711. drawline16b sprite[i].x sprite[i].y sprite[searchwall].x sprite[searchwall].y 2
  2712. return
  2713. }
  2714. }
  2715. ifactor 3807
  2716. {
  2717. ife sprite[i].hitag sprite[searchwall].lotag
  2718. {
  2719. drawline16b sprite[i].x sprite[i].y sprite[searchwall].x sprite[searchwall].y 3
  2720. return
  2721. }
  2722. }
  2723. }
  2724. }
  2725.  
  2726. ifactor 17920 // sunlight
  2727. ife sprite[i].pal 4
  2728. drawcircle16b sprite[i].x sprite[i].y 65535 180
  2729.  
  2730. ifactor CUTSCENECAM_CHANGE // Camera changer
  2731. drawcircle16b sprite[i].x sprite[i].y 512 180
  2732. ifactor 22261 // Camera changer
  2733. {
  2734. ife sprite[i].pal 3 drawcircle16b sprite[i].x sprite[i].y 32767 250
  2735. else drawcircle16b sprite[i].x sprite[i].y 65536 250
  2736. }
  2737. ifactor 8444 // Abyss black patheway
  2738. drawcircle16b sprite[i].x sprite[i].y 1524 220
  2739. ifactor 7924 // GAS
  2740. drawcircle16b sprite[i].x sprite[i].y 5000 250
  2741. ifactor 15614 // Civilian spawner
  2742. {
  2743. drawcircle16b sprite[i].x sprite[i].y sprite[i].hitag 50
  2744. }
  2745. ifactor 3347 // trigger
  2746. {
  2747. drawcircle16b sprite[i].x sprite[i].y sprite[i].hitag 70
  2748. }
  2749. ifactor 15615 // Civilian waypoint
  2750. {
  2751. drawcircle16b sprite[i].x sprite[i].y 1024 50
  2752.  
  2753.  
  2754. setvarvar TEMP3 sprite[i].x
  2755. addvarvar TEMP3 sprite[i].xvel
  2756.  
  2757. rotatepoint sprite[i].x sprite[i].y TEMP3 sprite[i].y sprite[i].ang TEMP5 TEMP6
  2758.  
  2759. drawline16b sprite[i].x sprite[i].y TEMP5 TEMP6 6
  2760.  
  2761.  
  2762. }
  2763.  
  2764. ifactor 1480 // Car waypoint
  2765. drawcircle16b sprite[i].x sprite[i].y 768 50
  2766. ifactor 13251 // Chopper waypoint
  2767. drawcircle16b sprite[i].x sprite[i].y 1024 250
  2768. ifactor 13227 // Phantasm ball waypoint
  2769. drawcircle16b sprite[i].x sprite[i].y 512 120
  2770.  
  2771. ifactor PARTICLEE
  2772. {
  2773. drawcircle16b sprite[i].x sprite[i].y sprite[i].hitag 1
  2774. }
  2775.  
  2776. ifactor SPRITE_DETECT
  2777. {
  2778. drawcircle16b sprite[i].x sprite[i].y sprite[i].lotag 70
  2779. }
  2780.  
  2781. }
  2782.  
  2783. endevent
  2784.  
  2785. onevent EVENT_PREKEYS3D
  2786. ifeitheralt
  2787. {
  2788. ife keystatus[KEY_W] 1
  2789. {
  2790. ife searchstat 0 fixrepeats searchwall
  2791. ife searchstat 4 fixrepeats searchwall
  2792. }
  2793. }
  2794. endevent
  2795.  
  2796. onevent EVENT_KEYS3D
  2797.  
  2798.  
  2799. // door sound tester
  2800. ifaimingwall
  2801. ifholdkey KEY_SPACE
  2802. {
  2803. set k wall[searchwall].nextsector
  2804. ifl k 0 set k searchsector
  2805.  
  2806. ife sector[k].lotag 0 return
  2807.  
  2808. for i spritesofsector k
  2809. {
  2810. ifactor MUSICANDSFX
  2811. ifge .lotag 0 ifl .lotag MAXSOUNDS
  2812. {
  2813. getsoundflags .lotag m
  2814. ifand m 1 nullop else soundonce .lotag
  2815. }
  2816. }
  2817. }
  2818.  
  2819. // swinging doors tester -- hit space on a door wall
  2820. ife searchstat 0
  2821. ifeitherctrl
  2822. ifhitkey KEY_SPACE // SE11 ST23 up:ccw
  2823. {
  2824. set k wall[searchwall].nextsector
  2825. ifl k 0 return
  2826. ifn sector[k].lotag 23 return
  2827. set tmp 0
  2828. for i loopofwall searchwall
  2829. {
  2830. ifl wall[i].nextsector 0 set tmp 1 else
  2831. ifn wall[i].nextsector k set tmp 1
  2832. }
  2833. // a weaker condition
  2834. // for i loopofwall wall[searchwall].nextwall
  2835. // {
  2836. // ifl wall[i].nextsector 0 set tmp 1 else
  2837. // ifn wall[i].nextsector searchsector set tmp 1
  2838. // }
  2839. ifn tmp 0
  2840. {
  2841. quote 7
  2842. return
  2843. }
  2844.  
  2845. set l -1
  2846. for i spritesofsector k
  2847. {
  2848. ifactor SECTOREFFECTOR ife sprite[i].lotag 11
  2849. {
  2850. set l i
  2851. ifn sprite[i].ang 512 ifn sprite[i].ang 1024 ifn sprite[i].ang 1536 set l -1
  2852. }
  2853. }
  2854. ifl l 0
  2855. {
  2856. quote 8
  2857. return
  2858. }
  2859.  
  2860. for tmp wallsofsector k
  2861. {
  2862. rotatepoint (sprite[l].x sprite[l].y) (wall[tmp].x wall[tmp].y) sprite[l].ang (i j)
  2863. dragpoint tmp i j
  2864. }
  2865. for tmp spritesofsector k
  2866. {
  2867. ifn tmp l
  2868. {
  2869. rotatepoint (sprite[l].x sprite[l].y) (sprite[tmp].x sprite[tmp].y) sprite[l].ang (i j)
  2870. bsetsprite tmp i j sprite[tmp].z
  2871. }
  2872. }
  2873. inv sprite[l].ang
  2874. }
  2875.  
  2876. ife cinbars 1
  2877. {
  2878. rotatesprite 160 100 65536 0 3542 0 0 1024 0 0 xdim ydim
  2879. }
  2880.  
  2881. ife searchstat 3
  2882. {
  2883.  
  2884. ife sprite[searchwall].picnum 1 // SECTOR EFFECTOR
  2885. {
  2886. printext256 30 580 20 31 0 65536
  2887.  
  2888. ife sprite[searchwall].lotag 79
  2889. {
  2890. printext256 25 580 30 31 0 65536
  2891. printext256 26 580 40 31 0 65536
  2892. printext256 27 580 50 31 0 65536
  2893. }
  2894.  
  2895. ife sprite[searchwall].lotag 80
  2896. {
  2897. printext256 20 580 30 31 0 65536
  2898. printext256 21 580 40 31 0 65536
  2899. printext256 22 580 50 31 0 65536
  2900. printext256 23 580 60 31 0 65536
  2901. printext256 24 580 70 31 0 65536
  2902. printext256 19 580 80 31 0 65536
  2903. }
  2904.  
  2905. ife sprite[searchwall].lotag 71
  2906. {
  2907. rotatesprite 290 30 16384 0 sprite[searchwall].hitag 0 0 0 0 0 xdim ydim
  2908. printext256 31 580 30 31 0 65536
  2909. printext256 32 580 40 143 0 65536
  2910. printext256 33 580 50 31 0 65536
  2911. printext256 34 580 60 143 0 65536
  2912. }
  2913. ife sprite[searchwall].lotag 51
  2914. {
  2915. rotatesprite 290 30 16384 0 sprite[searchwall].extra sprite[searchwall].shade sprite[searchwall].pal 0 0 0 xdim ydim
  2916. printext256 35 580 30 31 0 65536
  2917. printext256 36 580 40 31 0 65536
  2918. printext256 37 580 50 143 0 65536
  2919. ife sprite[searchwall].ang 512 printext256 38 580 60 72 0 65536
  2920. else printext256 38 580 60 31 0 65536
  2921. ife sprite[searchwall].ang 1024 printext256 39 580 70 248 0 65536
  2922. else printext256 39 580 70 143 0 65536
  2923. printext256 42 580 80 31 0 65536
  2924. printext256 43 580 100 143 0 65536
  2925. ife sprite[searchwall].xvel 2 printext256 641 580 90 72 0 65536
  2926. else printext256 641 580 90 31 0 65536
  2927. }
  2928.  
  2929. ife sprite[searchwall].lotag 52
  2930. {
  2931. rotatesprite 290 30 16384 0 sprite[searchwall].extra 0 0 0 0 0 xdim ydim
  2932. printext256 40 580 30 31 0 65536
  2933. printext256 41 580 40 143 0 65536
  2934. printext256 36 580 50 31 0 65536
  2935. printext256 37 580 60 143 0 65536
  2936. printext256 38 580 70 31 0 65536
  2937. printext256 39 580 80 143 0 65536
  2938. printext256 42 580 90 31 0 65536
  2939. printext256 43 580 100 143 0 65536
  2940. }
  2941.  
  2942. ife sprite[searchwall].lotag 53
  2943. {
  2944. printext256 44 580 30 31 0 65536
  2945. printext256 41 580 40 143 0 65536
  2946. printext256 45 580 50 31 0 65536
  2947. printext256 46 580 60 143 0 65536
  2948. }
  2949. ife sprite[searchwall].lotag 54
  2950. {
  2951. rotatesprite 290 30 16384 0 sprite[searchwall].extra sprite[searchwall].shade sprite[searchwall].pal 0 0 0 xdim ydim
  2952. rotatesprite 290 60 16384 0 sprite[searchwall].yvel sprite[searchwall].shade sprite[searchwall].pal 0 0 0 xdim ydim
  2953. printext256 47 580 30 31 0 65536
  2954. printext256 48 580 40 143 0 65536
  2955. printext256 41 580 50 31 0 65536
  2956. printext256 37 580 60 143 0 65536
  2957. }
  2958.  
  2959. ife sprite[searchwall].lotag 55
  2960. {
  2961. rotatesprite 290 30 16384 0 sprite[searchwall].extra 0 0 0 0 0 xdim ydim
  2962. printext256 49 580 30 31 0 65536
  2963. printext256 41 580 40 143 0 65536
  2964. printext256 37 580 50 31 0 65536
  2965. }
  2966.  
  2967. ife sprite[searchwall].lotag 56
  2968. {
  2969. printext256 28 580 30 31 0 65536
  2970. printext256 41 580 40 143 0 65536
  2971. printext256 29 580 50 31 0 65536
  2972. }
  2973.  
  2974. ife sprite[searchwall].lotag 57
  2975. {
  2976. rotatesprite 290 30 16384 0 sprite[searchwall].extra 0 0 0 0 0 xdim ydim
  2977. printext256 653 580 30 31 0 65536
  2978. printext256 41 580 40 143 0 65536
  2979. printext256 36 580 50 31 0 65536
  2980. printext256 37 580 60 143 0 65536
  2981. printext256 38 580 70 31 0 65536
  2982. printext256 39 580 80 143 0 65536
  2983. printext256 42 580 90 31 0 65536
  2984. printext256 43 580 100 143 0 65536
  2985. }
  2986.  
  2987. ife sprite[searchwall].lotag 58
  2988. {
  2989. rotatesprite 290 30 16384 0 sprite[searchwall].extra 0 0 0 0 0 xdim ydim
  2990. printext256 642 580 30 31 0 65536
  2991. printext256 643 580 40 143 0 65536
  2992. printext256 36 580 50 31 0 65536
  2993. printext256 37 580 60 143 0 65536
  2994. printext256 38 580 70 31 0 65536
  2995. printext256 39 580 80 143 0 65536
  2996. printext256 42 580 90 31 0 65536
  2997. printext256 640 580 100 31 0 65536
  2998. ife sprite[searchwall].xvel 2 printext256 641 580 90 72 0 65536
  2999. else printext256 641 580 90 31 0 65536
  3000. }
  3001.  
  3002. }
  3003.  
  3004. ife sprite[searchwall].picnum 9 // RESPAWN
  3005. {
  3006. ife sprite[searchwall].hitag 3795
  3007. {
  3008. printext256 510 580 30 31 0 65536
  3009. printext256 511 580 40 31 0 65536
  3010. printext256 512 580 50 31 0 65536
  3011. printext256 513 580 60 31 0 65536
  3012. printext256 514 580 70 31 0 65536
  3013. printext256 515 580 80 31 0 65536
  3014. printext256 516 580 90 31 0 65536
  3015. }
  3016. ife sprite[searchwall].hitag 22521
  3017. {
  3018. printext256 510 580 30 31 0 65536
  3019. printext256 511 580 40 31 0 65536
  3020. printext256 512 580 50 31 0 65536
  3021. printext256 513 580 60 31 0 65536
  3022. printext256 514 580 70 31 0 65536
  3023. printext256 515 580 80 31 0 65536
  3024. printext256 516 580 90 31 0 65536
  3025. }
  3026. ife sprite[searchwall].hitag 21612
  3027. {
  3028. printext256 510 580 30 31 0 65536
  3029. printext256 511 580 40 31 0 65536
  3030. printext256 512 580 50 31 0 65536
  3031. printext256 513 580 60 31 0 65536
  3032. printext256 514 580 70 31 0 65536
  3033. printext256 515 580 80 31 0 65536
  3034. printext256 516 580 90 31 0 65536
  3035. }
  3036. }
  3037.  
  3038. ife sprite[searchwall].picnum 3664 // Cutscene text
  3039. {
  3040. ifhitkey KEY_SPACE
  3041. ifeitherctrl
  3042. {
  3043. soundonce sprite[searchwall].extra
  3044. }
  3045. }
  3046.  
  3047. ife sprite[searchwall].picnum 3602 // Sound player
  3048. {
  3049. ifhitkey KEY_SPACE
  3050. ifeitherctrl
  3051. {
  3052. soundonce sprite[searchwall].lotag
  3053. }
  3054. }
  3055.  
  3056. ife sprite[searchwall].picnum SPRITE_DETECT // item scanner
  3057. {
  3058. printext256 620 580 20 31 0 65536
  3059. printext256 621 580 30 31 0 65536
  3060. printext256 622 580 40 31 0 65536
  3061. printext256 623 580 50 31 0 65536
  3062. printext256 624 580 60 31 0 65536
  3063. printext256 625 580 70 31 0 65536
  3064. }
  3065.  
  3066. ife sprite[searchwall].picnum 22446 // combat checker
  3067. {
  3068. printext256 550 580 20 31 0 65536
  3069. printext256 551 580 30 31 0 65536
  3070. printext256 552 580 40 31 0 65536
  3071. printext256 553 580 50 31 0 65536
  3072. printext256 554 580 60 31 0 65536
  3073. printext256 555 580 70 31 0 65536
  3074. printext256 556 580 80 31 0 65536
  3075. }
  3076.  
  3077.  
  3078. ife sprite[searchwall].picnum 22520 // Ship type
  3079. {
  3080. printext256 530 580 20 31 0 65536
  3081. printext256 531 580 30 31 0 65536
  3082. printext256 532 580 40 31 0 65536
  3083. printext256 533 580 50 31 0 65536
  3084. printext256 534 580 60 31 0 65536
  3085. }
  3086.  
  3087.  
  3088. ife sprite[searchwall].picnum 10570 // Guns machine
  3089. {
  3090. printext256 250 580 20 31 0 65536
  3091. printext256 251 580 30 111 0 65536
  3092. printext256 252 580 40 143 0 65536
  3093. printext256 253 580 50 74 0 65536
  3094. }
  3095.  
  3096. ife sprite[searchwall].picnum 3624 // Debris
  3097. {
  3098. printext256 240 580 20 31 0 65536
  3099. printext256 241 580 30 31 0 65536
  3100. printext256 242 580 40 31 0 65536
  3101. printext256 243 580 50 31 0 65536
  3102. printext256 238 580 60 31 0 65536
  3103. printext256 239 580 70 31 0 65536
  3104. printext256 244 580 80 31 0 65536
  3105.  
  3106. ife sprite[searchwall].lotag 1 rotatesprite 290 30 32767 0 3770 0 0 0 0 0 xdim ydim // wood
  3107. ife sprite[searchwall].lotag 2 rotatesprite 290 30 32767 0 3813 0 0 0 0 0 xdim ydim // rock 1
  3108. ife sprite[searchwall].lotag 3 rotatesprite 290 30 32767 0 10118 0 23 0 0 0 xdim ydim // rock 2
  3109. ife sprite[searchwall].lotag 4 rotatesprite 290 30 16384 0 9976 0 23 0 0 0 xdim ydim // rock 2
  3110.  
  3111. }
  3112.  
  3113. ife sprite[searchwall].picnum MUSICCHANGE
  3114. {
  3115. printext256 80 10 20 31 0 65536
  3116. printext256 81 10 30 31 0 65536
  3117. printext256 82 10 40 254 0 65536
  3118. printext256 83 10 50 31 0 65536
  3119. printext256 565 10 60 31 0 65536
  3120. }
  3121.  
  3122. ife sprite[searchwall].picnum PRELOAD_MUSIC
  3123. {
  3124. printext256 84 580 20 31 0 65536
  3125. printext256 85 580 30 31 0 65536
  3126. printext256 86 580 40 31 0 65536
  3127. }
  3128.  
  3129. ife sprite[searchwall].picnum 4954 // broken switch
  3130. {
  3131. printext256 67 580 20 31 0 65536
  3132. printext256 68 580 30 31 0 65536
  3133. printext256 69 580 40 31 0 65536
  3134. }
  3135.  
  3136. ife sprite[searchwall].picnum 4483 // broken switch
  3137. {
  3138. printext256 67 580 20 31 0 65536
  3139. printext256 68 580 30 31 0 65536
  3140. printext256 69 580 40 31 0 65536
  3141. }
  3142.  
  3143. ife sprite[searchwall].picnum 12358 // broken switch
  3144. {
  3145. printext256 67 580 20 31 0 65536
  3146. printext256 68 580 30 31 0 65536
  3147. printext256 69 580 40 31 0 65536
  3148. }
  3149.  
  3150. ife sprite[searchwall].picnum 12432 // Toolbox Fixing sprite
  3151. {
  3152. printext256 70 580 20 31 0 65536
  3153. printext256 71 580 30 31 0 65536
  3154. printext256 72 580 40 31 0 65536
  3155. printext256 73 580 50 31 0 65536
  3156. printext256 74 580 60 31 0 65536
  3157. }
  3158.  
  3159. ife sprite[searchwall].picnum 3828 // Wall scroll
  3160. {
  3161. printext256 1503 580 20 31 0 65536
  3162. printext256 1504 580 30 31 0 65536
  3163. printext256 1505 580 40 31 0 65536
  3164. printext256 1506 580 50 31 0 65536
  3165. printext256 1507 580 60 31 0 65536
  3166. }
  3167.  
  3168. ife sprite[searchwall].picnum 3829 // Floor Ceiling scroll
  3169. {
  3170. printext256 183 580 20 31 0 65536
  3171. printext256 184 580 30 31 0 65536
  3172. printext256 185 580 40 31 0 65536
  3173. printext256 186 580 50 31 0 65536
  3174. printext256 187 580 60 31 0 65536
  3175. printext256 188 580 70 143 0 65536
  3176. }
  3177.  
  3178. ife sprite[searchwall].picnum GRANDFATHER_CLOCK
  3179. {
  3180. printext256 235 580 20 31 0 65536
  3181. printext256 236 580 30 31 0 65536
  3182. printext256 237 580 40 31 0 65536
  3183. }
  3184.  
  3185. ife sprite[searchwall].picnum DOCUMENTD
  3186. {
  3187. printext256 245 580 20 31 0 65536
  3188. printext256 246 580 30 31 0 65536
  3189. printext256 247 580 40 31 0 65536
  3190. printext256 248 580 50 31 0 65536
  3191. printext256 249 580 60 31 0 65536
  3192. rotatesprite 260 70 16384 0 sprite[searchwall].hitag 0 0 0 0 0 xdim ydim
  3193. }
  3194.  
  3195. ife sprite[searchwall].picnum 12437 // Battery spot
  3196. {
  3197. printext256 75 580 20 31 0 65536
  3198. printext256 76 580 30 31 0 65536
  3199. printext256 77 580 40 31 0 65536
  3200. printext256 78 580 50 31 0 65536
  3201. }
  3202.  
  3203. ife sprite[searchwall].picnum 12116 // research
  3204. {
  3205. printext256 410 580 20 31 0 65536
  3206. printext256 411 580 30 31 0 65536
  3207. ife sprite[searchwall].hitag 1 printext256 412 580 40 31 0 65536 else printext256 412 580 40 21 0 65536
  3208. ife sprite[searchwall].hitag 2 printext256 413 580 50 31 0 65536 else printext256 413 580 50 21 0 65536
  3209. ife sprite[searchwall].hitag 3 printext256 414 580 60 31 0 65536 else printext256 414 580 60 21 0 65536
  3210. ife sprite[searchwall].hitag 4 printext256 415 580 70 31 0 65536 else printext256 415 580 70 21 0 65536
  3211. ife sprite[searchwall].hitag 5 printext256 416 580 80 31 0 65536 else printext256 416 580 80 21 0 65536
  3212. ife sprite[searchwall].hitag 6 printext256 417 580 90 31 0 65536 else printext256 417 580 90 21 0 65536
  3213. }
  3214.  
  3215. ife sprite[searchwall].picnum 12117 // research
  3216. {
  3217. printext256 410 580 20 31 0 65536
  3218. printext256 411 580 30 31 0 65536
  3219. ife sprite[searchwall].hitag 1 printext256 412 580 40 31 0 65536 else printext256 412 580 40 21 0 65536
  3220. ife sprite[searchwall].hitag 2 printext256 413 580 50 31 0 65536 else printext256 413 580 50 21 0 65536
  3221. ife sprite[searchwall].hitag 3 printext256 414 580 60 31 0 65536 else printext256 414 580 60 21 0 65536
  3222. ife sprite[searchwall].hitag 4 printext256 415 580 70 31 0 65536 else printext256 415 580 70 21 0 65536
  3223. ife sprite[searchwall].hitag 5 printext256 416 580 80 31 0 65536 else printext256 416 580 80 21 0 65536
  3224. ife sprite[searchwall].hitag 6 printext256 417 580 90 31 0 65536 else printext256 417 580 90 21 0 65536
  3225. }
  3226.  
  3227. ife sprite[searchwall].picnum 17917 // research
  3228. {
  3229. printext256 410 580 20 31 0 65536
  3230. printext256 411 580 30 31 0 65536
  3231. ife sprite[searchwall].hitag 1 printext256 412 580 40 31 0 65536 else printext256 412 580 40 21 0 65536
  3232. ife sprite[searchwall].hitag 2 printext256 413 580 50 31 0 65536 else printext256 413 580 50 21 0 65536
  3233. ife sprite[searchwall].hitag 3 printext256 414 580 60 31 0 65536 else printext256 414 580 60 21 0 65536
  3234. ife sprite[searchwall].hitag 4 printext256 415 580 70 31 0 65536 else printext256 415 580 70 21 0 65536
  3235. ife sprite[searchwall].hitag 5 printext256 416 580 80 31 0 65536 else printext256 416 580 80 21 0 65536
  3236. ife sprite[searchwall].hitag 6 printext256 417 580 90 31 0 65536 else printext256 417 580 90 21 0 65536
  3237. }
  3238.  
  3239. ife sprite[searchwall].picnum 1247 // c9
  3240. {
  3241.  
  3242. ifhitkey KEY_SPACE
  3243. {
  3244. set sprite[searchwall].xrepeat 4
  3245. }
  3246.  
  3247. }
  3248.  
  3249. ife sprite[searchwall].picnum 3694 // rain / snow sound
  3250. {
  3251. printext256 310 580 20 31 0 65536
  3252. printext256 311 580 30 31 0 65536
  3253.  
  3254. ifhitkey KEY_SPACE
  3255. ifeitherctrl
  3256. {
  3257. ife sprite[searchwall].pal 1 soundonce 899
  3258. ife sprite[searchwall].pal 2 soundonce 822
  3259. ife sprite[searchwall].pal 3 soundonce 710
  3260. }
  3261.  
  3262. }
  3263.  
  3264. ife sprite[searchwall].picnum 621 // camera
  3265. {
  3266. printext256 505 580 20 31 0 65536
  3267.  
  3268. ifhitkey KEY_SPACE
  3269. ifeitherctrl
  3270. {
  3271. set posx sprite[searchwall].x
  3272. set posy sprite[searchwall].y
  3273. set posz sprite[searchwall].z
  3274. set ang sprite[searchwall].ang
  3275. }
  3276.  
  3277. }
  3278.  
  3279.  
  3280. ife sprite[searchwall].picnum 3695 // rain / snow starter
  3281. {
  3282. printext256 305 580 20 31 0 65536
  3283. printext256 306 480 30 31 0 65536
  3284. printext256 307 480 40 31 0 65536
  3285. printext256 308 480 50 31 0 65536
  3286. printext256 309 480 60 31 0 65536
  3287. }
  3288.  
  3289. ife sprite[searchwall].picnum 3696 // rain / snow
  3290. {
  3291. printext256 300 580 20 31 0 65536
  3292. printext256 301 580 30 31 0 65536
  3293. printext256 302 580 40 31 0 65536
  3294. printext256 303 580 50 31 0 65536
  3295. printext256 304 520 60 31 0 65536
  3296. }
  3297.  
  3298. ife sprite[searchwall].picnum 3713 // move player
  3299. {
  3300. printext256 352 580 20 31 0 65536
  3301. printext256 353 580 30 31 0 65536
  3302. printext256 354 580 40 31 0 65536
  3303. }
  3304.  
  3305. ife sprite[searchwall].picnum 3347 // Activate if player near
  3306. {
  3307. printext256 370 580 20 31 0 65536
  3308. printext256 371 580 30 31 0 65536
  3309. printext256 372 580 40 31 0 65536
  3310. printext256 373 580 50 31 0 65536
  3311. printext256 374 580 60 31 0 65536
  3312. printext256 375 580 70 31 0 65536
  3313. printext256 376 580 80 31 0 65536
  3314. printext256 377 580 90 31 0 65536
  3315. }
  3316.  
  3317. ife sprite[searchwall].picnum 3610 // Inventory strip
  3318. {
  3319. printext256 380 580 20 31 0 65536
  3320. printext256 381 560 30 31 0 65536
  3321. printext256 382 560 40 31 0 65536
  3322. printext256 383 580 50 31 0 65536
  3323. printext256 384 580 60 73 0 65536
  3324. printext256 385 580 70 143 0 65536
  3325. printext256 386 580 80 31 0 65536
  3326. printext256 387 580 90 16 0 65536
  3327. }
  3328.  
  3329. ife sprite[searchwall].picnum 14548 // Scientist waypoint
  3330. {
  3331. printext256 400 580 20 31 0 65536
  3332. printext256 401 580 30 31 0 65536
  3333. printext256 402 580 40 143 0 65536
  3334. printext256 403 580 50 31 0 65536
  3335. }
  3336.  
  3337. ife sprite[searchwall].picnum 3602 // sound player
  3338. {
  3339. printext256 460 580 20 31 0 65536
  3340. printext256 461 580 30 31 0 65536
  3341. printext256 462 580 40 31 0 65536
  3342. printext256 463 580 50 31 0 65536
  3343. }
  3344.  
  3345. ife sprite[searchwall].picnum 3658 // level change
  3346. {
  3347. printext256 465 580 20 31 0 65536
  3348. printext256 466 580 30 31 0 65536
  3349. printext256 467 580 40 31 0 65536
  3350. printext256 468 580 50 31 0 65536
  3351. }
  3352.  
  3353. ife sprite[searchwall].picnum 3697 // air bubbles
  3354. printext256 470 580 20 31 0 65536
  3355.  
  3356. ife sprite[searchwall].picnum 9412 // autosave
  3357. {
  3358. printext256 471 580 20 31 0 65536
  3359. printext256 472 580 30 31 0 65536
  3360. printext256 473 580 40 31 0 65536
  3361. }
  3362.  
  3363. ife sprite[searchwall].picnum 8432 // C4 Place here
  3364. {
  3365. printext256 475 580 20 31 0 65536
  3366. printext256 476 580 30 31 0 65536
  3367. printext256 477 580 40 31 0 65536
  3368. printext256 478 580 50 31 0 65536
  3369. }
  3370.  
  3371. ife sprite[searchwall].picnum 3806 // Countdown
  3372. {
  3373. printext256 480 580 20 31 0 65536
  3374. printext256 481 580 30 31 0 65536
  3375. printext256 482 580 40 31 0 65536
  3376. printext256 483 580 50 31 0 65536
  3377. printext256 484 580 60 31 0 65536
  3378. printext256 485 580 70 31 0 65536
  3379. printext256 486 580 80 31 0 65536
  3380. }
  3381.  
  3382. ife sprite[searchwall].picnum 14 // instant respawn
  3383. {
  3384. printext256 490 580 20 31 0 65536
  3385. printext256 491 580 30 31 0 65536
  3386. printext256 492 580 40 31 0 65536
  3387. }
  3388.  
  3389.  
  3390. ife sprite[searchwall].picnum 9456 // MAKE_SWITCH
  3391. {
  3392. rotatesprite 290 30 32768 0 sprite[searchwall].zvel 0 0 0 0 0 xdim ydim
  3393. printext256 150 580 20 31 0 65536
  3394. printext256 41 580 30 143 0 65536
  3395. printext256 151 580 40 31 0 65536
  3396. printext256 152 580 50 31 0 65536
  3397. printext256 153 580 60 31 0 65536
  3398. printext256 154 580 70 4 0 65536
  3399. }
  3400.  
  3401. ife sprite[searchwall].picnum 12430 // MAKE_SWITCH
  3402. {
  3403. ife sprite[searchwall].pal 5 rotatesprite 290 60 8192 0 sprite[searchwall].lotag 0 0 0 0 0 xdim ydim
  3404. }
  3405.  
  3406.  
  3407.  
  3408. ife sprite[searchwall].picnum DOORTRANSPORT // DOOR TRANSPORT
  3409. {
  3410. printext256 160 580 20 31 0 65536
  3411. printext256 161 580 30 31 0 65536
  3412. printext256 162 580 40 31 0 65536
  3413. printext256 163 580 50 31 0 65536
  3414. printext256 164 580 60 31 0 65536
  3415. printext256 165 580 70 31 0 65536
  3416. printext256 166 580 80 74 0 65536
  3417. printext256 167 580 90 143 0 65536
  3418. printext256 168 580 100 31 0 65536
  3419. printext256 601 580 110 16 0 65536
  3420. printext256 602 580 120 31 0 65536
  3421. printext256 603 580 130 143 0 65536
  3422. printext256 604 580 140 238 0 65536
  3423. printext256 169 580 150 31 0 65536
  3424. }
  3425.  
  3426. ife sprite[searchwall].picnum 11772 // TIME PORTAL
  3427. {
  3428. printext256 660 580 20 31 0 65536
  3429. printext256 161 580 30 31 0 65536
  3430. printext256 162 580 40 31 0 65536
  3431. printext256 661 580 50 31 0 65536
  3432. printext256 662 580 60 74 0 65536
  3433. printext256 663 580 70 123 0 65536
  3434. printext256 664 580 80 16 0 65536
  3435. printext256 665 580 90 143 0 65536
  3436. }
  3437.  
  3438. ife sprite[searchwall].picnum 8038 // PADLOCK
  3439. {
  3440. printext256 170 580 20 31 0 65536
  3441. printext256 171 580 30 143 0 65536
  3442. printext256 172 580 40 143 0 65536
  3443. printext256 173 580 50 143 0 65536
  3444. ife sprite[searchwall].hitag 0 { setvar TEMP 15 rotatesprite 260 25 32767 0 GENERICKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3445. printext256 174 580 60 TEMP 0 65536
  3446. ifvarand sprite[searchwall].hitag 1 { setvar TEMP 15 rotatesprite 260 25 32767 0 FLAMEKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3447. printext256 175 580 70 TEMP 0 65536
  3448. ifvarand sprite[searchwall].hitag 2 { setvar TEMP 15 rotatesprite 260 25 32767 0 SPIDERKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3449. printext256 176 580 80 TEMP 0 65536
  3450. ifvarand sprite[searchwall].hitag 4 { setvar TEMP 15 rotatesprite 260 25 32767 0 DAGGERKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3451. printext256 177 580 90 TEMP 0 65536
  3452. ifvarand sprite[searchwall].hitag 8 { setvar TEMP 15 rotatesprite 260 25 32767 0 MOONKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3453. printext256 178 580 100 TEMP 0 65536
  3454. ifvarand sprite[searchwall].hitag 16 { setvar TEMP 15 rotatesprite 260 25 32767 0 SKULLKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3455. printext256 179 580 110 TEMP 0 65536
  3456. ifvarand sprite[searchwall].hitag 32 { setvar TEMP 15 rotatesprite 260 25 32767 0 EYEKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3457. printext256 180 580 120 TEMP 0 65536
  3458. ifvarand sprite[searchwall].hitag 64 { setvar TEMP 15 rotatesprite 260 25 32767 0 NORMAL_KEY1 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3459. printext256 181 580 120 TEMP 0 65536
  3460. ifvarand sprite[searchwall].hitag 128 { setvar TEMP 15 rotatesprite 260 25 32767 0 NORMAL_KEY2 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3461. printext256 182 580 120 TEMP 0 65536
  3462. ifvarand sprite[searchwall].hitag 256 { setvar TEMP 15 rotatesprite 260 25 32767 0 NORMAL_KEY3 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3463. printext256 183 580 120 TEMP 0 65536
  3464. ifvarand sprite[searchwall].hitag 512 { setvar TEMP 15 rotatesprite 260 25 32767 0 NORMAL_KEY4 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3465. printext256 184 580 120 TEMP 0 65536
  3466. ifvarand sprite[searchwall].hitag 1024 { setvar TEMP 15 rotatesprite 260 25 32767 0 NORMAL_KEY5 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3467. printext256 185 580 120 TEMP 0 65536
  3468. }
  3469.  
  3470. ife sprite[searchwall].picnum OLDLOCK // OLD LOCK
  3471. {
  3472. printext256 181 580 20 31 0 65536
  3473. printext256 182 580 30 143 0 65536
  3474. printext256 173 580 40 143 0 65536
  3475. ife sprite[searchwall].hitag 0 { setvar TEMP 15 rotatesprite 260 25 32767 0 GENERICKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3476. printext256 174 580 50 TEMP 0 65536
  3477. ifvarand sprite[searchwall].hitag 1 { setvar TEMP 15 rotatesprite 260 25 32767 0 FLAMEKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3478. printext256 175 580 60 TEMP 0 65536
  3479. ifvarand sprite[searchwall].hitag 2 { setvar TEMP 15 rotatesprite 260 25 32767 0 SPIDERKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3480. printext256 176 580 70 TEMP 0 65536
  3481. ifvarand sprite[searchwall].hitag 4 { setvar TEMP 15 rotatesprite 260 25 32767 0 DAGGERKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3482. printext256 177 580 80 TEMP 0 65536
  3483. ifvarand sprite[searchwall].hitag 8 { setvar TEMP 15 rotatesprite 260 25 32767 0 MOONKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3484. printext256 178 580 90 TEMP 0 65536
  3485. ifvarand sprite[searchwall].hitag 16 { setvar TEMP 15 rotatesprite 260 25 32767 0 SKULLKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3486. printext256 179 580 100 TEMP 0 65536
  3487. ifvarand sprite[searchwall].hitag 32 { setvar TEMP 15 rotatesprite 260 25 32767 0 EYEKEY 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3488. printext256 180 580 110 TEMP 0 65536
  3489. ifvarand sprite[searchwall].hitag 64 { setvar TEMP 15 rotatesprite 260 25 32767 0 NORMAL_KEY1 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3490. printext256 180 580 120 TEMP 0 65536
  3491. ifvarand sprite[searchwall].hitag 128 { setvar TEMP 15 rotatesprite 260 25 32767 0 NORMAL_KEY2 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3492. printext256 180 580 120 TEMP 0 65536
  3493. ifvarand sprite[searchwall].hitag 256 { setvar TEMP 15 rotatesprite 260 25 32767 0 NORMAL_KEY3 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3494. printext256 180 580 120 TEMP 0 65536
  3495. ifvarand sprite[searchwall].hitag 512 { setvar TEMP 15 rotatesprite 260 25 32767 0 NORMAL_KEY4 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3496. printext256 180 580 120 TEMP 0 65536
  3497. ifvarand sprite[searchwall].hitag 1024 { setvar TEMP 15 rotatesprite 260 25 32767 0 NORMAL_KEY5 0 0 0 0 0 xdim ydim } else setvar TEMP 7
  3498. printext256 180 580 120 TEMP 0 65536
  3499. }
  3500.  
  3501. ife sprite[searchwall].picnum 3654 // Mission
  3502. {
  3503. printext256 87 580 20 31 0 65536
  3504. printext256 88 580 30 31 0 65536
  3505. ife sprite[searchwall].lotag 0
  3506. {
  3507. printext256 89 580 40 31 0 65536
  3508. printext256 90 580 50 31 0 65536
  3509. printext256 91 580 60 143 0 65536
  3510. printext256 92 580 70 143 0 65536
  3511. printext256 93 580 80 143 0 65536
  3512. printext256 94 580 90 143 0 65536
  3513. printext256 95 580 100 143 0 65536
  3514. printext256 96 580 110 143 0 65536
  3515. printext256 97 580 120 143 0 65536
  3516. printext256 98 580 130 143 0 65536
  3517. printext256 99 580 140 143 0 65536
  3518. printext256 100 580 150 31 0 65536
  3519. }
  3520. }
  3521.  
  3522. ife sprite[searchwall].picnum 3655 // Particle spawner
  3523. {
  3524. printext256 270 580 20 31 0 65536
  3525.  
  3526. ife sprite[searchwall].lotag 0 setvar TEMP2 271
  3527. else ife sprite[searchwall].lotag 1 setvar TEMP2 272
  3528. else ife sprite[searchwall].lotag 2 setvar TEMP2 273
  3529. else ife sprite[searchwall].lotag 3 setvar TEMP2 274
  3530. else ife sprite[searchwall].lotag 4 setvar TEMP2 275
  3531. else ife sprite[searchwall].lotag 5 setvar TEMP2 276
  3532. else ife sprite[searchwall].lotag 6 setvar TEMP2 291
  3533. else ife sprite[searchwall].lotag 7 setvar TEMP2 292
  3534. else ife sprite[searchwall].lotag 8 setvar TEMP2 293
  3535. else ife sprite[searchwall].lotag 9 setvar TEMP2 290
  3536. else ife sprite[searchwall].lotag 11 setvar TEMP2 294
  3537. else setvar TEMP2 289
  3538. printext256 TEMP2 580 30 254 0 65536
  3539.  
  3540. ife sprite[searchwall].lotag 0 printext256 277 580 40 31 0 65536
  3541. ife sprite[searchwall].lotag 2 printext256 277 580 40 31 0 65536
  3542. ife sprite[searchwall].lotag 4 printext256 278 580 40 31 0 65536
  3543. ife sprite[searchwall].lotag 5
  3544. {
  3545. printext256 277 580 40 31 0 65536
  3546. printext256 279 580 50 248 0 65536
  3547. printext256 280 580 60 248 0 65536
  3548.  
  3549. ife sprite[searchwall].yvel 1 setvar TEMP 30 else setvar TEMP 16
  3550. printext256 281 580 70 TEMP 0 65536
  3551. ife sprite[searchwall].yvel 2 setvar TEMP 30 else setvar TEMP 16
  3552. printext256 282 580 80 TEMP 0 65536
  3553. ife sprite[searchwall].yvel 3 setvar TEMP 30 else setvar TEMP 16
  3554. printext256 283 580 90 TEMP 0 65536
  3555. ife sprite[searchwall].yvel 4 setvar TEMP 30 else setvar TEMP 16
  3556. printext256 284 580 100 TEMP 0 65536
  3557. ife sprite[searchwall].yvel 5 setvar TEMP 30 else setvar TEMP 16
  3558. printext256 285 580 110 TEMP 0 65536
  3559.  
  3560. }
  3561. ife sprite[searchwall].lotag 11
  3562. {
  3563. printext256 277 580 40 31 0 65536
  3564. printext256 279 580 50 248 0 65536
  3565. printext256 280 580 60 248 0 65536
  3566.  
  3567. ife sprite[searchwall].yvel 1 setvar TEMP 30 else setvar TEMP 16
  3568. printext256 281 580 70 TEMP 0 65536
  3569. ife sprite[searchwall].yvel 2 setvar TEMP 30 else setvar TEMP 16
  3570. printext256 282 580 80 TEMP 0 65536
  3571. ife sprite[searchwall].yvel 3 setvar TEMP 30 else setvar TEMP 16
  3572. printext256 283 580 90 TEMP 0 65536
  3573. ife sprite[searchwall].yvel 4 setvar TEMP 30 else setvar TEMP 16
  3574. printext256 284 580 100 TEMP 0 65536
  3575. ife sprite[searchwall].yvel 5 setvar TEMP 30 else setvar TEMP 16
  3576. printext256 285 580 110 TEMP 0 65536
  3577.  
  3578. }
  3579.  
  3580. }
  3581.  
  3582. ife sprite[searchwall].picnum 3831 // LOCATION
  3583. {
  3584. printext256 255 780 20 31 0 65536
  3585.  
  3586. ifvarn sprite[searchwall].lotag 0 rotatesprite 300 50 16384 0 sprite[searchwall].lotag 0 0 0 0 0 xdim ydim
  3587. ife sprite[searchwall].lotag 8448 redefinequote 256 Earth
  3588. ife sprite[searchwall].lotag 8449 redefinequote 256 Moon
  3589. ife sprite[searchwall].lotag 8450 redefinequote 256 Mars
  3590. ife sprite[searchwall].lotag 8451 redefinequote 256 Ganymede
  3591. ife sprite[searchwall].lotag 8452 redefinequote 256 Xuglop
  3592. ife sprite[searchwall].lotag 8453 redefinequote 256 Ractonia
  3593. ife sprite[searchwall].lotag 8454 redefinequote 256 X64-2
  3594. ife sprite[searchwall].lotag 8455 redefinequote 256 Terra
  3595. ife sprite[searchwall].lotag 8456 redefinequote 256 Aliran
  3596. ife sprite[searchwall].lotag 8457 redefinequote 256 Venus
  3597. ife sprite[searchwall].lotag 8458 redefinequote 256 Beta "Ravlon" 16
  3598. ife sprite[searchwall].lotag 8459 redefinequote 256 Earth
  3599. ife sprite[searchwall].lotag 8460 redefinequote 256 Jupiter
  3600. ife sprite[searchwall].lotag 8461 redefinequote 256 Unknown
  3601. ife sprite[searchwall].lotag 8462 redefinequote 256 Space Station
  3602. ife sprite[searchwall].lotag 8463 redefinequote 256 Earth
  3603. printext256 256 780 30 31 0 65536
  3604.  
  3605. }
  3606.  
  3607. ife sprite[searchwall].picnum 12379
  3608. {
  3609. printext256 13 780 20 31 0 65536
  3610. redefinequote 256 Dragon
  3611. printext256 256 780 30 31 0 65536
  3612. }
  3613.  
  3614. ife sprite[searchwall].picnum 12380
  3615. {
  3616. printext256 13 780 20 31 0 65536
  3617. redefinequote 256 City of Radio
  3618. printext256 256 780 30 31 0 65536
  3619. }
  3620.  
  3621. ife sprite[searchwall].picnum 12445
  3622. {
  3623. printext256 13 780 20 31 0 65536
  3624. redefinequote 256 reside, fish
  3625. printext256 256 780 30 31 0 65536
  3626. }
  3627.  
  3628. ife sprite[searchwall].picnum 12446
  3629. {
  3630. printext256 13 780 20 31 0 65536
  3631. redefinequote 256 Danger, Raging, emperor, imperialism, dinosaur
  3632. printext256 256 780 30 31 0 65536
  3633. }
  3634.  
  3635. ife sprite[searchwall].picnum 12447
  3636. {
  3637. printext256 13 780 20 31 0 65536
  3638. redefinequote 256 reside, fish
  3639. printext256 256 780 30 31 0 65536
  3640. }
  3641.  
  3642. ife sprite[searchwall].picnum 12449
  3643. {
  3644. printext256 13 780 20 31 0 65536
  3645. redefinequote 256 Danger, soldier, lot, inside
  3646. printext256 256 780 30 31 0 65536
  3647. }
  3648.  
  3649. ife sprite[searchwall].picnum 12450
  3650. {
  3651. printext256 13 780 20 31 0 65536
  3652. redefinequote 256 Destroy, demolish, damage
  3653. printext256 256 780 30 31 0 65536
  3654. }
  3655.  
  3656. ife sprite[searchwall].picnum 12454
  3657. {
  3658. printext256 13 780 20 31 0 65536
  3659. redefinequote 256 Gold transporation street service
  3660. printext256 256 780 30 31 0 65536
  3661. }
  3662.  
  3663. ife sprite[searchwall].picnum 12454
  3664. {
  3665. printext256 13 780 20 31 0 65536
  3666. redefinequote 256 Gold transporation street service
  3667. printext256 256 780 30 31 0 65536
  3668. }
  3669.  
  3670. ife sprite[searchwall].picnum 12455
  3671. {
  3672. printext256 13 780 20 31 0 65536
  3673. redefinequote 256 Special day, pot of cooked vegetables
  3674. printext256 256 780 30 31 0 65536
  3675. }
  3676.  
  3677. ife sprite[searchwall].picnum 12456
  3678. {
  3679. printext256 13 780 20 31 0 65536
  3680. redefinequote 256 Car
  3681. printext256 256 780 30 31 0 65536
  3682. }
  3683.  
  3684. ife sprite[searchwall].picnum 12457
  3685. {
  3686. printext256 13 780 20 31 0 65536
  3687. redefinequote 256 Gold (name)
  3688. printext256 256 780 30 31 0 65536
  3689. }
  3690.  
  3691. ife sprite[searchwall].picnum 12458
  3692. {
  3693. printext256 13 780 20 31 0 65536
  3694. redefinequote 256 Drunk
  3695. printext256 256 780 30 31 0 65536
  3696. }
  3697.  
  3698. ife sprite[searchwall].picnum 12459
  3699. {
  3700. printext256 13 780 20 31 0 65536
  3701. redefinequote 256 Finally lucky two
  3702. printext256 256 780 30 31 0 65536
  3703. }
  3704.  
  3705. ife sprite[searchwall].picnum 12462
  3706. {
  3707. printext256 13 780 20 31 0 65536
  3708. redefinequote 256 Advert for a grindstone producer
  3709. printext256 256 780 30 31 0 65536
  3710. }
  3711.  
  3712. ife sprite[searchwall].picnum 12477
  3713. {
  3714. printext256 13 780 20 31 0 65536
  3715. redefinequote 256 Advert
  3716. printext256 256 780 30 31 0 65536
  3717. }
  3718.  
  3719. ife sprite[searchwall].picnum 12478
  3720. {
  3721. printext256 13 780 20 31 0 65536
  3722. redefinequote 256 Soap Factory
  3723. printext256 256 780 30 31 0 65536
  3724. }
  3725.  
  3726. ife sprite[searchwall].picnum 12479
  3727. {
  3728. printext256 13 780 20 31 0 65536
  3729. redefinequote 256 Law Court
  3730. printext256 256 780 30 31 0 65536
  3731. }
  3732.  
  3733. ife sprite[searchwall].picnum 12480
  3734. {
  3735. printext256 13 780 20 31 0 65536
  3736. redefinequote 256 Storm Wind
  3737. printext256 256 780 30 31 0 65536
  3738. }
  3739.  
  3740. ife sprite[searchwall].picnum 12481
  3741. {
  3742. printext256 13 780 20 31 0 65536
  3743. redefinequote 256 Rain
  3744. printext256 256 780 30 31 0 65536
  3745. }
  3746.  
  3747. ife sprite[searchwall].picnum 16298
  3748. {
  3749. printext256 13 780 20 31 0 65536
  3750. redefinequote 256 Ninja
  3751. printext256 256 780 30 31 0 65536
  3752. }
  3753.  
  3754. ife sprite[searchwall].picnum 16376
  3755. {
  3756. printext256 13 780 20 31 0 65536
  3757. redefinequote 256 Jewels and Gold store
  3758. printext256 256 780 30 31 0 65536
  3759. }
  3760.  
  3761. ife sprite[searchwall].picnum 16377
  3762. {
  3763. printext256 13 780 20 31 0 65536
  3764. redefinequote 256 Chow Sang Sang jeweler
  3765. printext256 256 780 30 31 0 65536
  3766. }
  3767.  
  3768. ife sprite[searchwall].picnum 16378
  3769. {
  3770. printext256 13 780 20 31 0 65536
  3771. redefinequote 256 Street Intersection
  3772. printext256 256 780 30 31 0 65536
  3773. }
  3774.  
  3775. ife sprite[searchwall].picnum 16379
  3776. {
  3777. printext256 13 780 20 31 0 65536
  3778. redefinequote 256 China large great mortage
  3779. printext256 256 780 30 31 0 65536
  3780. }
  3781.  
  3782. ife sprite[searchwall].picnum 16951
  3783. {
  3784. printext256 13 780 20 31 0 65536
  3785. redefinequote 256 Last of Samurai
  3786. printext256 256 780 30 31 0 65536
  3787. }
  3788.  
  3789. ife sprite[searchwall].picnum 18119
  3790. {
  3791. printext256 13 780 20 31 0 65536
  3792. redefinequote 256 Ocean Skydiving
  3793. printext256 256 780 30 31 0 65536
  3794. }
  3795.  
  3796. ife sprite[searchwall].picnum 18133
  3797. {
  3798. printext256 13 780 20 31 0 65536
  3799. redefinequote 256 Hell
  3800. printext256 256 780 30 31 0 65536
  3801. }
  3802.  
  3803. ife sprite[searchwall].picnum 12031 state item_box_stuff
  3804.  
  3805. ife sprite[searchwall].picnum 11249 state item_box_stuff
  3806.  
  3807. ife sprite[searchwall].picnum 5664 state item_box_stuff
  3808.  
  3809. // CUTSCENE TEXT
  3810. ife sprite[searchwall].picnum 3664
  3811. {
  3812. printext256 440 580 20 31 0 65536
  3813. printext256 441 580 30 31 0 65536
  3814. printext256 442 580 40 31 0 65536
  3815. printext256 443 580 50 31 0 65536
  3816. printext256 444 580 60 31 0 65536
  3817. printext256 445 580 70 31 0 65536
  3818. printext256 446 580 80 31 0 65536
  3819.  
  3820. ifhitkey KEY_SPACE
  3821. ifeitherctrl
  3822. ifn sprite[searchwall].extra -1
  3823. {
  3824. soundonce sprite[searchwall].extra
  3825. }
  3826.  
  3827. }
  3828.  
  3829. // gas effect
  3830. ife sprite[searchwall].picnum 7924
  3831. {
  3832. printext256 450 580 20 62 0 65536
  3833. printext256 451 580 30 112 0 65536
  3834. printext256 452 580 40 143 0 65536
  3835. printext256 453 580 50 62 0 65536
  3836. printext256 454 580 60 62 0 65536
  3837. printext256 455 580 70 62 0 65536
  3838. printext256 456 580 80 62 0 65536
  3839. printext256 457 580 90 62 0 65536
  3840. printext256 458 580 100 62 0 65536
  3841. }
  3842.  
  3843. // counter
  3844. ife sprite[searchwall].picnum 17636
  3845. {
  3846. printext256 520 580 20 62 0 65536
  3847. printext256 521 580 30 112 0 65536
  3848. printext256 522 580 40 143 0 65536
  3849. printext256 523 580 50 62 0 65536
  3850. }
  3851.  
  3852.  
  3853. // RANDOM SOUND EFFECTOR
  3854. ife sprite[searchwall].picnum RANDOMSOUND
  3855. {
  3856. printext256 210 580 20 31 0 65536
  3857. printext256 211 580 30 31 0 65536
  3858. printext256 212 580 40 64 0 65536
  3859. printext256 213 580 50 143 0 65536
  3860. printext256 214 580 60 31 0 65536
  3861. printext256 215 580 70 120 0 65536
  3862. printext256 216 580 80 31 0 65536
  3863. printext256 217 580 90 127 0 65536
  3864. printext256 218 580 100 156 0 65536
  3865. printext256 219 580 110 112 0 65536
  3866. }
  3867.  
  3868. ife sprite[searchwall].picnum LOCKED_DOOR
  3869. {
  3870. printext256 220 580 20 31 0 65536
  3871. printext256 221 580 30 31 0 65536
  3872. printext256 222 580 40 64 0 65536
  3873. printext256 223 580 50 143 0 65536
  3874. printext256 224 580 60 31 0 65536
  3875. printext256 225 580 70 120 0 65536
  3876. printext256 226 580 80 31 0 65536
  3877. printext256 230 580 90 31 0 65536
  3878.  
  3879. printext256 227 580 100 31 0 65536
  3880. printext256 228 580 110 31 0 65536
  3881. printext256 229 580 120 31 0 65536
  3882.  
  3883. ifhitkey KEY_SPACE
  3884. ifeitherctrl
  3885. {
  3886. ife sprite[searchwall].pal 0 soundonce 1063 else
  3887. ife sprite[searchwall].pal 1 soundonce 1064 else
  3888. ife sprite[searchwall].pal 2 soundonce 1065 else
  3889. ife sprite[searchwall].pal 3 soundonce 1228 else
  3890. ife sprite[searchwall].pal 4 soundonce 1783 else
  3891. ife sprite[searchwall].pal 5 soundonce 1784 else
  3892. ife sprite[searchwall].pal 6 soundonce 2735
  3893. }
  3894.  
  3895. }
  3896.  
  3897. ife sprite[searchwall].picnum 13251
  3898. {
  3899. printext256 260 580 20 31 0 65536
  3900. printext256 261 580 30 31 0 65536
  3901. printext256 262 580 40 31 0 65536
  3902. printext256 263 580 50 31 0 65536
  3903. printext256 264 580 60 31 0 65536
  3904. printext256 265 580 70 31 0 65536
  3905. printext256 266 580 80 31 0 65536
  3906. printext256 267 580 90 31 0 65536
  3907.  
  3908. ifvarn sprite[searchwall].zvel 0 rotatesprite 280 30 25000 0 sprite[searchwall].zvel 0 sprite[searchwall].pal 0 0 0 xdim ydim
  3909. }
  3910.  
  3911. ife sprite[searchwall].picnum 10564
  3912. {
  3913. printext256 60 580 20 31 0 65536
  3914.  
  3915. qsprintf 62 61 sprite[searchwall].lotag
  3916. printext256 62 580 30 31 0 65536
  3917.  
  3918. qsprintf 62 63 sprite[searchwall].hitag
  3919. printext256 62 580 40 250 0 65536
  3920.  
  3921. qsprintf 62 64 sprite[searchwall].yvel
  3922. printext256 62 580 50 247 0 65536
  3923.  
  3924. ife sprite[searchwall].xvel 1 printext256 66 580 60 244 0 65536
  3925.  
  3926.  
  3927. ife sprite[searchwall].pal 3 printext256 65 580 70 31 0 65536
  3928. ifvarn sprite[searchwall].extra 0 rotatesprite 280 30 25000 0 sprite[searchwall].extra 0 sprite[searchwall].pal 0 0 0 xdim ydim
  3929. }
  3930.  
  3931. ife sprite[searchwall].picnum RESPAWN
  3932. {
  3933. printext256 50 580 20 31 0 65536
  3934.  
  3935. ifvarn sprite[searchwall].hitag 0 rotatesprite 250 30 25000 0 sprite[searchwall].hitag 0 sprite[searchwall].pal 0 0 0 xdim ydim
  3936. ife sprite[searchwall].hitag 1404 // If the player is respawning the fake player sprite
  3937. {
  3938. printext256 198 580 20 31 0 65536
  3939. printext256 134 580 30 31 0 65536
  3940. printext256 135 580 40 64 0 65536
  3941. printext256 136 580 50 143 0 65536
  3942. printext256 137 580 60 31 0 65536
  3943. printext256 138 580 70 120 0 65536
  3944. printext256 139 580 80 31 0 65536
  3945. printext256 141 580 90 31 0 65536
  3946. printext256 142 580 100 31 0 65536
  3947. printext256 197 580 110 31 0 65536
  3948.  
  3949. ife sprite[searchwall].extra 0 rotatesprite 290 30 32767 0 5245 0 0 0 0 0 xdim ydim // James
  3950. ife sprite[searchwall].extra 1 rotatesprite 290 30 32767 0 5501 0 0 0 0 0 xdim ydim // Zaxtor
  3951. ife sprite[searchwall].extra 2 rotatesprite 290 30 32767 0 6400 0 21 0 0 0 xdim ydim // Merlijn
  3952. ife sprite[searchwall].extra 3 rotatesprite 290 30 32767 0 6013 0 11 0 0 0 xdim ydim // Highwire
  3953. ife sprite[searchwall].extra 4 rotatesprite 290 30 32767 0 6336 0 21 0 0 0 xdim ydim // Sang
  3954. ife sprite[searchwall].extra 5 rotatesprite 290 30 28767 0 6656 0 12 0 0 0 xdim ydim // Rusty
  3955. ife sprite[searchwall].extra 6 rotatesprite 290 30 32767 0 6429 0 21 0 0 0 xdim ydim // Geoffrey
  3956. ife sprite[searchwall].extra 7 rotatesprite 290 30 32767 0 6912 0 11 0 0 0 xdim ydim // Mikko
  3957. ife sprite[searchwall].extra 13 rotatesprite 290 30 22767 0 16384 0 0 0 0 0 xdim ydim // Micky
  3958. }
  3959. }
  3960.  
  3961. ife sprite[searchwall].picnum 1404 // player dummy
  3962. {
  3963. printext256 198 10 20 31 0 65536
  3964.  
  3965. printext256 134 10 30 31 0 65536
  3966. printext256 135 10 40 182 0 65536
  3967. printext256 136 10 50 143 0 65536
  3968. printext256 137 10 60 111 0 65536
  3969. printext256 138 10 70 143 0 65536
  3970. printext256 139 10 80 31 0 65536
  3971. printext256 141 10 90 143 0 65536
  3972. printext256 142 10 100 112 0 65536
  3973. printext256 1142 10 110 64 0 65536
  3974. printext256 1143 10 120 239 0 65536
  3975. printext256 197 10 130 31 0 65536
  3976.  
  3977. printext256 560 10 150 31 0 65536
  3978. printext256 561 10 160 31 0 65536
  3979. printext256 562 10 170 31 0 65536
  3980. printext256 563 10 180 31 0 65536
  3981. printext256 564 10 190 31 0 65536
  3982.  
  3983. ife sprite[searchwall].extra 0 rotatesprite 290 30 32767 0 5245 0 0 0 0 0 xdim ydim // James
  3984. ife sprite[searchwall].extra 1 rotatesprite 290 30 32767 0 5501 0 0 0 0 0 xdim ydim // Zaxtor
  3985. ife sprite[searchwall].extra 2 rotatesprite 290 30 32767 0 6400 0 21 0 0 0 xdim ydim // Merlijn
  3986. ife sprite[searchwall].extra 3 rotatesprite 290 30 32767 0 6013 0 11 0 0 0 xdim ydim // Highwire
  3987. ife sprite[searchwall].extra 4 rotatesprite 290 30 32767 0 6336 0 21 0 0 0 xdim ydim // Sang
  3988. ife sprite[searchwall].extra 5 rotatesprite 290 30 28767 0 6656 0 12 0 0 0 xdim ydim // Rusty
  3989. ife sprite[searchwall].extra 6 rotatesprite 290 30 32767 0 6429 0 21 0 0 0 xdim ydim // Geoffrey
  3990. ife sprite[searchwall].extra 7 rotatesprite 290 30 32767 0 6912 0 11 0 0 0 xdim ydim // Mikko
  3991. ife sprite[searchwall].extra 13 rotatesprite 290 30 22767 0 16384 0 0 0 0 0 xdim ydim // Micky
  3992. ife sprite[searchwall].extra 14 rotatesprite 290 30 22767 0 20736 0 0 0 0 0 xdim ydim // Snowfall
  3993. }
  3994.  
  3995. ife sprite[searchwall].picnum 3712 // character spawn point
  3996. {
  3997. printext256 119 580 20 31 0 65536
  3998. printext256 121 580 30 31 0 65536
  3999. printext256 122 580 40 64 0 65536
  4000. printext256 123 580 50 143 0 65536
  4001. printext256 124 580 60 31 0 65536
  4002. printext256 125 580 70 120 0 65536
  4003. printext256 126 580 80 31 0 65536
  4004. printext256 127 580 90 31 0 65536
  4005. printext256 128 580 100 31 0 65536
  4006.  
  4007. ife sprite[searchwall].pal 0 rotatesprite 290 90 32767 0 5245 0 0 0 0 0 xdim ydim // James
  4008. ife sprite[searchwall].pal 1 rotatesprite 290 90 32767 0 5501 0 0 0 0 0 xdim ydim // Zaxtor
  4009. ife sprite[searchwall].pal 2 rotatesprite 290 90 32767 0 6400 0 23 0 0 0 xdim ydim // Merlijn
  4010. ife sprite[searchwall].pal 3 rotatesprite 290 90 32767 0 6013 0 11 0 0 0 xdim ydim // Highwire
  4011. ife sprite[searchwall].pal 4 rotatesprite 290 90 32767 0 6336 0 21 0 0 0 xdim ydim // Sang
  4012. ife sprite[searchwall].pal 5 rotatesprite 290 90 28767 0 6656 0 12 0 0 0 xdim ydim // Rusty
  4013. ife sprite[searchwall].pal 6 rotatesprite 290 90 32767 0 6429 0 21 0 0 0 xdim ydim // Geoffrey
  4014. ife sprite[searchwall].pal 7 rotatesprite 290 90 32767 0 6912 0 11 0 0 0 xdim ydim // Mikko
  4015. ife sprite[searchwall].pal 13 rotatesprite 290 90 22767 0 16384 0 0 0 0 0 xdim ydim // Micky
  4016. }
  4017.  
  4018.  
  4019. ife sprite[searchwall].picnum 3805 // Force player
  4020. {
  4021. printext256 120 580 20 31 0 65536
  4022.  
  4023. printext256 121 580 30 31 0 65536
  4024. printext256 122 580 40 182 0 65536
  4025. printext256 123 580 50 143 0 65536
  4026. printext256 124 580 60 111 0 65536
  4027. printext256 125 580 70 143 0 65536
  4028. printext256 126 580 80 31 0 65536
  4029. printext256 127 580 90 143 0 65536
  4030. printext256 128 580 100 112 0 65536
  4031. printext256 129 580 110 31 0 65536
  4032. printext256 130 580 120 47 0 65536
  4033. printext256 131 580 130 159 0 65536
  4034. printext256 132 580 140 64 0 65536
  4035. printext256 133 580 150 79 0 65536
  4036. printext256 1133 580 160 64 0 65536
  4037. printext256 1134 580 170 239 0 65536
  4038.  
  4039. printext256 320 580 180 31 0 65536
  4040. printext256 430 580 190 31 0 65536
  4041.  
  4042.  
  4043.  
  4044. ife sprite[searchwall].pal 0 rotatesprite 290 90 32767 0 5245 0 0 0 0 0 xdim ydim // James
  4045. ife sprite[searchwall].pal 1 rotatesprite 290 90 32767 0 5501 0 0 0 0 0 xdim ydim // Zaxtor
  4046. ife sprite[searchwall].pal 2 rotatesprite 290 90 32767 0 6400 0 23 0 0 0 xdim ydim // Merlijn
  4047. ife sprite[searchwall].pal 3 rotatesprite 290 90 32767 0 6013 0 11 0 0 0 xdim ydim // Highwire
  4048. ife sprite[searchwall].pal 4 rotatesprite 290 90 32767 0 6336 0 21 0 0 0 xdim ydim // Sang
  4049. ife sprite[searchwall].pal 5 rotatesprite 290 90 28767 0 6656 0 12 0 0 0 xdim ydim // Rusty
  4050. ife sprite[searchwall].pal 6 rotatesprite 290 90 32767 0 6429 0 21 0 0 0 xdim ydim // Geoffrey
  4051. ife sprite[searchwall].pal 7 rotatesprite 290 90 32767 0 6912 0 11 0 0 0 xdim ydim // Mikko
  4052. ife sprite[searchwall].pal 9 rotatesprite 290 90 28767 0 CULTIST 0 0 0 0 0 xdim ydim // Cultist
  4053. ife sprite[searchwall].pal 10 rotatesprite 290 90 32767 0 10365 0 0 0 0 0 xdim ydim // Bombshell
  4054. ife sprite[searchwall].pal 11 rotatesprite 290 90 32767 0 11956 0 0 0 0 0 xdim ydim // Maarten
  4055. ife sprite[searchwall].pal 12 rotatesprite 290 90 32767 0 12801 0 12 0 0 0 xdim ydim // Jane
  4056. ife sprite[searchwall].pal 13 rotatesprite 290 90 22767 0 16384 0 0 0 0 0 xdim ydim // Micky
  4057. ife sprite[searchwall].pal 14 rotatesprite 290 90 22767 0 20736 0 0 0 0 0 xdim ydim // Snowfall
  4058. }
  4059.  
  4060. ife sprite[searchwall].picnum 3649 // Trigger only if char
  4061. {
  4062. printext256 140 580 20 31 0 65536
  4063. printext256 121 580 30 31 0 65536
  4064. printext256 122 580 40 64 0 65536
  4065. printext256 123 580 50 143 0 65536
  4066. printext256 124 580 60 31 0 65536
  4067. printext256 125 580 70 120 0 65536
  4068. printext256 126 580 80 31 0 65536
  4069. printext256 127 580 90 31 0 65536
  4070. printext256 128 580 100 31 0 65536
  4071. printext256 130 580 110 31 0 65536
  4072. printext256 131 580 120 31 0 65536
  4073. printext256 132 580 130 31 0 65536
  4074. printext256 133 580 140 31 0 65536
  4075. printext256 323 580 150 31 0 65536
  4076. printext256 360 580 160 31 0 65536
  4077. printext256 361 580 170 31 0 65536
  4078.  
  4079. ife sprite[searchwall].pal 0 rotatesprite 290 90 32767 0 5245 0 0 0 0 0 xdim ydim // James
  4080. ife sprite[searchwall].pal 1 rotatesprite 290 90 32767 0 5501 0 0 0 0 0 xdim ydim // Zaxtor
  4081. ife sprite[searchwall].pal 2 rotatesprite 290 90 32767 0 6400 0 23 0 0 0 xdim ydim // Merlijn
  4082. ife sprite[searchwall].pal 3 rotatesprite 290 90 32767 0 6013 0 11 0 0 0 xdim ydim // Highwire
  4083. ife sprite[searchwall].pal 4 rotatesprite 290 90 32767 0 6336 0 21 0 0 0 xdim ydim // Sang
  4084. ife sprite[searchwall].pal 5 rotatesprite 290 90 28767 0 6656 0 12 0 0 0 xdim ydim // Rusty
  4085. ife sprite[searchwall].pal 6 rotatesprite 290 90 32767 0 6429 0 21 0 0 0 xdim ydim // Geoffrey
  4086. ife sprite[searchwall].pal 7 rotatesprite 290 90 32767 0 6912 0 11 0 0 0 xdim ydim // Mikko
  4087. ife sprite[searchwall].pal 9 rotatesprite 290 90 28767 0 CULTIST 0 0 0 0 0 xdim ydim // Cultist
  4088. ife sprite[searchwall].pal 10 rotatesprite 290 90 32767 0 9936 0 0 0 0 0 xdim ydim // Bombshell
  4089. ife sprite[searchwall].pal 11 rotatesprite 290 90 32767 0 11956 0 0 0 0 0 xdim ydim // Maarten
  4090. ife sprite[searchwall].pal 12 rotatesprite 290 90 32767 0 12801 0 12 0 0 0 xdim ydim // Jane
  4091. ife sprite[searchwall].pal 13 rotatesprite 290 90 22767 0 16384 0 0 0 0 0 xdim ydim // Micky
  4092. }
  4093.  
  4094.  
  4095. ife sprite[searchwall].picnum CUTSCENECAM
  4096. {
  4097. printext256 199 580 20 31 0 65536
  4098. ife sprite[searchwall].pal 0 redefinequote 500 Pal 0 = No Transition
  4099. else ife sprite[searchwall].pal 3 redefinequote 500 Pal 3 = Fade in Black, Fade out Black
  4100. else ife sprite[searchwall].pal 5 redefinequote 500 Pal 5 = Fade in black, fade out white
  4101. else ife sprite[searchwall].pal 6 redefinequote 500 Pal 6 = Fade in white, fade out black
  4102. else ife sprite[searchwall].pal 9 redefinequote 500 Pal 9 = Fade in white, fade out white
  4103. else ife sprite[searchwall].pal 10 redefinequote 500 Pal 10 = Fade out black
  4104. else ife sprite[searchwall].pal 11 redefinequote 500 Pal 11 = Fade out White
  4105. else ife sprite[searchwall].pal 12 redefinequote 500 Pal 12 = AMC transition effect
  4106. else ife sprite[searchwall].pal 13 redefinequote 500 Pal 13 = Fade out black
  4107. else ife sprite[searchwall].pal 14 redefinequote 500 Pal 14 = Fade in white
  4108. else ife sprite[searchwall].pal 20 redefinequote 500 Pal 20 = Fade in black
  4109. else ife sprite[searchwall].pal 21 redefinequote 500 Pal 21 = Clear last fade, fade out black
  4110. else ife sprite[searchwall].pal 22 redefinequote 500 Pal 22 = Clear last fade, fade out white
  4111. else ife sprite[searchwall].pal 40 redefinequote 500 Pal 40 = fade to black and loading transition
  4112. else ife sprite[searchwall].pal 41 redefinequote 500 Pal 41 = fade to white and loading transition
  4113. printext256 500 580 30 31 0 65536
  4114. ife sprite[searchwall].yvel 0 redefinequote 501 YVEL 0 = Normal type
  4115. else ife sprite[searchwall].yvel 1 redefinequote 501 YVEL 1 = Cinematic bars
  4116. else ife sprite[searchwall].yvel 2 redefinequote 501 YVEL 2 = lock player, Cinematic bars
  4117. else ife sprite[searchwall].yvel 3 redefinequote 501 YVEL 3 = lock player, Cinematic bars, clear text
  4118. else ife sprite[searchwall].yvel 4 redefinequote 501 YVEL 4 = AMC ship's cockpit
  4119. printext256 501 580 40 31 0 65536
  4120. setvar TEMP 50
  4121. ife sprite[searchwall].zvel 0 printext256 101 580 TEMP 31 0 65536
  4122. else
  4123. {
  4124. setvarvar tmp sprite[searchwall].zvel
  4125. ifvarand tmp 1 { printext256 102 580 TEMP 31 0 65536 }
  4126. ifvarand tmp 2 { addvar TEMP 10 printext256 103 580 TEMP 31 0 65536 }
  4127. ifvarand tmp 4 { addvar TEMP 10 printext256 104 580 TEMP 31 0 65536 }
  4128. ifvarand tmp 8 { addvar TEMP 10 printext256 105 580 TEMP 31 0 65536 }
  4129. ifvarand tmp 16 { addvar TEMP 10 printext256 106 580 TEMP 31 0 65536 }
  4130. ifvarand tmp 32 { addvar TEMP 10 printext256 107 580 TEMP 31 0 65536 }
  4131. ifvarand tmp 64 { addvar TEMP 10 printext256 108 580 TEMP 31 0 65536 }
  4132. ifvarand tmp 128 { addvar TEMP 10 printext256 109 580 TEMP 31 0 65536 }
  4133. ifvarand tmp 256 { addvar TEMP 10 printext256 110 580 TEMP 31 0 65536 }
  4134. ifvarand tmp 512 { addvar TEMP 10 printext256 111 580 TEMP 31 0 65536 }
  4135. ifvarand tmp 1024 { addvar TEMP 10 printext256 112 580 TEMP 31 0 65536 }
  4136. ifvarand tmp 2048 { addvar TEMP 10 printext256 113 580 TEMP 31 0 65536 }
  4137. ifvarand tmp 4096 { addvar TEMP 10 printext256 114 580 TEMP 31 0 65536 }
  4138. }
  4139. ife sprite[searchwall].owner -1 redefinequote 502 OWNER -1 = Normal type
  4140. else ife sprite[searchwall].owner 0 redefinequote 502 OWNER 0 = Normal type
  4141. else ife sprite[searchwall].owner 1 redefinequote 502 OWNER 1 = Water/Blue
  4142. else ife sprite[searchwall].owner 2 redefinequote 502 OWNER 2 = Nightvision/Green
  4143. else ife sprite[searchwall].owner 3 redefinequote 502 OWNER 3 = Flashback/Slomo
  4144. else ife sprite[searchwall].owner 4 redefinequote 502 OWNER 4 = Greyscale
  4145. else ife sprite[searchwall].owner 5 redefinequote 502 OWNER 5 = Heat/Red
  4146. addvar TEMP 10
  4147. printext256 502 580 TEMP 31 0 65536
  4148. ifvarand tmp 4096
  4149. {
  4150. setvarvar TEMP2 sprite[searchwall].shade
  4151. ifvarg TEMP2 116 mulvar TEMP2 10
  4152. else ifvarg TEMP2 96 mulvar TEMP2 5
  4153. else ifvarg TEMP2 64 mulvar TEMP2 4
  4154. else ifvarg TEMP2 32 mulvar TEMP2 3
  4155. else ifvarg TEMP2 16 mulvar TEMP2 2
  4156. ifvarl TEMP2 -116 mulvar TEMP2 10
  4157. else ifvarl TEMP2 -96 mulvar TEMP2 5
  4158. else ifvarl TEMP2 -64 mulvar TEMP2 4
  4159. else ifvarl TEMP2 -32 mulvar TEMP2 3
  4160. else ifvarl TEMP2 -16 mulvar TEMP2 2
  4161. qsprintf 116 115 TEMP2
  4162. addvar TEMP 10 printext256 116 580 TEMP 31 0 65536
  4163. }
  4164.  
  4165. ifhitkey KEY_SPACE
  4166. ifeitherctrl
  4167. {
  4168. set posx sprite[searchwall].x
  4169. set posy sprite[searchwall].y
  4170. set posz sprite[searchwall].z
  4171. set ang sprite[searchwall].ang
  4172. set horiz sprite[searchwall].extra
  4173. }
  4174.  
  4175. }
  4176.  
  4177. ife sprite[searchwall].picnum 3811
  4178. {
  4179. printext256 199 580 20 31 0 65536
  4180. ife sprite[searchwall].pal 0 redefinequote 500 Pal 0 = No Transition
  4181. else ife sprite[searchwall].pal 3 redefinequote 500 Pal 3 = Fade in Black, Fade out Black
  4182. else ife sprite[searchwall].pal 5 redefinequote 500 Pal 5 = Fade in black, fade out white
  4183. else ife sprite[searchwall].pal 6 redefinequote 500 Pal 6 = Fade in white, fade out black
  4184. else ife sprite[searchwall].pal 9 redefinequote 500 Pal 9 = Fade in white, fade out white
  4185. else ife sprite[searchwall].pal 10 redefinequote 500 Pal 10 = Fade out black
  4186. else ife sprite[searchwall].pal 11 redefinequote 500 Pal 11 = Fade out White
  4187. else ife sprite[searchwall].pal 12 redefinequote 500 Pal 12 = AMC transition effect
  4188. else ife sprite[searchwall].pal 13 redefinequote 500 Pal 13 = Fade out black
  4189. else ife sprite[searchwall].pal 14 redefinequote 500 Pal 14 = Fade in white
  4190. else ife sprite[searchwall].pal 20 redefinequote 500 Pal 20 = Fade in black
  4191. else ife sprite[searchwall].pal 21 redefinequote 500 Pal 21 = Clear last fade, fade out black
  4192. else ife sprite[searchwall].pal 22 redefinequote 500 Pal 22 = Clear last fade, fade out white
  4193. printext256 500 580 30 31 0 65536
  4194. ife sprite[searchwall].yvel 0 redefinequote 501 YVEL 0 = Normal type
  4195. else ife sprite[searchwall].yvel 1 redefinequote 501 YVEL 1 = Cinematic bars
  4196. else ife sprite[searchwall].yvel 2 redefinequote 501 YVEL 2 = lock player, Cinematic bars
  4197. else ife sprite[searchwall].yvel 3 redefinequote 501 YVEL 3 = lock player, Cinematic bars, clear text
  4198. else ife sprite[searchwall].yvel 4 redefinequote 501 YVEL 4 = AMC ship's cockpit
  4199. printext256 501 580 40 31 0 65536
  4200. setvar TEMP 50
  4201. ife sprite[searchwall].zvel 0 printext256 101 580 TEMP 31 0 65536
  4202. else
  4203. {
  4204. setvarvar tmp sprite[searchwall].zvel
  4205. ifvarand tmp 1 { printext256 102 580 TEMP 31 0 65536 }
  4206. ifvarand tmp 2 { addvar TEMP 10 printext256 103 580 TEMP 31 0 65536 }
  4207. ifvarand tmp 4 { addvar TEMP 10 printext256 104 580 TEMP 31 0 65536 }
  4208. ifvarand tmp 8 { addvar TEMP 10 printext256 105 580 TEMP 31 0 65536 }
  4209. ifvarand tmp 16 { addvar TEMP 10 printext256 106 580 TEMP 31 0 65536 }
  4210. ifvarand tmp 32 { addvar TEMP 10 printext256 107 580 TEMP 31 0 65536 }
  4211. ifvarand tmp 64 { addvar TEMP 10 printext256 108 580 TEMP 31 0 65536 }
  4212. ifvarand tmp 128 { addvar TEMP 10 printext256 109 580 TEMP 31 0 65536 }
  4213. ifvarand tmp 256 { addvar TEMP 10 printext256 110 580 TEMP 31 0 65536 }
  4214. ifvarand tmp 512 { addvar TEMP 10 printext256 111 580 TEMP 31 0 65536 }
  4215. ifvarand tmp 1024 { addvar TEMP 10 printext256 112 580 TEMP 31 0 65536 }
  4216. ifvarand tmp 2048 { addvar TEMP 10 printext256 113 580 TEMP 31 0 65536 }
  4217. ifvarand tmp 4096 { addvar TEMP 10 printext256 114 580 TEMP 31 0 65536 }
  4218. }
  4219. ife sprite[searchwall].owner -1 redefinequote 502 OWNER -1 = Normal type
  4220. else ife sprite[searchwall].owner 0 redefinequote 502 OWNER 0 = Normal type
  4221. else ife sprite[searchwall].owner 1 redefinequote 502 OWNER 1 = Water/Blue
  4222. else ife sprite[searchwall].owner 2 redefinequote 502 OWNER 2 = Nightvision/Green
  4223. else ife sprite[searchwall].owner 3 redefinequote 502 OWNER 3 = Flashback/Slomo
  4224. else ife sprite[searchwall].owner 4 redefinequote 502 OWNER 4 = Greyscale
  4225. else ife sprite[searchwall].owner 5 redefinequote 502 OWNER 5 = Heat/Red
  4226. addvar TEMP 10
  4227. printext256 502 580 TEMP 31 0 65536
  4228. ifvarand tmp 4096
  4229. {
  4230. setvarvar TEMP2 sprite[searchwall].shade
  4231. ifvarg TEMP2 116 mulvar TEMP2 10
  4232. else ifvarg TEMP2 96 mulvar TEMP2 5
  4233. else ifvarg TEMP2 64 mulvar TEMP2 4
  4234. else ifvarg TEMP2 32 mulvar TEMP2 3
  4235. else ifvarg TEMP2 16 mulvar TEMP2 2
  4236. ifvarl TEMP2 -116 mulvar TEMP2 10
  4237. else ifvarl TEMP2 -96 mulvar TEMP2 5
  4238. else ifvarl TEMP2 -64 mulvar TEMP2 4
  4239. else ifvarl TEMP2 -32 mulvar TEMP2 3
  4240. else ifvarl TEMP2 -16 mulvar TEMP2 2
  4241. qsprintf 116 115 TEMP2
  4242. addvar TEMP 10 printext256 116 580 TEMP 31 0 65536
  4243. }
  4244.  
  4245. ifhitkey KEY_SPACE
  4246. ifeitherctrl
  4247. {
  4248. set posx sprite[searchwall].x
  4249. set posy sprite[searchwall].y
  4250. set posz sprite[searchwall].z
  4251. set ang sprite[searchwall].ang
  4252. set horiz sprite[searchwall].extra
  4253. }
  4254.  
  4255. }
  4256.  
  4257. ife sprite[searchwall].picnum LADDER
  4258. {
  4259. redefinequote 500 LADDER
  4260. printext256 500 580 20 31 0 65536
  4261. ife sprite[searchwall].xvel 1 redefinequote 500 Allow sliding = Yes
  4262. else redefinequote 500 Allow sliding = No
  4263. printext256 500 580 30 254 0 65536
  4264. redefinequote 500 Place one sprite at top and bottom of climbable location,
  4265. printext256 500 580 40 248 0 65536
  4266. redefinequote 500 and give both the same hitag. Give an XVEL of 1 to allow
  4267. printext256 500 580 50 248 0 65536
  4268. redefinequote 500 sliding down. Give a spritepal of 3 to allow climbing from
  4269. printext256 500 580 60 248 0 65536
  4270. redefinequote 500 all directions. Give a YVEL equal to an activator's tag to
  4271. printext256 500 580 70 248 0 65536
  4272. redefinequote 500 make it unlockable.
  4273. printext256 500 580 80 248 0 65536
  4274. redefinequote 500 LADDER SOUND
  4275. printext256 500 580 100 31 0 65536
  4276. redefinequote 500 Lotag 903 = Metal Ladder 1
  4277. printext256 500 580 110 31 0 65536
  4278. redefinequote 500 Lotag 904 = Metal Ladder 2
  4279. printext256 500 580 120 31 0 65536
  4280. redefinequote 500 Lotag 906 = Rope Ladder
  4281. printext256 500 580 130 31 0 65536
  4282. redefinequote 500 Lotag 408 = Wood Ladder
  4283. printext256 500 580 140 31 0 65536
  4284. redefinequote 500 Lotag 2617 = Rock climb
  4285. printext256 500 580 150 31 0 65536
  4286. redefinequote 500 Spritepal 3 = climbable from all angles
  4287. printext256 500 580 170 31 0 65536
  4288. redefinequote 500 Give a ZVEL to both parts if you want it to be
  4289. printext256 500 580 180 31 0 65536
  4290. redefinequote 500 usable only when the player uses the rope item (no 17916)
  4291. printext256 500 580 190 31 0 65536
  4292. redefinequote 500 Give sprite 18481 same hitag as this ZVEL to make it appear
  4293. printext256 500 580 200 31 0 65536
  4294. }
  4295.  
  4296. ife sprite[searchwall].picnum 3592
  4297. {
  4298. redefinequote 500 Time Delay
  4299. printext256 500 580 20 31 0 65536
  4300. redefinequote 500 When activated, will wait an amount of time and then trigger another tag
  4301. printext256 500 580 30 31 0 65536
  4302. redefinequote 500 Hitag - tag to be triggered by
  4303. printext256 500 580 40 31 0 65536
  4304. redefinequote 500 Extra - time to wait (30 = 1 second)
  4305. printext256 500 580 50 31 0 65536
  4306. redefinequote 500 Lotag - tag to activate when time is up
  4307. printext256 500 580 60 31 0 65536
  4308. redefinequote 500 Give a spritepal of 3 to print it's timer to console for testing purposes
  4309. printext256 500 580 70 31 0 65536
  4310. }
  4311.  
  4312. }
  4313.  
  4314.  
  4315.  
  4316.  
  4317. // teleporter
  4318.  
  4319. ife searchstat 3
  4320. ifeitherctrl
  4321. ifhitkey KEY_SPACE
  4322. {
  4323. ife sprite[searchwall].picnum 9
  4324. {
  4325. setvar TEMP 0
  4326. whilevarn TEMP MAXSPRITES
  4327. {
  4328. ifvare sprite[TEMP].hitag 14848
  4329. ife sprite[TEMP].picnum 9
  4330. {
  4331. set sprite[TEMP].hitag 19969
  4332. set sprite[TEMP].pal 3
  4333. }
  4334. ifvare sprite[TEMP].hitag 14849
  4335. ife sprite[TEMP].picnum 9
  4336. {
  4337. set sprite[TEMP].hitag 19970
  4338. set sprite[TEMP].pal 3
  4339. }
  4340. addvar TEMP 1
  4341. }
  4342. }
  4343. ife sprite[searchwall].picnum 14848
  4344. {
  4345. setvar TEMP 0
  4346. whilevarn TEMP MAXSPRITES
  4347. {
  4348. ifvare sprite[TEMP].picnum 14848
  4349. {
  4350. set sprite[TEMP].picnum 19969
  4351. set sprite[TEMP].pal 3
  4352. }
  4353. addvar TEMP 1
  4354. }
  4355. }
  4356. ife sprite[searchwall].picnum 14849
  4357. {
  4358. setvar TEMP 0
  4359. whilevarn TEMP MAXSPRITES
  4360. {
  4361. ifvare sprite[TEMP].picnum 14849
  4362. {
  4363. set sprite[TEMP].picnum 19970
  4364. set sprite[TEMP].pal 3
  4365. }
  4366. addvar TEMP 1
  4367. }
  4368. }
  4369.  
  4370.  
  4371. ife sprite[searchwall].picnum DOORTRANSPORT
  4372. {
  4373. ife sprite[searchwall].lotag 0 { quote 10 return }
  4374. for i allsprites
  4375. {
  4376. ifn i searchwall, ifactor DOORTRANSPORTEXIT, ife sprite[i].hitag sprite[searchwall].lotag
  4377. {
  4378. set posx sprite[i].x
  4379. set posy sprite[i].y
  4380. set posz sprite[i].z
  4381. set ang sprite[i].ang
  4382.  
  4383. soundonce sprite[searchwall].xvel
  4384.  
  4385. updatecursectnum
  4386.  
  4387. return
  4388. }
  4389. }
  4390. }
  4391.  
  4392. ife sprite[searchwall].picnum TIME_PORTAL
  4393. {
  4394. ife sprite[searchwall].lotag 0 { quote 10 return }
  4395. for i allsprites
  4396. {
  4397. ifn i searchwall, ifactor DOORTRANSPORTEXIT, ife sprite[i].hitag sprite[searchwall].lotag
  4398. {
  4399. set posx sprite[i].x
  4400. set posy sprite[i].y
  4401. set posz sprite[i].z
  4402. set ang sprite[i].ang
  4403.  
  4404. updatecursectnum
  4405.  
  4406. return
  4407. }
  4408. }
  4409. }
  4410.  
  4411. ife sprite[searchwall].picnum VR_BOOTH
  4412. {
  4413. ife sprite[searchwall].lotag 0 { quote 10 return }
  4414. for i allsprites
  4415. {
  4416. ifn i searchwall, ifactor DOORTRANSPORTEXIT, ife sprite[i].hitag sprite[searchwall].lotag
  4417. {
  4418. set posx sprite[i].x
  4419. set posy sprite[i].y
  4420. set posz sprite[i].z
  4421. set ang sprite[i].ang
  4422.  
  4423. updatecursectnum
  4424.  
  4425. return
  4426. }
  4427. }
  4428. }
  4429.  
  4430. ife sprite[searchwall].picnum DOORTRANSPORTEXIT
  4431. {
  4432. ife sprite[searchwall].hitag 0 { quote 12 return }
  4433. for i allsprites
  4434. {
  4435. ifn i searchwall, ifactor DOORTRANSPORT, ife sprite[i].lotag sprite[searchwall].hitag
  4436. {
  4437. set posx sprite[i].x
  4438. set posy sprite[i].y
  4439. set posz sprite[i].z
  4440. set ang sprite[i].ang
  4441.  
  4442. updatecursectnum
  4443.  
  4444. return
  4445. }
  4446. }
  4447. }
  4448.  
  4449. ife sprite[searchwall].picnum SECTOREFFECTOR
  4450. {
  4451. set tmp 0
  4452. ife sprite[searchwall].lotag 7 set tmp 1
  4453. ife sprite[searchwall].lotag 17 set tmp 1
  4454. ife tmp 0 return
  4455.  
  4456.  
  4457. for i allsprites
  4458. {
  4459. ifn i searchwall, ifactor SECTOREFFECTOR
  4460. {
  4461. ife sprite[i].lotag sprite[searchwall].lotag
  4462. {
  4463. ife sprite[i].hitag sprite[searchwall].hitag
  4464. {
  4465. add posx sprite[i].x, sub posx sprite[searchwall].x
  4466. add posy sprite[i].y, sub posy sprite[searchwall].y
  4467. add posz sprite[i].z, sub posz sprite[searchwall].z
  4468.  
  4469. updatecursectnum
  4470.  
  4471. return
  4472. }
  4473. }
  4474. else
  4475. ife sprite[i].lotag 23
  4476. {
  4477. ife sprite[i].hitag sprite[searchwall].hitag
  4478. {
  4479. add posx sprite[i].x, sub posx sprite[searchwall].x
  4480. add posy sprite[i].y, sub posy sprite[searchwall].y
  4481. add posz sprite[i].z, sub posz sprite[searchwall].z
  4482.  
  4483. updatecursectnum
  4484.  
  4485. return
  4486. }
  4487. }
  4488. }
  4489. }
  4490. }
  4491.  
  4492.  
  4493. }
  4494.  
  4495. endevent
  4496.  
  4497. // LOCATORS auto-incrementer
  4498. onevent EVENT_INSERTSPRITE2D
  4499. globalsound 2401
  4500. set k I
  4501. set j -1
  4502. for i spritesofsector .sectnum
  4503. {
  4504. ifn i k, ifactor LOCATORS, ifg .lotag j
  4505. set j .lotag
  4506. }
  4507. ifg j -1
  4508. {
  4509. add j 1
  4510. set .lotag j
  4511. }
  4512. endevent
  4513.  
  4514. onevent EVENT_INSERTSPRITE3D
  4515. globalsound 2401
  4516. endevent
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement