Rev 61 | Rev 73 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 61 | Rev 71 | ||
---|---|---|---|
1 | /* |
1 | /* |
2 | -------------------------------------------------------------------------------- |
2 | -------------------------------------------------------------------------------- |
3 | Duke Caribbean: Life's A Beach |
3 | Duke Caribbean: Life's A Beach |
4 | By Joris Weimar |
4 | By Joris Weimar |
5 | © 1997 Sunstorm Interactive |
5 | © 1997 Sunstorm Interactive |
6 | -------------------------------------------------------------------------------- |
6 | -------------------------------------------------------------------------------- |
7 | Duke Caribbean: Life's A Beach Plus |
7 | Duke Caribbean: Life's A Beach Plus |
8 | By Hendricks266 |
8 | By Hendricks266 |
9 | -------------------------------------------------------------------------------- |
9 | -------------------------------------------------------------------------------- |
10 | */ |
10 | */ |
11 | 11 | ||
12 | definegamefuncname 34 Sunglasses |
12 | definegamefuncname 34 Sunglasses |
13 | definegamefuncname 35 Crate_of_Bananas |
13 | definegamefuncname 35 Crate_of_Bananas |
14 | definegamefuncname 48 Hot_Sauce |
14 | definegamefuncname 48 Hot_Sauce |
15 | 15 | ||
16 | definecheat 14 endepisode |
- | |
17 | definecheat 15 endlevel |
- | |
18 | // definecheat 23 creditcards |
- | |
19 | // keys |
- | |
20 | definecheat 25 endvolume |
- | |
21 | - | ||
22 | include VacaDefs.con |
16 | include VacaDefs.con |
23 | include VacaUser.con |
17 | include VacaUser.con |
24 | include VSounds.con |
18 | include VSounds.con |
25 | include VBeachBall.con |
19 | include VBeachBall.con |
26 | 20 | ||
27 | spritenoshade GROWAMMO |
21 | spritenoshade GROWAMMO |
28 | 22 | ||
29 | setgamename Duke Caribbean: Life's A Beach |
23 | setgamename Duke Caribbean: Life's A Beach |
30 | 24 | ||
31 | gamevar temp 0 2 |
25 | gamevar temp 0 2 |
32 | gamevar x 0 2 |
26 | gamevar x 0 2 |
33 | gamevar y 0 2 |
27 | gamevar y 0 2 |
34 | gamevar picnum 0 2 |
28 | gamevar picnum 0 2 |
35 | 29 | ||
36 | gamevar temp2 0 2 |
30 | gamevar temp2 0 2 |
37 | gamevar temp3 0 2 |
31 | gamevar temp3 0 2 |
38 | gamevar x2 0 2 |
32 | gamevar x2 0 2 |
39 | gamevar y2 0 2 |
33 | gamevar y2 0 2 |
40 | gamevar pose 0 0 |
34 | gamevar pose 0 0 |
41 | 35 | ||
42 | // disable hardcoded Polymer dynamic lighting muzzle flashes |
36 | // disable hardcoded Polymer dynamic lighting muzzle flashes |
43 | gamevar WEAPON1_FLASHCOLOR 0 1 |
37 | gamevar WEAPON1_FLASHCOLOR 0 1 |
44 | gamevar WEAPON2_FLASHCOLOR 0 1 |
38 | gamevar WEAPON2_FLASHCOLOR 0 1 |
45 | gamevar WEAPON3_FLASHCOLOR 0 1 |
39 | gamevar WEAPON3_FLASHCOLOR 0 1 |
46 | gamevar WEAPON4_FLASHCOLOR 0 1 |
40 | gamevar WEAPON4_FLASHCOLOR 0 1 |
47 | gamevar WEAPON7_FLASHCOLOR 0 1 |
41 | gamevar WEAPON7_FLASHCOLOR 0 1 |
48 | gamevar WEAPON9_FLASHCOLOR 0 1 |
42 | gamevar WEAPON9_FLASHCOLOR 0 1 |
49 | 43 | ||
50 | // disable voodoo ring glowing flag |
44 | // disable voodoo ring glowing flag |
51 | // even though only the crystals are supposed to glow, bugs in EDuke32 have caused the frames to glow too |
45 | // even though only the crystals are supposed to glow, bugs in EDuke32 have caused the frames to glow too |
52 | gamevar WEAPON6_FLAGS 0 1 |
46 | gamevar WEAPON6_FLAGS 0 1 |
53 | gamevar WEAPON11_FLAGS 0 1 |
47 | gamevar WEAPON11_FLAGS 0 1 |
54 | 48 | ||
55 | // disable visibility clearing |
49 | // disable visibility clearing |
56 | gamevar WEAPON1_FLAGS 33024 1 |
50 | gamevar WEAPON1_FLAGS 33024 1 |
57 | gamevar WEAPON2_FLAGS 1280 1 |
51 | gamevar WEAPON2_FLAGS 1280 1 |
58 | gamevar WEAPON3_FLAGS 74068 1 |
52 | gamevar WEAPON3_FLAGS 74068 1 |
59 | gamevar WEAPON4_FLAGS 256 1 |
53 | gamevar WEAPON4_FLAGS 256 1 |
60 | gamevar WEAPON7_FLAGS 328 1 |
54 | gamevar WEAPON7_FLAGS 328 1 |
61 | gamevar WEAPON9_FLAGS 65792 1 |
55 | gamevar WEAPON9_FLAGS 65792 1 |
62 | 56 | ||
63 | onevent EVENT_GETMENUTILE |
57 | onevent EVENT_GETMENUTILE |
64 | setvar RETURN 3281 |
58 | setvar RETURN 3281 |
65 | endevent |
59 | endevent |
66 | 60 | ||
67 | /* |
61 | /* |
68 | onevent EVENT_GETLOADTILE |
62 | onevent EVENT_GETLOADTILE |
69 | ifvare VOLUME 2 |
63 | ifvare VOLUME 2 |
70 | { |
64 | { |
71 | ifvare LEVEL 2 setvar RETURN 19665 |
65 | ifvare LEVEL 2 setvar RETURN 19665 |
72 | ifvare LEVEL 3 setvar RETURN 19665 |
66 | ifvare LEVEL 3 setvar RETURN 19665 |
73 | } |
67 | } |
74 | endevent |
68 | endevent |
75 | 69 | ||
76 | onevent EVENT_DISPLAYLOADINGSCREEN |
70 | onevent EVENT_DISPLAYLOADINGSCREEN |
77 | ifvare VOLUME 2 |
71 | ifvare VOLUME 2 |
78 | { |
72 | { |
79 | ifvare LEVEL 2 rotatesprite 160 100 65536 0 3706 0 0 2 0 0 xdim ydim |
73 | ifvare LEVEL 2 rotatesprite 160 100 65536 0 3706 0 0 2 0 0 xdim ydim |
80 | ifvare LEVEL 3 rotatesprite 160 95 65536 0 3639 0 0 2 0 0 xdim ydim |
74 | ifvare LEVEL 3 rotatesprite 160 95 65536 0 3639 0 0 2 0 0 xdim ydim |
81 | } |
75 | } |
82 | endevent |
76 | endevent |
83 | */ |
77 | */ |
84 | 78 | ||
85 | state cutsceneambience |
79 | state cutsceneambience |
86 | getactor[THISACTOR].lotag temp |
80 | getactor[THISACTOR].lotag temp |
87 | 81 | ||
88 | switch temp |
82 | switch temp |
89 | 83 | ||
90 | case WIND_AMBIENCE |
84 | case WIND_AMBIENCE |
91 | case WIND_REPEAT |
85 | case WIND_REPEAT |
92 | setactor[THISACTOR].lotag WIND2 |
86 | setactor[THISACTOR].lotag WIND2 |
93 | break |
87 | break |
94 | 88 | ||
95 | endswitch |
89 | endswitch |
96 | ends |
90 | ends |
97 | 91 | ||
98 | onevent EVENT_LOADACTOR |
92 | onevent EVENT_LOADACTOR |
99 | getactor[THISACTOR].picnum picnum |
93 | getactor[THISACTOR].picnum picnum |
100 | switch picnum |
94 | switch picnum |
101 | 95 | ||
102 | case DRAGON sizeat 42 50 break |
96 | case DRAGON sizeat 42 50 break |
103 | case BEACHBABE1 sizeat 40 40 break |
97 | case BEACHBABE1 sizeat 40 40 break |
104 | case BEACHBALL sizeat 30 30 break |
98 | case BEACHBALL sizeat 30 30 break |
105 | case BEACHBATHER1 sizeat 42 40 break |
99 | case BEACHBATHER1 sizeat 42 40 break |
106 | case SEAGULL sizeat 20 20 break |
100 | case SEAGULL sizeat 20 20 break |
107 | 101 | ||
108 | case GROWSPRITEICON sizeat 28 28 break |
102 | case GROWSPRITEICON sizeat 28 28 break |
109 | 103 | ||
110 | case 681 case 682 case 683 case 684 cactor CHAIR3 break |
104 | case 681 case 682 case 683 case 684 cactor CHAIR3 break |
111 | 105 | ||
112 | case CAMERA1 |
106 | case CAMERA1 |
113 | getactor[THISACTOR].cstat temp |
107 | getactor[THISACTOR].cstat temp |
114 | setvar temp2 0 |
108 | setvar temp2 0 |
115 | ifvarand temp 4 addvar temp2 4 |
109 | ifvarand temp 4 addvar temp2 4 |
116 | ifvarand temp 8 addvar temp2 8 |
110 | ifvarand temp 8 addvar temp2 8 |
117 | setactor[THISACTOR].cstat temp2 |
111 | setactor[THISACTOR].cstat temp2 |
118 | break |
112 | break |
119 | 113 | ||
120 | case MUSICANDSFX |
114 | case MUSICANDSFX |
121 | state cutsceneambience |
115 | state cutsceneambience |
122 | break |
116 | break |
123 | 117 | ||
124 | endswitch |
118 | endswitch |
125 | endevent |
119 | endevent |
126 | 120 | ||
127 | gamevar LOGO_FLAGS 767 0 // default; TEN screen reenabled |
121 | gamevar LOGO_FLAGS 767 0 // default; TEN screen reenabled |
128 | 122 | ||
129 | onevent EVENT_GAME |
123 | onevent EVENT_GAME |
130 | getactor[THISACTOR].picnum picnum |
124 | getactor[THISACTOR].picnum picnum |
131 | switch picnum |
125 | switch picnum |
132 | 126 | ||
133 | case RPG |
127 | case RPG |
134 | case FREEZEBLAST |
128 | case FREEZEBLAST |
135 | setactor[THISACTOR].htflags 256 |
129 | setactor[THISACTOR].htflags 256 |
136 | break |
130 | break |
137 | 131 | ||
138 | case FIRELASER |
132 | case FIRELASER |
139 | spritepal 1 |
133 | spritepal 1 |
140 | setactor[THISACTOR].htflags 256 |
134 | setactor[THISACTOR].htflags 256 |
141 | break |
135 | break |
142 | 136 | ||
143 | /* |
137 | /* |
144 | case MUSICANDSFX |
138 | case MUSICANDSFX |
145 | ifsound WIND_AMBIENCE stopsound WIND_AMBIENCE |
139 | ifsound WIND_AMBIENCE stopsound WIND_AMBIENCE |
146 | ifsound WIND_REPEAT stopsound WIND_REPEAT |
140 | ifsound WIND_REPEAT stopsound WIND_REPEAT |
147 | break |
141 | break |
148 | */ |
142 | */ |
149 | 143 | ||
150 | case CHAIR3 |
144 | case CHAIR3 |
151 | ifvare temp3 0 |
145 | ifvare temp3 0 |
152 | { |
146 | { |
153 | findnearsprite3d 1037 768 temp |
147 | findnearsprite3d 1037 768 temp |
154 | ifvarn temp -1 |
148 | ifvarn temp -1 |
155 | { |
149 | { |
156 | getactor[temp].x x2 |
150 | getactor[temp].x x2 |
157 | getactor[temp].y y2 |
151 | getactor[temp].y y2 |
158 | getactor[THISACTOR].x x |
152 | getactor[THISACTOR].x x |
159 | getactor[THISACTOR].y y // gets the coordinates of the chair and table |
153 | getactor[THISACTOR].y y // gets the coordinates of the chair and table |
160 | subvarvar x2 x |
154 | subvarvar x2 x |
161 | subvarvar y2 y |
155 | subvarvar y2 y |
162 | getangle temp2 x2 y2 // calculates the angle to face the table |
156 | getangle temp2 x2 y2 // calculates the angle to face the table |
163 | setactor[THISACTOR].ang temp2 // sets the angle |
157 | setactor[THISACTOR].ang temp2 // sets the angle |
164 | setvar temp3 1 |
158 | setvar temp3 1 |
165 | } |
159 | } |
166 | else setvar temp3 1 |
160 | else setvar temp3 1 |
167 | } |
161 | } |
168 | break |
162 | break |
169 | 163 | ||
170 | case SHELL |
164 | case SHELL |
171 | case SHOTGUNSHELL |
165 | case SHOTGUNSHELL |
172 | killit |
166 | killit |
173 | break |
167 | break |
174 | 168 | ||
175 | case CAMERA1 |
169 | case CAMERA1 |
176 | setactor[THISACTOR].cstat temp2 |
170 | setactor[THISACTOR].cstat temp2 |
177 | break |
171 | break |
178 | 172 | ||
179 | case SMALLSMOKE |
173 | case SMALLSMOKE |
180 | ifspawnedby RPG killit |
174 | ifspawnedby RPG killit |
181 | break |
175 | break |
182 | 176 | ||
183 | case SHOTSPARK1 |
177 | case SHOTSPARK1 |
184 | ifspawnedby JIBS6 spritepal 1 |
178 | ifspawnedby JIBS6 spritepal 1 |
185 | ifspawnedby BLOODSPLAT1 spritepal 1 |
179 | ifspawnedby BLOODSPLAT1 spritepal 1 |
186 | ifspawnedby SHOTSPARK1 spritepal 1 |
180 | ifspawnedby SHOTSPARK1 spritepal 1 |
187 | ifspawnedby SHOTGUN spritepal 1 |
181 | ifspawnedby SHOTGUN spritepal 1 |
188 | ifspawnedby CHAINGUN spritepal 1 |
182 | ifspawnedby CHAINGUN spritepal 1 |
189 | ifspawnedby FIRELASER spritepal 1 |
183 | ifspawnedby FIRELASER spritepal 1 |
190 | ifspawnedby APLAYER spritepal 1 |
184 | ifspawnedby APLAYER spritepal 1 |
191 | ifspawnedby RPG killit |
185 | ifspawnedby RPG killit |
192 | ifspritepal 1 setactor[THISACTOR].htflags 256 // replace with blue light placement code when available |
186 | ifspritepal 1 setactor[THISACTOR].htflags 256 // replace with blue light placement code when available |
193 | break |
187 | break |
194 | 188 | ||
195 | case GROWAMMO |
189 | case GROWAMMO |
196 | setactor[THISACTOR].mdflags 16 |
190 | setactor[THISACTOR].mdflags 16 |
197 | break |
191 | break |
198 | 192 | ||
199 | endswitch |
193 | endswitch |
200 | endevent |
194 | endevent |
201 | 195 | ||
202 | onevent EVENT_EGS |
196 | onevent EVENT_EGS |
203 | getactor[THISACTOR].picnum picnum |
197 | getactor[THISACTOR].picnum picnum |
204 | switch picnum |
198 | switch picnum |
205 | 199 | ||
206 | case FREEZEAMMO |
200 | case FREEZEAMMO |
207 | spritepal 1 |
201 | spritepal 1 |
208 | spawn BLOODPOOL // spawn a water puddle as an added "cool" effect |
202 | spawn BLOODPOOL // spawn a water puddle as an added "cool" effect |
209 | getlastpal |
203 | getlastpal |
210 | break |
204 | break |
211 | 205 | ||
212 | case WATERSPLASH2 |
206 | case WATERSPLASH2 |
213 | ifspawnedby SEAGULLSHIT spritepal 19 |
207 | ifspawnedby SEAGULLSHIT spritepal 19 |
214 | break |
208 | break |
215 | 209 | ||
216 | endswitch |
210 | endswitch |
217 | endevent |
211 | endevent |
218 | 212 | ||
219 | state scrap3_colorchange |
213 | state scrap3_colorchange |
220 | ifspritepal 10 spritepal 2 |
214 | ifspritepal 10 spritepal 2 |
221 | else ifspritepal 11 spritepal 8 |
215 | else ifspritepal 11 spritepal 8 |
222 | else ifspritepal 12 spritepal 0 |
216 | else ifspritepal 12 spritepal 0 |
223 | else ifspritepal 13 spritepal 0 // needs work |
217 | else ifspritepal 13 spritepal 0 // needs work |
224 | else ifspritepal 14 spritepal 8 |
218 | else ifspritepal 14 spritepal 8 |
225 | else ifspritepal 15 spritepal 7 // needs work |
219 | else ifspritepal 15 spritepal 7 // needs work |
226 | else ifspritepal 16 spritepal 1 |
220 | else ifspritepal 16 spritepal 1 |
227 | else ifspritepal 18 spritepal 0 |
221 | else ifspritepal 18 spritepal 0 |
228 | else ifspritepal 21 spritepal 2 |
222 | else ifspritepal 21 spritepal 2 |
229 | else ifspritepal 22 spritepal 8 |
223 | else ifspritepal 22 spritepal 8 |
230 | else ifspritepal 23 spritepal 7 |
224 | else ifspritepal 23 spritepal 7 |
231 | else spritepal 1 // This is so that the white SCRAP3 will turn the color of the object (chair, dragon) (approximately). |
225 | else spritepal 1 // This is so that the white SCRAP3 will turn the color of the object (chair, dragon) (approximately). |
232 | ends |
226 | ends |
233 | 227 | ||
234 | onevent EVENT_KILLIT |
228 | onevent EVENT_KILLIT |
235 | ifactor CHAIR3 |
229 | ifactor CHAIR3 |
236 | { |
230 | { |
237 | state scrap3_colorchange |
231 | state scrap3_colorchange |
238 | debris SCRAP3 12 |
232 | debris SCRAP3 12 |
239 | getlastpal |
233 | getlastpal |
240 | sound GLASS_HEAVYBREAK |
234 | sound GLASS_HEAVYBREAK |
241 | sound VENT_BUST |
235 | sound VENT_BUST |
242 | } |
236 | } |
243 | endevent |
237 | endevent |
244 | 238 | ||
245 | // ----------------------------------------------------------------------------- |
239 | // ----------------------------------------------------------------------------- |
246 | 240 | ||
247 | state standard_bjibs |
241 | state standard_bjibs |
248 | guts JIBS2 1 |
242 | guts JIBS2 1 |
249 | guts JIBS3 2 |
243 | guts JIBS3 2 |
250 | guts JIBS4 3 |
244 | guts JIBS4 3 |
251 | guts JIBS5 2 |
245 | guts JIBS5 2 |
252 | guts JIBS6 3 |
246 | guts JIBS6 3 |
253 | ifrnd 6 |
247 | ifrnd 6 |
254 | { |
248 | { |
255 | guts JIBS1 1 |
249 | guts JIBS1 1 |
256 | spawn BLOODPOOL |
250 | spawn BLOODPOOL |
257 | } // a badly drawn spine |
251 | } // a badly drawn spine |
258 | ends |
252 | ends |
259 | 253 | ||
260 | state randgetweapsnds |
254 | state randgetweapsnds |
261 | setvar temp2 0 |
255 | setvar temp2 0 |
262 | randvar temp2 2 |
256 | randvar temp2 2 |
263 | switch temp2 |
257 | switch temp2 |
264 | case 0 globalsound DUKE_GETWEAPON1 break |
258 | case 0 globalsound DUKE_GETWEAPON1 break |
265 | case 1 globalsound DUKE_GETWEAPON2 break |
259 | case 1 globalsound DUKE_GETWEAPON2 break |
266 | case 2 globalsound DUKE_GETWEAPON4 break |
260 | case 2 globalsound DUKE_GETWEAPON4 break |
267 | endswitch |
261 | endswitch |
268 | ends |
262 | ends |
269 | 263 | ||
270 | actor FIRSTGUNSPRITE |
264 | actor FIRSTGUNSPRITE |
271 | fall |
265 | fall |
272 | ifmove RESPAWN_ACTOR_FLAG |
266 | ifmove RESPAWN_ACTOR_FLAG |
273 | state respawnit |
267 | state respawnit |
274 | else |
268 | else |
275 | ifp pshrunk nullop |
269 | ifp pshrunk nullop |
276 | else |
270 | else |
277 | ifp palive |
271 | ifp palive |
278 | ifpdistl RETRIEVEDISTANCE |
272 | ifpdistl RETRIEVEDISTANCE |
279 | ifcount 6 |
273 | ifcount 6 |
280 | ifcanseetarget |
274 | ifcanseetarget |
281 | { |
275 | { |
282 | ifgotweaponce 0 |
276 | ifgotweaponce 0 |
283 | break |
277 | break |
284 | addweapon PISTOL_WEAPON 48 |
278 | addweapon PISTOL_WEAPON 48 |
285 | quote 1118 |
279 | quote 1118 |
286 | ifspawnedby FIRSTGUNSPRITE |
280 | ifspawnedby FIRSTGUNSPRITE |
287 | state getweaponcode |
281 | state getweaponcode |
288 | else |
282 | else |
289 | state quikweaponget |
283 | state quikweaponget |
290 | } |
284 | } |
291 | enda |
285 | enda |
292 | 286 | ||
293 | actor CRYSTALAMMO |
287 | actor CRYSTALAMMO |
294 | fall |
288 | fall |
295 | ifmove RESPAWN_ACTOR_FLAG |
289 | ifmove RESPAWN_ACTOR_FLAG |
296 | state respawnit |
290 | state respawnit |
297 | else |
291 | else |
298 | ifp pshrunk nullop |
292 | ifp pshrunk nullop |
299 | else |
293 | else |
300 | ifp palive |
294 | ifp palive |
301 | ifpdistl RETRIEVEDISTANCE |
295 | ifpdistl RETRIEVEDISTANCE |
302 | ifcount 6 |
296 | ifcount 6 |
303 | ifcanseetarget |
297 | ifcanseetarget |
304 | { |
298 | { |
305 | getplayer[THISACTOR].gotweapon SHRINKER_WEAPON temp2 |
299 | getplayer[THISACTOR].gotweapon SHRINKER_WEAPON temp2 |
306 | getplayer[THISACTOR].gotweapon GROW_WEAPON temp |
300 | getplayer[THISACTOR].gotweapon GROW_WEAPON temp |
307 | addammo SHRINKER_WEAPON CRYSTALAMMOAMOUNT |
301 | addammo SHRINKER_WEAPON CRYSTALAMMOAMOUNT |
308 | ifvare temp2 0 ifvare temp 1 setplayer[THISACTOR].gotweapon SHRINKER_WEAPON 1 |
302 | ifvare temp2 0 ifvare temp 1 setplayer[THISACTOR].gotweapon SHRINKER_WEAPON 1 |
309 | 303 | ||
310 | quote 78 |
304 | quote 78 |
311 | ifspawnedby CRYSTALAMMO |
305 | ifspawnedby CRYSTALAMMO |
312 | state getcode |
306 | state getcode |
313 | else |
307 | else |
314 | state quikget |
308 | state quikget |
315 | } |
309 | } |
316 | enda |
310 | enda |
317 | 311 | ||
318 | actor GROWAMMO |
312 | actor GROWAMMO |
319 | fall |
313 | fall |
320 | ifmove RESPAWN_ACTOR_FLAG |
314 | ifmove RESPAWN_ACTOR_FLAG |
321 | state respawnit |
315 | state respawnit |
322 | else |
316 | else |
323 | ifp pshrunk nullop |
317 | ifp pshrunk nullop |
324 | else |
318 | else |
325 | ifp palive |
319 | ifp palive |
326 | ifpdistl RETRIEVEDISTANCE |
320 | ifpdistl RETRIEVEDISTANCE |
327 | ifcount 6 |
321 | ifcount 6 |
328 | ifcanseetarget |
322 | ifcanseetarget |
329 | { |
323 | { |
330 | getplayer[THISACTOR].gotweapon SHRINKER_WEAPON temp2 |
324 | getplayer[THISACTOR].gotweapon SHRINKER_WEAPON temp2 |
331 | getplayer[THISACTOR].gotweapon GROW_WEAPON temp |
325 | getplayer[THISACTOR].gotweapon GROW_WEAPON temp |
332 | addammo GROW_WEAPON GROWCRYSTALAMMOAMOUNT |
326 | addammo GROW_WEAPON GROWCRYSTALAMMOAMOUNT |
333 | ifvare temp 0 ifvare temp2 1 setplayer[THISACTOR].gotweapon GROW_WEAPON 1 |
327 | ifvare temp 0 ifvare temp2 1 setplayer[THISACTOR].gotweapon GROW_WEAPON 1 |
334 | 328 | ||
335 | quote 123 |
329 | quote 123 |
336 | ifspawnedby GROWAMMO |
330 | ifspawnedby GROWAMMO |
337 | state getcode |
331 | state getcode |
338 | else |
332 | else |
339 | state quikget |
333 | state quikget |
340 | } |
334 | } |
341 | 335 | ||
342 | 336 | ||
343 | enda |
337 | enda |
344 | 338 | ||
345 | actor SHRINKERSPRITE |
339 | actor SHRINKERSPRITE |
346 | fall |
340 | fall |
347 | ifmove RESPAWN_ACTOR_FLAG |
341 | ifmove RESPAWN_ACTOR_FLAG |
348 | state respawnit |
342 | state respawnit |
349 | else |
343 | else |
350 | ifp pshrunk nullop |
344 | ifp pshrunk nullop |
351 | else |
345 | else |
352 | ifp palive |
346 | ifp palive |
353 | ifpdistl RETRIEVEDISTANCE |
347 | ifpdistl RETRIEVEDISTANCE |
354 | ifcount 6 |
348 | ifcount 6 |
355 | ifcanseetarget |
349 | ifcanseetarget |
356 | { |
350 | { |
357 | ifgotweaponce 0 |
351 | ifgotweaponce 0 |
358 | break |
352 | break |
359 | getplayer[THISACTOR].gotweapon GROW_WEAPON temp |
353 | getplayer[THISACTOR].gotweapon GROW_WEAPON temp |
360 | addweapon SHRINKER_WEAPON 10 |
354 | addweapon SHRINKER_WEAPON 10 |
361 | ifvare temp 0 setplayer[THISACTOR].gotweapon GROW_WEAPON 0 |
355 | ifvare temp 0 setplayer[THISACTOR].gotweapon GROW_WEAPON 0 |
362 | 356 | ||
363 | quote 60 |
357 | quote 60 |
364 | ifspawnedby SHRINKERSPRITE |
358 | ifspawnedby SHRINKERSPRITE |
365 | state getweaponcode |
359 | state getweaponcode |
366 | else |
360 | else |
367 | state quikweaponget |
361 | state quikweaponget |
368 | } |
362 | } |
369 | enda |
363 | enda |
370 | 364 | ||
371 | useractor notenemy GROWSPRITEICON 0 |
365 | useractor notenemy GROWSPRITEICON 0 |
372 | fall |
366 | fall |
373 | ifspritepal 1 ifmultiplayer spritepal 0 else killit |
367 | ifspritepal 1 ifmultiplayer spritepal 0 else killit |
374 | 368 | ||
375 | ifmove RESPAWN_ACTOR_FLAG |
369 | ifmove RESPAWN_ACTOR_FLAG |
376 | state respawnit |
370 | state respawnit |
377 | else |
371 | else |
378 | ifp pshrunk nullop |
372 | ifp pshrunk nullop |
379 | else |
373 | else |
380 | ifp palive |
374 | ifp palive |
381 | ifpdistl RETRIEVEDISTANCE |
375 | ifpdistl RETRIEVEDISTANCE |
382 | ifcount 6 |
376 | ifcount 6 |
383 | ifcanseetarget |
377 | ifcanseetarget |
384 | { |
378 | { |
385 | ifgotweaponce 0 |
379 | ifgotweaponce 0 |
386 | break |
380 | break |
387 | getplayer[THISACTOR].gotweapon SHRINKER_WEAPON temp |
381 | getplayer[THISACTOR].gotweapon SHRINKER_WEAPON temp |
388 | addweapon GROW_WEAPON 10 |
382 | addweapon GROW_WEAPON 10 |
389 | ifvare temp 0 setplayer[THISACTOR].gotweapon SHRINKER_WEAPON 0 |
383 | ifvare temp 0 setplayer[THISACTOR].gotweapon SHRINKER_WEAPON 0 |
390 | 384 | ||
391 | quote 999 |
385 | quote 999 |
392 | ifspawnedby GROWSPRITEICON |
386 | ifspawnedby GROWSPRITEICON |
393 | state getweaponcode |
387 | state getweaponcode |
394 | else |
388 | else |
395 | state quikweaponget |
389 | state quikweaponget |
396 | } |
390 | } |
397 | enda |
391 | enda |
398 | 392 | ||
399 | state babechecksquished |
393 | state babechecksquished |
400 | ifsquished |
394 | ifsquished |
401 | { |
395 | { |
402 | sound SQUISHED |
396 | sound SQUISHED |
403 | state standard_bjibs |
397 | state standard_bjibs |
404 | state random_ooz |
398 | state random_ooz |
405 | killit |
399 | killit |
406 | } |
400 | } |
407 | ends |
401 | ends |
408 | 402 | ||
409 | include VSeagull.con |
403 | include VSeagull.con |
410 | include VDragon.con |
404 | include VDragon.con |
411 | include VBeachBather.con |
405 | include VBeachBather.con |
412 | include VBeachBabe.con |
406 | include VBeachBabe.con |
413 | 407 | ||
414 | // ----------------------------------------------------------------------------- |
408 | // ----------------------------------------------------------------------------- |
415 | 409 | ||
416 | useractor notenemy 3831 0 |
410 | useractor notenemy 3831 0 |
417 | // cstat 32768 |
411 | // cstat 32768 |
418 | sizeat 12 13 |
412 | sizeat 12 13 |
419 | getactor[THISACTOR].sectnum temp |
413 | getactor[THISACTOR].sectnum temp |
420 | getplayer[THISACTOR].cursectnum temp2 |
414 | getplayer[THISACTOR].cursectnum temp2 |
421 | ifvarvare temp temp2 |
415 | ifvarvare temp temp2 |
422 | { |
416 | { |
423 | setuserdef[THISACTOR].volume_number 2 |
417 | setuserdef[THISACTOR].volume_number 2 |
424 | endofgame 13 |
418 | endofgame 13 |
425 | } |
419 | } |
426 | enda |
420 | enda |
427 | 421 | ||
428 | 422 | ||
429 | useractor notenemy TIKIGOD 0 |
423 | useractor notenemy TIKIGOD 0 |
430 | getactor[THISACTOR].cstat temp |
424 | getactor[THISACTOR].cstat temp |
431 | ifvarand temp 16 setactor[THISACTOR].mdflags 1 |
425 | ifvarand temp 16 setactor[THISACTOR].mdflags 1 |
432 | enda |
426 | enda |
433 | 427 | ||
434 | 428 | ||
435 | onevent EVENT_ANIMATESPRITES |
429 | onevent EVENT_ANIMATESPRITES |
436 | switch picnum |
430 | switch picnum |
437 | 431 | ||
438 | case GROWAMMO |
432 | case GROWAMMO |
439 | // t->shade = (sintable[(totalclock<<4)&2047]>>10); |
433 | // t->shade = (sintable[(totalclock<<4)&2047]>>10); |
440 | setvarvar temp totalclock |
434 | setvarvar temp totalclock |
441 | shiftvarl temp 4 |
435 | shiftvarl temp 4 |
442 | andvar temp 2047 |
436 | andvar temp 2047 |
443 | sin temp temp |
437 | sin temp temp |
444 | shiftvarr temp 10 |
438 | shiftvarr temp 10 |
445 | settspr[THISACTOR].tsprshade temp |
439 | settspr[THISACTOR].tsprshade temp |
446 | break |
440 | break |
447 | 441 | ||
448 | case DRAGON |
442 | case DRAGON |
449 | case DRAGONDEATH |
443 | case DRAGONDEATH |
450 | ifvarn temp3 -1 |
444 | ifvarn temp3 -1 |
451 | settspr[THISACTOR].tsprang temp3 |
445 | settspr[THISACTOR].tsprang temp3 |
452 | break |
446 | break |
453 | 447 | ||
454 | endswitch |
448 | endswitch |
455 | endevent |
449 | endevent |
456 | 450 | ||
457 | define title_x1 54 |
451 | define title_x1 54 |
458 | define title_x2 306 |
452 | define title_x2 306 |
459 | define title_y1 186 |
453 | define title_y1 186 |
460 | define title_y2 194 |
454 | define title_y2 194 |
461 | define title_zoom 32768 |
455 | define title_zoom 32768 |
462 | 456 | ||
463 | onevent EVENT_DISPLAYMENU |
457 | onevent EVENT_DISPLAYMENU |
464 | // getplayer[THISACTOR].gm temp |
458 | // getplayer[THISACTOR].gm temp |
465 | // ifvarand temp 4 nullop else |
459 | // ifvarand temp 4 nullop else |
466 | // { |
460 | // { |
467 | rotatesprite title_x1 title_y1 title_zoom 0 3838 0 0 0 0 0 xdim ydim |
461 | rotatesprite title_x1 title_y1 title_zoom 0 3838 0 0 0 0 0 xdim ydim |
468 | rotatesprite title_x2 title_y2 title_zoom 0 3839 0 0 0 0 0 xdim ydim |
462 | rotatesprite title_x2 title_y2 title_zoom 0 3839 0 0 0 0 0 xdim ydim |
469 | // } |
463 | // } |
470 | endevent |
464 | endevent |
471 | 465 | ||
472 | /* |
466 | /* |
473 | onevent EVENT_DISPLAYTITLE |
467 | onevent EVENT_DISPLAYTITLE |
474 | rotatesprite title_x1 title_y1 title_zoom 0 3838 0 0 0 0 0 xdim ydim |
468 | rotatesprite title_x1 title_y1 title_zoom 0 3838 0 0 0 0 0 xdim ydim |
475 | rotatesprite title_x2 title_y2 title_zoom 0 3839 0 0 0 0 0 xdim ydim |
469 | rotatesprite title_x2 title_y2 title_zoom 0 3839 0 0 0 0 0 xdim ydim |
476 | endevent |
470 | endevent |
477 | */ |
471 | */ |
478 | 472 |