Rev 9 | Rev 22 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 9 | Rev 14 | ||
---|---|---|---|
1 | /* |
1 | /* |
2 | -------------------------------------------------------------------------------- |
2 | -------------------------------------------------------------------------------- |
3 | Duke: Nuclear Winter |
3 | Duke: Nuclear Winter |
4 | By Joris Weimar |
4 | By Joris Weimar |
5 | © 1997 Simply Silly Software |
5 | © 1997 Simply Silly Software |
6 | -------------------------------------------------------------------------------- |
6 | -------------------------------------------------------------------------------- |
7 | Duke: Nuclear Winter Plus |
7 | Duke: Nuclear Winter Plus |
8 | By Hendricks266 |
8 | By Hendricks266 |
9 | -------------------------------------------------------------------------------- |
9 | -------------------------------------------------------------------------------- |
10 | */ |
10 | */ |
11 | 11 | ||
12 | definecheat 14 endepisode |
12 | definecheat 14 endepisode |
13 | definecheat 15 endlevel |
13 | definecheat 15 endlevel |
14 | definecheat 25 endvolume |
14 | definecheat 25 endvolume |
15 | 15 | ||
16 | include NWDefs.con |
16 | include NWDefs.con |
17 | include NWUser.con |
17 | include NWUser.con |
18 | 18 | ||
19 | setgamename Duke: Nuclear Winter |
19 | setgamename Duke: Nuclear Winter |
20 | 20 | ||
21 | gamevar picnum 0 2 |
21 | gamevar picnum 0 2 |
22 | gamevar temp 0 2 |
22 | gamevar temp 0 2 |
23 | gamevar tempb 0 2 |
23 | gamevar tempb 0 2 |
24 | gamevar x 0 2 |
24 | gamevar x 0 2 |
25 | gamevar y 0 2 |
25 | gamevar y 0 2 |
26 | gamevar z 0 2 |
26 | gamevar z 0 2 |
27 | 27 | ||
28 | gamevar owner 0 2 |
28 | gamevar owner 0 2 |
29 | gamevar temp2 0 2 |
29 | gamevar temp2 0 2 |
30 | gamevar temp3 0 2 |
30 | gamevar temp3 0 2 |
31 | gamevar temp4 0 2 |
31 | gamevar temp4 0 2 |
32 | gamevar ptemp 0 1 |
32 | gamevar ptemp 0 1 |
33 | gamevar holodukeid 0 1 |
33 | gamevar holodukeid 0 1 |
34 | gamevar musicchange 0 1 |
34 | gamevar musicchange 0 1 |
35 | gamevar skin DUKE 132097 // do not reset flag enabled |
35 | gamevar skin DUKE 132097 // do not reset flag enabled |
36 | 36 | ||
37 | gamevar LOGO_FLAGS 767 0 // default; TEN screen reenabled |
37 | gamevar LOGO_FLAGS 767 0 // default; TEN screen reenabled |
38 | 38 | ||
39 | state cutsceneambience |
39 | state cutsceneambience |
40 | getactor[THISACTOR].lotag temp |
40 | getactor[THISACTOR].lotag temp |
41 | 41 | ||
42 | switch temp |
42 | switch temp |
43 | 43 | ||
44 | case WIND_AMBIENCE |
44 | case WIND_AMBIENCE |
45 | case WIND_REPEAT |
45 | case WIND_REPEAT |
46 | setactor[THISACTOR].lotag WIND2 |
46 | setactor[THISACTOR].lotag WIND2 |
47 | break |
47 | break |
48 | 48 | ||
49 | case FLY_BY |
49 | case FLY_BY |
50 | setactor[THISACTOR].lotag FLY_BY2 |
50 | setactor[THISACTOR].lotag FLY_BY2 |
51 | break |
51 | break |
52 | 52 | ||
53 | endswitch |
53 | endswitch |
54 | ends |
54 | ends |
55 | 55 | ||
56 | onevent EVENT_LOADACTOR |
56 | onevent EVENT_LOADACTOR |
57 | getactor[THISACTOR].picnum picnum |
57 | getactor[THISACTOR].picnum picnum |
58 | switch picnum |
58 | switch picnum |
59 | 59 | ||
60 | case SNOWYDOORSHOCK |
60 | case SNOWYDOORSHOCK |
61 | spritepal 30 |
61 | spritepal 30 |
62 | cactor DOORSHOCK |
62 | cactor DOORSHOCK |
63 | break |
63 | break |
64 | 64 | ||
65 | case 3765 case 3766 case 3767 case 3768 cactor WOODENHORSE2 break |
65 | case 3765 case 3766 case 3767 case 3768 cactor WOODENHORSE2 break |
66 | 66 | ||
67 | // case PIGCOP case PIGCOPSTAYPUT case PIGCOPDIVE sizeat 48 40 break |
67 | // case PIGCOP case PIGCOPSTAYPUT case PIGCOPDIVE sizeat 48 40 break |
68 | case SOBBOTWALK case SOBBOTFLY sizeat 42 36 break |
68 | case SOBBOTWALK case SOBBOTFLY sizeat 42 36 break |
69 | case ELFUZI case ELFUZISTAYPUT sizeat 32 27 break |
69 | case ELFUZI case ELFUZISTAYPUT sizeat 32 27 break |
70 | case ELFGUN case ELFGUNSTAYPUT sizeat 32 27 break |
70 | case ELFGUN case ELFGUNSTAYPUT sizeat 32 27 break |
71 | case SNOWMAN sizeat 42 36 break |
71 | case SNOWMAN sizeat 42 36 break |
72 | 72 | ||
73 | case 1915 |
73 | case 1915 |
74 | cactor COMMANDER // failsafe fix for NWL5 bug |
74 | cactor COMMANDER // failsafe fix for NWL5 bug |
75 | break |
75 | break |
76 | 76 | ||
77 | case MUSICANDSFX |
77 | case MUSICANDSFX |
78 | state cutsceneambience |
78 | state cutsceneambience |
79 | break |
79 | break |
80 | 80 | ||
81 | case JETPACK |
81 | case JETPACK |
82 | ifspritepal 21 setvar temp 1 |
82 | ifspritepal 21 setvar temp 1 |
83 | spritepal 0 |
83 | spritepal 0 |
84 | break |
84 | break |
85 | 85 | ||
86 | /* |
86 | /* |
87 | case SNOWFLAKE |
87 | case SNOWFLAKE |
88 | cactor SNOW |
88 | cactor SNOW |
89 | sizeat 8 8 |
89 | sizeat 8 8 |
90 | break |
90 | break |
91 | */ |
91 | */ |
92 | 92 | ||
93 | case XMASPRESENT |
93 | case XMASPRESENT |
94 | case XMASPRESENT2 |
94 | case XMASPRESENT2 |
95 | getactor[THISACTOR].hitag temp |
95 | getactor[THISACTOR].hitag temp |
96 | setactor[THISACTOR].hitag 0 |
96 | setactor[THISACTOR].hitag 0 |
97 | break |
97 | break |
98 | 98 | ||
99 | endswitch |
99 | endswitch |
100 | endevent |
100 | endevent |
101 | 101 | ||
102 | onevent EVENT_EGS |
102 | onevent EVENT_EGS |
- | 103 | getactor[THISACTOR].picnum picnum |
|
- | 104 | getactor[THISACTOR].owner owner |
|
- | 105 | ||
103 | ifactor APLAYER setactor[THISACTOR].mdflags 16 |
106 | ifactor APLAYER setactor[THISACTOR].mdflags 16 |
104 | ifactor DUKETORSO setactor[THISACTOR].mdflags 16 |
107 | ifactor DUKETORSO setactor[THISACTOR].mdflags 16 |
105 | ifactor DUKEGUN setactor[THISACTOR].mdflags 16 |
108 | ifactor DUKEGUN setactor[THISACTOR].mdflags 16 |
106 | ifactor DUKELEG setactor[THISACTOR].mdflags 16 |
109 | ifactor DUKELEG setactor[THISACTOR].mdflags 16 |
107 | ifactor DOORSHOCK setactor[THISACTOR].mdflags 16 |
110 | ifactor DOORSHOCK setactor[THISACTOR].mdflags 16 |
108 | 111 | ||
109 | ifactor SNOW |
112 | ifactor SNOW |
110 | { |
113 | { |
111 | sizeat 8 8 |
114 | sizeat 8 8 |
112 | 115 | ||
113 | setvar temp3 0 |
116 | setvar temp3 0 |
114 | randvar temp3 2047 |
117 | randvar temp3 2047 |
115 | setactor[THISACTOR].ang temp3 |
118 | setactor[THISACTOR].ang temp3 |
116 | 119 | ||
117 | setvar temp2 -2047 |
120 | setvar temp2 -2047 |
118 | randvar temp2 2047 |
121 | randvar temp2 2047 |
119 | 122 | ||
120 | /* |
123 | /* |
121 | setvar temp3 0 |
124 | setvar temp3 0 |
122 | ifrnd 128 addvar temp3 4 |
125 | ifrnd 128 addvar temp3 4 |
123 | ifrnd 128 addvar temp3 8 |
126 | ifrnd 128 addvar temp3 8 |
124 | setactor[THISACTOR].cstat temp3 |
127 | setactor[THISACTOR].cstat temp3 |
125 | */ |
128 | */ |
126 | } |
129 | } |
127 | endevent |
130 | endevent |
128 | 131 | ||
129 | // ----------------------------------------------------------------------------- |
132 | // ----------------------------------------------------------------------------- |
130 | 133 | ||
131 | state standard_bjibs |
134 | state standard_bjibs |
132 | guts JIBS2 1 |
135 | guts JIBS2 1 |
133 | guts JIBS3 2 |
136 | guts JIBS3 2 |
134 | guts JIBS4 3 |
137 | guts JIBS4 3 |
135 | guts JIBS5 2 |
138 | guts JIBS5 2 |
136 | guts JIBS6 3 |
139 | guts JIBS6 3 |
137 | ifrnd 6 |
140 | ifrnd 6 |
138 | { |
141 | { |
139 | guts JIBS1 1 |
142 | guts JIBS1 1 |
140 | } // a badly drawn spine |
143 | } // a badly drawn spine |
141 | ends |
144 | ends |
142 | 145 | ||
143 | state nwbreakobject |
146 | state nwbreakobject |
144 | ifaction 0 |
147 | ifaction 0 |
145 | { |
148 | { |
146 | action ANULLACTION |
149 | action ANULLACTION |
147 | cstator 257 |
150 | cstator 257 |
148 | } |
151 | } |
149 | ifhitweapon |
152 | ifhitweapon |
150 | { |
153 | { |
151 | ifdead |
154 | ifdead |
152 | { |
155 | { |
153 | ifactor WOODSLATS |
156 | ifactor WOODSLATS |
154 | { |
157 | { |
155 | sound GLASS_HEAVYBREAK |
158 | sound GLASS_HEAVYBREAK |
156 | debris SCRAP3 5 |
159 | debris SCRAP3 5 |
157 | debris SCRAP4 3 |
160 | debris SCRAP4 3 |
158 | killit |
161 | killit |
159 | } |
162 | } |
160 | else |
163 | else |
161 | ifactor RIBBON |
164 | ifactor RIBBON |
162 | { |
165 | { |
163 | sound GLASS_HEAVYBREAK |
166 | sound GLASS_HEAVYBREAK |
164 | debris SCRAP3 5 |
167 | debris SCRAP3 5 |
165 | debris SCRAP4 3 |
168 | debris SCRAP4 3 |
166 | killit |
169 | killit |
167 | } |
170 | } |
168 | else |
171 | else |
169 | ifactor MYBOX |
172 | ifactor MYBOX |
170 | { |
173 | { |
171 | sound GLASS_HEAVYBREAK |
174 | sound GLASS_HEAVYBREAK |
172 | debris SCRAP3 5 |
175 | debris SCRAP3 5 |
173 | debris SCRAP4 3 |
176 | debris SCRAP4 3 |
174 | killit |
177 | killit |
175 | } |
178 | } |
176 | else |
179 | else |
177 | ifactor SNOWGIB killit |
180 | ifactor SNOWGIB killit |
178 | else |
181 | else |
179 | ifactor DRUNKELF |
182 | ifactor DRUNKELF |
180 | { |
183 | { |
181 | sound PRED_DYING |
184 | sound PRED_DYING |
182 | guts JIBS6 2 |
185 | guts JIBS6 2 |
183 | guts JIBS6 3 |
186 | guts JIBS6 3 |
184 | guts JIBS6 4 |
187 | guts JIBS6 4 |
185 | killit |
188 | killit |
186 | } |
189 | } |
187 | else |
190 | else |
188 | ifactor CHOOCHOOSLUT |
191 | ifactor CHOOCHOOSLUT |
189 | { |
192 | { |
190 | sound GLASS_HEAVYBREAK |
193 | sound GLASS_HEAVYBREAK |
191 | debris SCRAP3 5 |
194 | debris SCRAP3 5 |
192 | debris SCRAP4 3 |
195 | debris SCRAP4 3 |
193 | killit |
196 | killit |
194 | } |
197 | } |
195 | else |
198 | else |
196 | ifactor HORSEPOWER |
199 | ifactor HORSEPOWER |
197 | { |
200 | { |
198 | sound GLASS_HEAVYBREAK |
201 | sound GLASS_HEAVYBREAK |
199 | debris SCRAP3 5 |
202 | debris SCRAP3 5 |
200 | debris SCRAP4 3 |
203 | debris SCRAP4 3 |
201 | killit |
204 | killit |
202 | } |
205 | } |
203 | else |
206 | else |
204 | ifactor CHANDELIER |
207 | ifactor CHANDELIER |
205 | { |
208 | { |
206 | sound GLASS_BREAKING |
209 | sound GLASS_BREAKING |
207 | debris SCRAP3 3 |
210 | debris SCRAP3 3 |
208 | debris SCRAP4 4 |
211 | debris SCRAP4 4 |
209 | lotsofglass 10 |
212 | lotsofglass 10 |
210 | killit |
213 | killit |
211 | } |
214 | } |
212 | else |
215 | else |
213 | ifactor TREEWITHSOMETHING |
216 | ifactor TREEWITHSOMETHING |
214 | { |
217 | { |
215 | sound GLASS_HEAVYBREAK |
218 | sound GLASS_HEAVYBREAK |
216 | debris SCRAP3 5 |
219 | debris SCRAP3 5 |
217 | ifrnd 96 |
220 | ifrnd 96 |
218 | { |
221 | { |
219 | ifrnd 64 spawn ATOMICHEALTH else spawn SHIELD |
222 | ifrnd 64 spawn ATOMICHEALTH else spawn SHIELD |
220 | } |
223 | } |
221 | else |
224 | else |
222 | { |
225 | { |
223 | ifrnd 128 spawn STEROIDS else spawn FECES |
226 | ifrnd 128 spawn STEROIDS else spawn FECES |
224 | } |
227 | } |
225 | killit |
228 | killit |
226 | } |
229 | } |
227 | else |
230 | else |
228 | ifactor SSPEAKER |
231 | ifactor SSPEAKER |
229 | { |
232 | { |
230 | debris SCRAP4 3 |
233 | debris SCRAP4 3 |
231 | killit |
234 | killit |
232 | } |
235 | } |
233 | } |
236 | } |
234 | } |
237 | } |
235 | ends |
238 | ends |
236 | 239 | ||
237 | useractor notenemy WOODSLATS MEDIUMSTRENGTH state nwbreakobject enda |
240 | useractor notenemy WOODSLATS MEDIUMSTRENGTH state nwbreakobject enda |
238 | 241 | ||
239 | useractor notenemy RIBBON WEAK state nwbreakobject enda |
242 | useractor notenemy RIBBON WEAK state nwbreakobject enda |
240 | 243 | ||
241 | useractor notenemy SSPEAKER WEAK state nwbreakobject enda |
244 | useractor notenemy SSPEAKER WEAK state nwbreakobject enda |
242 | 245 | ||
243 | useractor notenemy MYBOX WEAK state nwbreakobject enda |
246 | useractor notenemy MYBOX WEAK state nwbreakobject enda |
244 | 247 | ||
245 | useractor notenemy DRUNKELF WEAK state nwbreakobject enda |
248 | useractor notenemy DRUNKELF WEAK state nwbreakobject enda |
246 | 249 | ||
247 | useractor notenemy CHOOCHOOSLUT WEAK state nwbreakobject enda |
250 | useractor notenemy CHOOCHOOSLUT WEAK state nwbreakobject enda |
248 | 251 | ||
249 | useractor notenemy HORSEPOWER WEAK state nwbreakobject enda |
252 | useractor notenemy HORSEPOWER WEAK state nwbreakobject enda |
250 | 253 | ||
251 | useractor notenemy SNOWGIB WEAK state nwbreakobject enda |
254 | useractor notenemy SNOWGIB WEAK state nwbreakobject enda |
252 | 255 | ||
253 | useractor notenemy CHANDELIER WEAK state nwbreakobject enda |
256 | useractor notenemy CHANDELIER WEAK state nwbreakobject enda |
254 | 257 | ||
255 | useractor notenemy TREEWITHSOMETHING TOUGH state nwbreakobject enda |
258 | useractor notenemy TREEWITHSOMETHING TOUGH state nwbreakobject enda |
256 | 259 | ||
257 | actor JETPACK |
260 | actor JETPACK |
258 | fall |
261 | fall |
259 | ifmove RESPAWN_ACTOR_FLAG |
262 | ifmove RESPAWN_ACTOR_FLAG |
260 | state respawnit |
263 | state respawnit |
261 | else |
264 | else |
262 | ifp pshrunk nullop |
265 | ifp pshrunk nullop |
263 | else |
266 | else |
264 | ifp palive |
267 | ifp palive |
265 | ifpdistl RETRIEVEDISTANCE |
268 | ifpdistl RETRIEVEDISTANCE |
266 | ifcount 6 |
269 | ifcount 6 |
267 | ifpinventory GET_JETPACK JETPACK_AMOUNT |
270 | ifpinventory GET_JETPACK JETPACK_AMOUNT |
268 | ifcanseetarget |
271 | ifcanseetarget |
269 | { |
272 | { |
270 | ifvare temp 1 |
273 | ifvare temp 1 |
271 | { |
274 | { |
272 | addinventory GET_JETPACK JETPACK_NEAR_EMPTY |
275 | addinventory GET_JETPACK JETPACK_NEAR_EMPTY |
273 | quote 125 |
276 | quote 125 |
274 | } |
277 | } |
275 | else |
278 | else |
276 | { |
279 | { |
277 | addinventory GET_JETPACK JETPACK_AMOUNT |
280 | addinventory GET_JETPACK JETPACK_AMOUNT |
278 | quote 41 |
281 | quote 41 |
279 | } |
282 | } |
280 | ifspawnedby JETPACK |
283 | ifspawnedby JETPACK |
281 | state getcode |
284 | state getcode |
282 | else |
285 | else |
283 | state quikget |
286 | state quikget |
284 | } |
287 | } |
285 | enda |
288 | enda |
286 | 289 | ||
287 | action FEMHDANCE1 205 1 1 1 16 |
290 | action FEMHDANCE1 205 1 1 1 16 |
288 | action FEMHDANCE3 205 1 1 1 26 |
291 | action FEMHDANCE3 205 1 1 1 26 |
289 | action FEMHDANCE2 206 2 1 1 10 |
292 | action FEMHDANCE2 206 2 1 1 10 |
290 | 293 | ||
291 | 294 | ||
292 | 295 | ||
293 | state nwbabecode |
296 | state nwbabecode |
294 | getactor[THISACTOR].cstat temp |
297 | getactor[THISACTOR].cstat temp |
295 | ifvarand temp 1 nullop else addvar temp 1 |
298 | ifvarand temp 1 nullop else addvar temp 1 |
296 | ifactor HALFBITCH { ifvarand temp 128 nullop else addvar temp 128 } |
299 | ifactor HALFBITCH { ifvarand temp 128 nullop else addvar temp 128 } |
297 | ifvarand temp 256 nullop else addvar temp 256 |
300 | ifvarand temp 256 nullop else addvar temp 256 |
298 | 301 | ||
299 | getuserdef .lockout temp2 |
302 | getuserdef .lockout temp2 |
300 | ifvare temp2 1 |
303 | ifvare temp2 1 |
301 | { |
304 | { |
302 | ifvarand temp 32768 nullop else addvar temp 32768 |
305 | ifvarand temp 32768 nullop else addvar temp 32768 |
303 | } |
306 | } |
304 | else |
307 | else |
305 | // { |
308 | // { |
306 | ifvarand temp 32768 subvar temp 32768 |
309 | ifvarand temp 32768 subvar temp 32768 |
307 | // } |
310 | // } |
308 | 311 | ||
309 | setactor[THISACTOR].cstat temp |
312 | setactor[THISACTOR].cstat temp |
310 | 313 | ||
311 | 314 | ||
312 | 315 | ||
313 | ifactor HALFBITCH nullop else fall |
316 | ifactor HALFBITCH nullop else fall |
314 | 317 | ||
315 | ifaction FEMSHRUNK |
318 | ifaction FEMSHRUNK |
316 | { |
319 | { |
317 | ifcount SHRUNKDONECOUNT |
320 | ifcount SHRUNKDONECOUNT |
318 | { |
321 | { |
319 | action FEMANIMATE |
322 | action FEMANIMATE |
320 | cstat 257 |
323 | cstat 257 |
321 | } |
324 | } |
322 | else |
325 | else |
323 | ifcount SHRUNKCOUNT |
326 | ifcount SHRUNKCOUNT |
324 | sizeto 40 40 |
327 | sizeto 40 40 |
325 | else |
328 | else |
326 | state genericshrunkcode |
329 | state genericshrunkcode |
327 | } |
330 | } |
328 | else ifaction FEMGROW |
331 | else ifaction FEMGROW |
329 | { |
332 | { |
330 | ifcount 32 |
333 | ifcount 32 |
331 | { |
334 | { |
332 | respawnhitag |
335 | respawnhitag |
333 | guts JIBS4 20 |
336 | guts JIBS4 20 |
334 | guts JIBS6 20 |
337 | guts JIBS6 20 |
335 | spritepal 6 |
338 | spritepal 6 |
336 | soundonce LADY_SCREAM |
339 | soundonce LADY_SCREAM |
337 | ifactor SLUTASS debris SCRAP6 1 |
340 | ifactor SLUTASS debris SCRAP6 1 |
338 | sound SQUISH2 |
341 | sound SQUISH2 |
339 | killit |
342 | killit |
340 | } |
343 | } |
341 | else |
344 | else |
342 | sizeto MAXXSTRETCH MAXYSTRETCH |
345 | sizeto MAXXSTRETCH MAXYSTRETCH |
343 | } |
346 | } |
344 | 347 | ||
345 | 348 | ||
346 | else |
349 | else |
347 | ifaction FEMHDANCE1 |
350 | ifaction FEMHDANCE1 |
348 | { |
351 | { |
349 | ifactioncount 2 |
352 | ifactioncount 2 |
350 | action FEMHDANCE2 |
353 | action FEMHDANCE2 |
351 | } |
354 | } |
352 | else |
355 | else |
353 | ifaction FEMHDANCE2 |
356 | ifaction FEMHDANCE2 |
354 | { |
357 | { |
355 | ifactioncount 8 |
358 | ifactioncount 8 |
356 | action FEMHDANCE3 |
359 | action FEMHDANCE3 |
357 | } |
360 | } |
358 | else |
361 | else |
359 | ifaction FEMHDANCE3 |
362 | ifaction FEMHDANCE3 |
360 | { |
363 | { |
361 | ifactioncount 2 |
364 | ifactioncount 2 |
362 | action FEMANIMATE |
365 | action FEMANIMATE |
363 | } |
366 | } |
364 | else |
367 | else |
365 | ifaction FEMFROZEN1 |
368 | ifaction FEMFROZEN1 |
366 | { |
369 | { |
367 | ifcount THAWTIME |
370 | ifcount THAWTIME |
368 | { |
371 | { |
369 | action FEMANIMATE |
372 | action FEMANIMATE |
370 | getlastpal |
373 | getlastpal |
371 | } |
374 | } |
372 | else |
375 | else |
373 | ifcount FROZENDRIPTIME |
376 | ifcount FROZENDRIPTIME |
374 | { |
377 | { |
375 | ifactioncount 26 |
378 | ifactioncount 26 |
376 | { |
379 | { |
377 | spawn WATERDRIP |
380 | spawn WATERDRIP |
378 | resetactioncount |
381 | resetactioncount |
379 | } |
382 | } |
380 | } |
383 | } |
381 | 384 | ||
382 | ifhitweapon |
385 | ifhitweapon |
383 | { |
386 | { |
384 | ifwasweapon FREEZEBLAST |
387 | ifwasweapon FREEZEBLAST |
385 | { |
388 | { |
386 | strength 0 |
389 | strength 0 |
387 | break |
390 | break |
388 | } |
391 | } |
389 | lotsofglass 30 |
392 | lotsofglass 30 |
390 | sound GLASS_BREAKING |
393 | sound GLASS_BREAKING |
391 | respawnhitag |
394 | respawnhitag |
392 | ifrnd 84 |
395 | ifrnd 84 |
393 | spawn BLOODPOOL |
396 | spawn BLOODPOOL |
394 | killit |
397 | killit |
395 | } |
398 | } |
396 | else |
399 | else |
397 | ifp pfacing |
400 | ifp pfacing |
398 | ifpdistl FROZENQUICKKICKDIST |
401 | ifpdistl FROZENQUICKKICKDIST |
399 | pkick |
402 | pkick |
400 | break |
403 | break |
401 | } |
404 | } |
402 | else ifaction FEMFROZEN2 |
405 | else ifaction FEMFROZEN2 |
403 | { |
406 | { |
404 | ifcount THAWTIME |
407 | ifcount THAWTIME |
405 | { |
408 | { |
406 | action FEMANIMATE |
409 | action FEMANIMATE |
407 | getlastpal |
410 | getlastpal |
408 | } |
411 | } |
409 | else |
412 | else |
410 | ifcount FROZENDRIPTIME |
413 | ifcount FROZENDRIPTIME |
411 | { |
414 | { |
412 | ifactioncount 26 |
415 | ifactioncount 26 |
413 | { |
416 | { |
414 | spawn WATERDRIP |
417 | spawn WATERDRIP |
415 | resetactioncount |
418 | resetactioncount |
416 | } |
419 | } |
417 | } |
420 | } |
418 | 421 | ||
419 | ifhitweapon |
422 | ifhitweapon |
420 | { |
423 | { |
421 | ifwasweapon FREEZEBLAST |
424 | ifwasweapon FREEZEBLAST |
422 | { |
425 | { |
423 | strength 0 |
426 | strength 0 |
424 | break |
427 | break |
425 | } |
428 | } |
426 | 429 | ||
427 | lotsofglass 30 |
430 | lotsofglass 30 |
428 | 431 | ||
429 | sound GLASS_BREAKING |
432 | sound GLASS_BREAKING |
430 | ifrnd 84 |
433 | ifrnd 84 |
431 | spawn BLOODPOOL |
434 | spawn BLOODPOOL |
432 | respawnhitag |
435 | respawnhitag |
433 | 436 | ||
434 | ifrnd 128 |
437 | ifrnd 128 |
435 | sound DUKE_HIT_STRIPPER1 |
438 | sound DUKE_HIT_STRIPPER1 |
436 | else |
439 | else |
437 | sound DUKE_HIT_STRIPPER2 |
440 | sound DUKE_HIT_STRIPPER2 |
438 | 441 | ||
439 | killit |
442 | killit |
440 | } |
443 | } |
441 | else |
444 | else |
442 | ifp pfacing |
445 | ifp pfacing |
443 | ifpdistl FROZENQUICKKICKDIST |
446 | ifpdistl FROZENQUICKKICKDIST |
444 | pkick |
447 | pkick |
445 | break |
448 | break |
446 | } |
449 | } |
447 | 450 | ||
448 | ifhitweapon |
451 | ifhitweapon |
449 | { |
452 | { |
450 | ifdead |
453 | ifdead |
451 | { |
454 | { |
452 | ifwasweapon GROWSPARK |
455 | ifwasweapon GROWSPARK |
453 | { |
456 | { |
454 | cstat 0 |
457 | cstat 0 |
455 | move 0 |
458 | move 0 |
456 | sound ACTOR_GROWING |
459 | sound ACTOR_GROWING |
457 | action FEMGROW |
460 | action FEMGROW |
458 | break |
461 | break |
459 | } |
462 | } |
460 | else ifwasweapon FREEZEBLAST |
463 | else ifwasweapon FREEZEBLAST |
461 | { |
464 | { |
462 | ifaction FEMSHRUNK |
465 | ifaction FEMSHRUNK |
463 | break |
466 | break |
464 | 467 | ||
465 | action FEMFROZEN1 |
468 | action FEMFROZEN1 |
466 | 469 | ||
467 | move 0 |
470 | move 0 |
468 | spritepal 1 |
471 | spritepal 1 |
469 | strength 0 |
472 | strength 0 |
470 | 473 | ||
471 | sound SOMETHINGFROZE |
474 | sound SOMETHINGFROZE |
472 | 475 | ||
473 | break |
476 | break |
474 | } |
477 | } |
475 | 478 | ||
476 | ifrnd 128 |
479 | ifrnd 128 |
477 | sound DUKE_HIT_STRIPPER1 |
480 | sound DUKE_HIT_STRIPPER1 |
478 | else |
481 | else |
479 | sound DUKE_HIT_STRIPPER2 |
482 | sound DUKE_HIT_STRIPPER2 |
480 | 483 | ||
481 | respawnhitag |
484 | respawnhitag |
482 | state standard_bjibs |
485 | state standard_bjibs |
483 | state random_wall_jibs |
486 | state random_wall_jibs |
484 | spawn BLOODPOOL |
487 | spawn BLOODPOOL |
485 | 488 | ||
486 | ifactor HALFBITCH |
489 | ifactor HALFBITCH |
487 | money 3 |
490 | money 3 |
488 | else |
491 | else |
489 | ifactor SLUTASS |
492 | ifactor SLUTASS |
490 | money 3 |
493 | money 3 |
491 | 494 | ||
492 | 495 | ||
493 | spritepal 6 |
496 | spritepal 6 |
494 | soundonce LADY_SCREAM |
497 | soundonce LADY_SCREAM |
495 | ifactor NAKED1 |
498 | ifactor NAKED1 |
496 | debris SCRAP3 18 |
499 | debris SCRAP3 18 |
497 | else |
500 | else |
498 | ifactor PODFEM1 |
501 | ifactor PODFEM1 |
499 | debris SCRAP3 18 |
502 | debris SCRAP3 18 |
500 | killit |
503 | killit |
501 | } |
504 | } |
502 | else |
505 | else |
503 | { |
506 | { |
504 | ifwasweapon SHRINKSPARK |
507 | ifwasweapon SHRINKSPARK |
505 | { |
508 | { |
506 | sound ACTOR_SHRINKING |
509 | sound ACTOR_SHRINKING |
507 | move 0 |
510 | move 0 |
508 | action FEMSHRUNK |
511 | action FEMSHRUNK |
509 | cstat 0 |
512 | cstat 0 |
510 | break |
513 | break |
511 | } |
514 | } |
512 | else |
515 | else |
513 | ifwasweapon GROWSPARK |
516 | ifwasweapon GROWSPARK |
514 | sound EXPANDERHIT |
517 | sound EXPANDERHIT |
515 | 518 | ||
516 | 519 | ||
517 | sound SQUISH2 |
520 | sound SQUISH2 |
518 | 521 | ||
519 | guts JIBS6 1 |
522 | guts JIBS6 1 |
520 | } |
523 | } |
521 | } |
524 | } |
522 | 525 | ||
523 | 526 | ||
524 | 527 | ||
525 | ifp pfacing |
528 | ifp pfacing |
526 | ifpdistl 1280 |
529 | ifpdistl 1280 |
527 | ifhitspace |
530 | ifhitspace |
528 | { |
531 | { |
529 | tip |
532 | tip |
530 | ifrnd 128 |
533 | ifrnd 128 |
531 | soundonce DUKE_TIP1 |
534 | soundonce DUKE_TIP1 |
532 | else |
535 | else |
533 | soundonce DUKE_TIP2 |
536 | soundonce DUKE_TIP2 |
534 | ifactor HALFBITCH |
537 | ifactor HALFBITCH |
535 | action FEMHDANCE1 |
538 | action FEMHDANCE1 |
536 | } |
539 | } |
537 | ends |
540 | ends |
538 | 541 | ||
539 | useractor notenemy HALFBITCH TOUGH |
542 | useractor notenemy HALFBITCH TOUGH |
540 | state nwbabecode |
543 | state nwbabecode |
541 | enda |
544 | enda |
542 | 545 | ||
543 | useractor notenemy SLUTASS TOUGH |
546 | useractor notenemy SLUTASS TOUGH |
544 | state nwbabecode |
547 | state nwbabecode |
545 | enda |
548 | enda |
546 | 549 | ||
547 | state nwl3surprise |
550 | state nwl3surprise |
548 | ifvare VOLUME 1 |
551 | ifvare VOLUME 1 |
549 | { |
552 | { |
550 | ifvare LEVEL 2 |
553 | ifvare LEVEL 2 |
551 | { |
554 | { |
552 | getactor[THISACTOR].sectnum temp |
555 | getactor[THISACTOR].sectnum temp |
553 | switch temp |
556 | switch temp |
554 | case 220 case 221 |
557 | case 220 case 221 |
555 | ifvarn musicchange 1 |
558 | ifvarn musicchange 1 |
556 | { |
559 | { |
557 | starttrack 12 // doom |
560 | starttrack 12 // doom |
558 | setvar musicchange 1 |
561 | setvar musicchange 1 |
559 | } |
562 | } |
560 | break |
563 | break |
561 | case 563 case 564 case 565 case 566 case 567 |
564 | case 563 case 564 case 565 case 566 case 567 |
562 | ifvarn musicchange 2 |
565 | ifvarn musicchange 2 |
563 | { |
566 | { |
564 | starttrack 13 // mario |
567 | starttrack 13 // mario |
565 | setvar musicchange 2 |
568 | setvar musicchange 2 |
566 | } |
569 | } |
567 | break |
570 | break |
568 | case 192 case 193 case 194 case 195 case 196 case 197 case 198 case 237 case 238 case 239 case 240 |
571 | case 192 case 193 case 194 case 195 case 196 case 197 case 198 case 237 case 238 case 239 case 240 |
569 | case 166 case 167 case 172 case 173 case 174 case 176 case 179 |
572 | case 166 case 167 case 172 case 173 case 174 case 176 case 179 |
570 | ifvarn musicchange 0 |
573 | ifvarn musicchange 0 |
571 | { |
574 | { |
572 | starttrackvar LEVEL // level music |
575 | starttrackvar LEVEL // level music |
573 | setvar musicchange 0 |
576 | setvar musicchange 0 |
574 | } |
577 | } |
575 | break |
578 | break |
576 | endswitch |
579 | endswitch |
577 | } |
580 | } |
578 | } |
581 | } |
579 | ends |
582 | ends |
580 | 583 | ||
581 | /* |
584 | /* |
582 | action ACOMMBREETH 0 3 5 1 40 |
585 | action ACOMMBREETH 0 3 5 1 40 |
583 | action ACOMMFROZEN 0 1 5 |
586 | action ACOMMFROZEN 0 1 5 |
584 | action ACOMMSPIN -5 1 5 1 12 |
587 | action ACOMMSPIN -5 1 5 1 12 |
585 | action ACOMMGET 0 3 5 1 30 |
588 | action ACOMMGET 0 3 5 1 30 |
586 | action ACOMMSHOOT 20 1 5 1 35 |
589 | action ACOMMSHOOT 20 1 5 1 35 |
587 | action ACOMMABOUTTOSHOOT 20 1 5 1 30 |
590 | action ACOMMABOUTTOSHOOT 20 1 5 1 30 |
588 | action ACOMMDYING 30 8 1 1 12 |
591 | action ACOMMDYING 30 8 1 1 12 |
589 | action ACOMMDEAD 38 1 1 1 1 |
592 | action ACOMMDEAD 38 1 1 1 1 |
590 | 593 | ||
591 | 594 | ||
592 | move COMMGETUPVELS 128 -64 |
595 | move COMMGETUPVELS 128 -64 |
593 | move COMMGETVELS 128 64 |
596 | move COMMGETVELS 128 64 |
594 | move COMMSLOW 64 24 |
597 | move COMMSLOW 64 24 |
595 | move COMMSTOPPED |
598 | move COMMSTOPPED |
596 | 599 | ||
597 | ai AICOMMWAIT ACOMMBREETH COMMSTOPPED faceplayerslow |
600 | ai AICOMMWAIT ACOMMBREETH COMMSTOPPED faceplayerslow |
598 | ai AICOMMGET ACOMMGET COMMGETVELS seekplayer |
601 | ai AICOMMGET ACOMMGET COMMGETVELS seekplayer |
599 | ai AICOMMSHOOT ACOMMSHOOT COMMSTOPPED faceplayerslow |
602 | ai AICOMMSHOOT ACOMMSHOOT COMMSTOPPED faceplayerslow |
600 | ai AICOMMABOUTTOSHOOT ACOMMABOUTTOSHOOT COMMSTOPPED faceplayerslow |
603 | ai AICOMMABOUTTOSHOOT ACOMMABOUTTOSHOOT COMMSTOPPED faceplayerslow |
601 | ai AICOMMSPIN ACOMMSPIN COMMGETVELS spin |
604 | ai AICOMMSPIN ACOMMSPIN COMMGETVELS spin |
602 | ai AICOMMDYING ACOMMDYING COMMSTOPPED faceplayer |
605 | ai AICOMMDYING ACOMMDYING COMMSTOPPED faceplayer |
603 | ai AICOMMSHRUNK ACOMMGET COMMSLOW furthestdir |
606 | ai AICOMMSHRUNK ACOMMGET COMMSLOW furthestdir |
604 | ai AICOMMGROW ACOMMGET COMMSTOPPED furthestdir |
607 | ai AICOMMGROW ACOMMGET COMMSTOPPED furthestdir |
605 | */ |
608 | */ |
606 | 609 | ||
607 | move COMMGETUPVELSNW 128 -64 |
610 | move COMMGETUPVELSNW 128 -64 |
608 | move COMMGETVELSNW 128 64 |
611 | move COMMGETVELSNW 128 64 |
609 | move COMMSLOWNW 64 24 |
612 | move COMMSLOWNW 64 24 |
610 | move COMMSTOPPEDNW |
613 | move COMMSTOPPEDNW |
611 | 614 | ||
612 | action ACOMMSPINNW 0 1 5 1 12 |
615 | action ACOMMSPINNW 0 1 5 1 12 |
613 | action ACOMMSHOOTNW 20 1 5 1 16 // this is custom to shorten the delay between firing freezeblasts |
616 | action ACOMMSHOOTNW 20 1 5 1 16 // this is custom to shorten the delay between firing freezeblasts |
614 | 617 | ||
615 | ai AICOMMSPINNW ACOMMSPINNW COMMGETVELSNW spin |
618 | ai AICOMMSPINNW ACOMMSPINNW COMMGETVELSNW spin |
616 | ai AICOMMSHOOTNW ACOMMSHOOTNW COMMSTOPPEDNW faceplayerslow |
619 | ai AICOMMSHOOTNW ACOMMSHOOTNW COMMSTOPPEDNW faceplayerslow |
617 | 620 | ||
618 | state checkcommhitstate |
621 | state checkcommhitstate |
619 | 622 | ||
620 | ifhitweapon |
623 | ifhitweapon |
621 | { |
624 | { |
622 | debris SCRAP3 5 |
625 | debris SCRAP3 5 |
623 | ifdead |
626 | ifdead |
624 | { |
627 | { |
625 | ifwasweapon FREEZEBLAST |
628 | ifwasweapon FREEZEBLAST |
626 | { |
629 | { |
627 | break |
630 | break |
628 | } |
631 | } |
629 | else |
632 | else |
630 | ifwasweapon GROWSPARK |
633 | ifwasweapon GROWSPARK |
631 | { |
634 | { |
632 | sound ACTOR_GROWING |
635 | sound ACTOR_GROWING |
633 | ai AICOMMGROW |
636 | ai AICOMMGROW |
634 | break |
637 | break |
635 | } |
638 | } |
636 | 639 | ||
637 | addkills 1 |
640 | addkills 1 |
638 | 641 | ||
639 | ifwasweapon RADIUSEXPLOSION |
642 | ifwasweapon RADIUSEXPLOSION |
640 | { |
643 | { |
641 | debris SCRAP3 5 |
644 | debris SCRAP3 5 |
642 | sound SQUISH2 |
645 | sound SQUISH2 |
643 | killit |
646 | killit |
644 | } |
647 | } |
645 | else |
648 | else |
646 | ifwasweapon RPG |
649 | ifwasweapon RPG |
647 | { |
650 | { |
648 | sound SQUISH2 |
651 | sound SQUISH2 |
649 | debris SCRAP3 5 |
652 | debris SCRAP3 5 |
650 | state standard_jibs |
653 | state standard_jibs |
651 | killit |
654 | killit |
652 | } |
655 | } |
653 | 656 | ||
654 | debris SCRAP3 100 |
657 | debris SCRAP3 100 |
655 | sound COMM_DYING |
658 | sound COMM_DYING |
656 | ai AICOMMDYING |
659 | ai AICOMMDYING |
657 | } |
660 | } |
658 | else |
661 | else |
659 | { |
662 | { |
660 | soundonce COMM_PAIN |
663 | soundonce COMM_PAIN |
661 | ifwasweapon SHRINKSPARK |
664 | ifwasweapon SHRINKSPARK |
662 | { |
665 | { |
663 | sound ACTOR_SHRINKING |
666 | sound ACTOR_SHRINKING |
664 | ai AICOMMSHRUNK |
667 | ai AICOMMSHRUNK |
665 | } |
668 | } |
666 | else |
669 | else |
667 | ifwasweapon GROWSPARK |
670 | ifwasweapon GROWSPARK |
668 | sound EXPANDERHIT |
671 | sound EXPANDERHIT |
669 | else |
672 | else |
670 | ifrnd 24 |
673 | ifrnd 24 |
671 | ai AICOMMABOUTTOSHOOT |
674 | ai AICOMMABOUTTOSHOOT |
672 | } |
675 | } |
673 | } |
676 | } |
674 | ends |
677 | ends |
675 | 678 | ||
676 | actor COMMANDERSTAYPUT COMMANDERSTRENGTH |
679 | actor COMMANDERSTAYPUT COMMANDERSTRENGTH |
677 | cactor COMMANDER |
680 | cactor COMMANDER |
678 | ai AICOMMABOUTTOSHOOT |
681 | ai AICOMMABOUTTOSHOOT |
679 | enda |
682 | enda |
680 | 683 | ||
681 | actor COMMANDER COMMANDERSTRENGTH |
684 | actor COMMANDER COMMANDERSTRENGTH |
682 | 685 | ||
683 | state checksquished |
686 | state checksquished |
684 | 687 | ||
685 | ifaction ACOMMFROZEN |
688 | ifaction ACOMMFROZEN |
686 | { |
689 | { |
687 | fall |
690 | fall |
688 | 691 | ||
689 | ifcount THAWTIME |
692 | ifcount THAWTIME |
690 | { |
693 | { |
691 | getlastpal |
694 | getlastpal |
692 | ai AICOMMWAIT |
695 | ai AICOMMWAIT |
693 | } |
696 | } |
694 | else |
697 | else |
695 | ifcount FROZENDRIPTIME |
698 | ifcount FROZENDRIPTIME |
696 | { |
699 | { |
697 | ifactioncount 26 |
700 | ifactioncount 26 |
698 | { |
701 | { |
699 | spawn WATERDRIP |
702 | spawn WATERDRIP |
700 | resetactioncount |
703 | resetactioncount |
701 | } |
704 | } |
702 | } |
705 | } |
703 | 706 | ||
704 | ifhitweapon |
707 | ifhitweapon |
705 | { |
708 | { |
706 | ifwasweapon FREEZEBLAST |
709 | ifwasweapon FREEZEBLAST |
707 | { |
710 | { |
708 | strength 0 |
711 | strength 0 |
709 | break |
712 | break |
710 | } |
713 | } |
711 | addkills 1 |
714 | addkills 1 |
712 | 715 | ||
713 | ifrnd 84 |
716 | ifrnd 84 |
714 | spawn BLOODPOOL |
717 | spawn BLOODPOOL |
715 | lotsofglass 30 |
718 | lotsofglass 30 |
716 | sound GLASS_BREAKING |
719 | sound GLASS_BREAKING |
717 | killit |
720 | killit |
718 | } |
721 | } |
719 | ifp pfacing |
722 | ifp pfacing |
720 | ifpdistl FROZENQUICKKICKDIST |
723 | ifpdistl FROZENQUICKKICKDIST |
721 | pkick |
724 | pkick |
722 | break |
725 | break |
723 | } |
726 | } |
724 | ifai 0 |
727 | ifai 0 |
725 | ai AICOMMSHOOTNW |
728 | ai AICOMMSHOOTNW |
726 | else |
729 | else |
727 | ifai AICOMMWAIT |
730 | ifai AICOMMWAIT |
728 | { |
731 | { |
729 | ifcount 20 |
732 | ifcount 20 |
730 | { |
733 | { |
731 | ifcansee |
734 | ifcansee |
732 | { |
735 | { |
733 | ifcanshoottarget |
736 | ifcanshoottarget |
734 | { |
737 | { |
735 | ifrnd 96 |
738 | ifrnd 96 |
736 | ai AICOMMGET |
739 | ai AICOMMGET |
737 | else |
740 | else |
738 | ai AICOMMABOUTTOSHOOT |
741 | ai AICOMMABOUTTOSHOOT |
739 | } |
742 | } |
740 | } |
743 | } |
741 | else |
744 | else |
742 | ai AICOMMGET |
745 | ai AICOMMGET |
743 | } |
746 | } |
744 | } |
747 | } |
745 | else |
748 | else |
746 | ifai AICOMMABOUTTOSHOOT |
749 | ifai AICOMMABOUTTOSHOOT |
747 | { |
750 | { |
748 | ifactioncount 2 |
751 | ifactioncount 2 |
749 | { |
752 | { |
750 | ifcansee |
753 | ifcansee |
751 | ai AICOMMSHOOTNW |
754 | ai AICOMMSHOOTNW |
752 | else |
755 | else |
753 | { |
756 | { |
754 | ai AICOMMGET |
757 | ai AICOMMGET |
755 | break |
758 | break |
756 | } |
759 | } |
757 | } |
760 | } |
758 | ifrnd 32 soundonce COMM_ATTACK |
761 | ifrnd 32 soundonce COMM_ATTACK |
759 | } |
762 | } |
760 | else |
763 | else |
761 | ifai AICOMMSHOOTNW |
764 | ifai AICOMMSHOOTNW |
762 | { |
765 | { |
763 | ifcanshoottarget |
766 | ifcanshoottarget |
764 | { |
767 | { |
765 | ifcount 12 |
768 | ifcount 12 |
766 | ifrnd 16 |
769 | ifrnd 16 |
767 | ai AICOMMWAIT |
770 | ai AICOMMWAIT |
768 | 771 | ||
769 | ifactioncount 1 |
772 | ifactioncount 1 |
770 | { |
773 | { |
771 | shoot FREEZEBLAST |
774 | shoot FREEZEBLAST |
772 | resetactioncount |
775 | resetactioncount |
773 | } |
776 | } |
774 | 777 | ||
775 | getplayer[THISACTOR].i temp |
778 | getplayer[THISACTOR].i temp |
776 | getactor[temp].pal temp |
779 | getactor[temp].pal temp |
777 | ifvare temp 1 // if player is frozen |
780 | ifvare temp 1 // if player is frozen |
778 | ai AICOMMGET |
781 | ai AICOMMGET |
779 | } |
782 | } |
780 | else |
783 | else |
781 | ai AICOMMGET |
784 | ai AICOMMGET |
782 | } |
785 | } |
783 | else |
786 | else |
784 | ifai AICOMMSHRUNK |
787 | ifai AICOMMSHRUNK |
785 | { |
788 | { |
786 | ifcount SHRUNKDONECOUNT |
789 | ifcount SHRUNKDONECOUNT |
787 | ai AICOMMGET |
790 | ai AICOMMGET |
788 | else |
791 | else |
789 | ifcount SHRUNKCOUNT |
792 | ifcount SHRUNKCOUNT |
790 | sizeto 48 40 |
793 | sizeto 48 40 |
791 | else |
794 | else |
792 | state genericshrunkcode |
795 | state genericshrunkcode |
793 | } |
796 | } |
794 | else |
797 | else |
795 | ifai AICOMMGROW |
798 | ifai AICOMMGROW |
796 | state genericgrowcode |
799 | state genericgrowcode |
797 | else |
800 | else |
798 | ifai AICOMMGET |
801 | ifai AICOMMGET |
799 | { |
802 | { |
800 | ifnotmoving |
803 | ifnotmoving |
801 | ifrnd 4 |
804 | ifrnd 4 |
802 | operate |
805 | operate |
803 | ifpdistl 1024 |
806 | ifpdistl 1024 |
804 | { |
807 | { |
805 | ifp palive |
808 | ifp palive |
806 | { |
809 | { |
807 | sound COMM_SPIN |
810 | sound COMM_SPIN |
808 | ai AICOMMSPINNW |
811 | ai AICOMMSPINNW |
809 | break |
812 | break |
810 | } |
813 | } |
811 | 814 | ||
812 | getplayer[THISACTOR].i temp |
815 | getplayer[THISACTOR].i temp |
813 | getactor[temp].pal temp |
816 | getactor[temp].pal temp |
814 | ifvare temp 1 // if player is frozen |
817 | ifvare temp 1 // if player is frozen |
815 | { |
818 | { |
816 | sound COMM_SPIN |
819 | sound COMM_SPIN |
817 | ai AICOMMSPINNW |
820 | ai AICOMMSPINNW |
818 | break |
821 | break |
819 | } |
822 | } |
820 | } |
823 | } |
821 | 824 | ||
822 | ifcansee |
825 | ifcansee |
823 | { |
826 | { |
824 | ifp phigher |
827 | ifp phigher |
825 | move COMMGETUPVELS getv geth faceplayer |
828 | move COMMGETUPVELS getv geth faceplayer |
826 | else |
829 | else |
827 | move COMMGETVELS getv geth faceplayer |
830 | move COMMGETVELS getv geth faceplayer |
828 | } |
831 | } |
829 | ifactioncount 8 |
832 | ifactioncount 8 |
830 | ifrnd 2 |
833 | ifrnd 2 |
831 | ai AICOMMABOUTTOSHOOT |
834 | ai AICOMMABOUTTOSHOOT |
832 | } |
835 | } |
833 | else |
836 | else |
834 | ifai AICOMMSPINNW |
837 | ifai AICOMMSPINNW |
835 | { |
838 | { |
836 | soundonce COMM_SPIN |
839 | soundonce COMM_SPIN |
837 | ifcount 16 |
840 | ifcount 16 |
838 | { |
841 | { |
839 | ifpdistl 1280 |
842 | ifpdistl 1280 |
840 | { |
843 | { |
841 | setvar tempb CAPTSPINNINGPLAYER |
844 | setvar tempb CAPTSPINNINGPLAYER |
842 | mulvar tempb -1 |
845 | mulvar tempb -1 |
843 | // addphealth CAPTSPINNINGPLAYER |
846 | // addphealth CAPTSPINNINGPLAYER |
844 | getplayer[THISACTOR].i temp |
847 | getplayer[THISACTOR].i temp |
845 | setactor[temp].htextra tempb |
848 | setactor[temp].htextra tempb |
846 | setactor[temp].htpicnum KNEE |
849 | setactor[temp].htpicnum KNEE |
847 | setactor[temp].htowner THISACTOR |
850 | setactor[temp].htowner THISACTOR |
848 | 851 | ||
849 | globalsound DUKE_GRUNT |
852 | globalsound DUKE_GRUNT |
850 | palfrom 32 16 |
853 | palfrom 32 16 |
851 | resetcount |
854 | resetcount |
852 | } |
855 | } |
853 | else |
856 | else |
854 | ifpdistg 2300 |
857 | ifpdistg 2300 |
855 | ai AICOMMWAIT |
858 | ai AICOMMWAIT |
856 | } |
859 | } |
857 | ifactioncount 52 |
860 | ifactioncount 52 |
858 | ai AICOMMWAIT |
861 | ai AICOMMWAIT |
859 | ifnotmoving |
862 | ifnotmoving |
860 | ifrnd 32 |
863 | ifrnd 32 |
861 | operate |
864 | operate |
862 | } |
865 | } |
863 | 866 | ||
864 | ifai AICOMMDYING |
867 | ifai AICOMMDYING |
865 | { |
868 | { |
866 | fall |
869 | fall |
867 | strength 0 |
870 | strength 0 |
868 | 871 | ||
869 | ifhitweapon |
872 | ifhitweapon |
870 | ifwasweapon RADIUSEXPLOSION |
873 | ifwasweapon RADIUSEXPLOSION |
871 | { |
874 | { |
872 | sound SQUISH2 |
875 | sound SQUISH2 |
873 | spawn BLOODPOOL |
876 | spawn BLOODPOOL |
874 | state standard_jibs |
877 | state standard_jibs |
875 | 878 | ||
876 | killit |
879 | killit |
877 | } |
880 | } |
878 | 881 | ||
879 | ifaction ACOMMDYING |
882 | ifaction ACOMMDYING |
880 | ifactioncount 8 |
883 | ifactioncount 8 |
881 | { |
884 | { |
882 | iffloordistl 8 |
885 | iffloordistl 8 |
883 | sound THUD |
886 | sound THUD |
884 | cstat 0 |
887 | cstat 0 |
885 | action ACOMMDEAD |
888 | action ACOMMDEAD |
886 | } |
889 | } |
887 | } |
890 | } |
888 | else |
891 | else |
889 | { |
892 | { |
890 | ifrnd 2 |
893 | ifrnd 2 |
891 | soundonce COMM_ROAM |
894 | soundonce COMM_ROAM |
892 | state checkcommhitstate |
895 | state checkcommhitstate |
893 | } |
896 | } |
894 | enda |
897 | enda |
895 | 898 | ||
896 | move TANKSTOPNW |
899 | move TANKSTOPNW |
897 | 900 | ||
898 | useractor enemy TANK TANKSTRENGTH |
901 | useractor enemy TANK TANKSTRENGTH |
899 | fall |
902 | fall |
900 | 903 | ||
901 | // sizeat 45 45 |
904 | // sizeat 45 45 |
902 | ifaction 0 |
905 | ifaction 0 |
903 | { |
906 | { |
904 | action ATANKWAIT |
907 | action ATANKWAIT |
905 | cstat 257 |
908 | cstat 257 |
906 | clipdist 100 |
909 | clipdist 100 |
907 | } |
910 | } |
908 | else |
911 | else |
909 | ifaction ATANKSPIN |
912 | ifaction ATANKSPIN |
910 | { |
913 | { |
911 | soundonce TANK_ROAM |
914 | soundonce TANK_ROAM |
912 | 915 | ||
913 | ifactioncount 20 |
916 | ifactioncount 20 |
914 | { |
917 | { |
915 | ifrnd 16 |
918 | ifrnd 16 |
916 | ifcansee |
919 | ifcansee |
917 | ifcanshoottarget |
920 | ifcanshoottarget |
918 | { |
921 | { |
919 | move TANKSTOPNW geth |
922 | move TANKSTOPNW geth |
920 | action ATANKSHOOTING |
923 | action ATANKSHOOTING |
921 | stopsound TANK_ROAM |
924 | stopsound TANK_ROAM |
922 | } |
925 | } |
923 | } |
926 | } |
924 | 927 | ||
925 | ifrnd 16 |
928 | ifrnd 16 |
926 | move TANKFORWARD seekplayer |
929 | move TANKFORWARD seekplayer |
927 | } |
930 | } |
928 | else |
931 | else |
929 | ifaction ATANKSHOOTING |
932 | ifaction ATANKSHOOTING |
930 | { |
933 | { |
931 | ifactioncount 22 |
934 | ifactioncount 22 |
932 | { |
935 | { |
933 | ifpdistg 8192 |
936 | ifpdistg 8192 |
934 | { |
937 | { |
935 | sound BOS1_ATTACK2 |
938 | sound BOS1_ATTACK2 |
936 | shoot MORTER |
939 | shoot MORTER |
937 | } |
940 | } |
938 | resetcount |
941 | resetcount |
939 | move 0 action ATANKWAIT |
942 | move 0 action ATANKWAIT |
940 | } |
943 | } |
941 | else |
944 | else |
942 | ifactioncount 2 |
945 | ifactioncount 2 |
943 | { |
946 | { |
944 | ifcansee |
947 | ifcansee |
945 | { |
948 | { |
946 | ifpdistl 16384 |
949 | ifpdistl 16384 |
947 | { |
950 | { |
948 | ifrnd 128 |
951 | ifrnd 128 |
949 | { |
952 | { |
950 | 953 | ||
951 | 954 | ||
952 | sound PISTOL_FIRE |
955 | sound PISTOL_FIRE |
953 | shoot SHOTSPARK1 |
956 | shoot SHOTSPARK1 |
954 | } |
957 | } |
955 | } |
958 | } |
956 | else |
959 | else |
957 | ifrnd 128 |
960 | ifrnd 128 |
958 | { |
961 | { |
959 | sound PRED_ATTACK |
962 | sound PRED_ATTACK |
960 | shoot FIRELASER |
963 | shoot FIRELASER |
961 | } |
964 | } |
962 | } |
965 | } |
963 | else |
966 | else |
964 | { |
967 | { |
965 | move TANKFORWARD seekplayer |
968 | move TANKFORWARD seekplayer |
966 | action ATANKSPIN |
969 | action ATANKSPIN |
967 | } |
970 | } |
968 | } |
971 | } |
969 | 972 | ||
970 | ifrnd 16 |
973 | ifrnd 16 |
971 | { |
974 | { |
972 | stopsound TANK_ROAM |
975 | stopsound TANK_ROAM |
973 | move TANKSTOPNW faceplayerslow |
976 | move TANKSTOPNW faceplayerslow |
974 | } |
977 | } |
975 | } |
978 | } |
976 | else |
979 | else |
977 | ifaction ATANKWAIT |
980 | ifaction ATANKWAIT |
978 | { |
981 | { |
979 | ifactioncount 32 |
982 | ifactioncount 32 |
980 | { |
983 | { |
981 | move TANKFORWARD seekplayer |
984 | move TANKFORWARD seekplayer |
982 | action ATANKSPIN |
985 | action ATANKSPIN |
983 | } |
986 | } |
984 | } |
987 | } |
985 | else |
988 | else |
986 | ifaction ATANKDEAD |
989 | ifaction ATANKDEAD |
987 | { |
990 | { |
988 | addkills 1 |
991 | addkills 1 |
989 | hitradius 6144 TOUGH TOUGH TOUGH TOUGH |
992 | hitradius 6144 TOUGH TOUGH TOUGH TOUGH |
990 | sound LASERTRIP_EXPLODE |
993 | sound LASERTRIP_EXPLODE |
991 | debris SCRAP1 15 |
994 | debris SCRAP1 15 |
992 | spawn EXPLOSION2 |
995 | spawn EXPLOSION2 |
993 | ifrnd 128 spawn SNOWMAN |
996 | ifrnd 128 spawn SNOWMAN |
994 | killit |
997 | killit |
995 | } |
998 | } |
996 | 999 | ||
997 | ifhitweapon |
1000 | ifhitweapon |
998 | { |
1001 | { |
999 | ifdead |
1002 | ifdead |
1000 | action ATANKDEAD |
1003 | action ATANKDEAD |
1001 | else |
1004 | else |
1002 | { |
1005 | { |
1003 | debris SCRAP1 1 |
1006 | debris SCRAP1 1 |
1004 | ifaction ATANKSHOOTING break |
1007 | ifaction ATANKSHOOTING break |
1005 | 1008 | ||
1006 | ifrnd 192 |
1009 | ifrnd 192 |
1007 | { |
1010 | { |
1008 | move TANKSTOPNW geth |
1011 | move TANKSTOPNW geth |
1009 | action ATANKSHOOTING |
1012 | action ATANKSHOOTING |
1010 | stopsound TANK_ROAM |
1013 | stopsound TANK_ROAM |
1011 | } |
1014 | } |
1012 | } |
1015 | } |
1013 | } |
1016 | } |
1014 | 1017 | ||
1015 | enda |
1018 | enda |
1016 | 1019 | ||
1017 | 1020 | ||
1018 | include NWActor.con |
1021 | include NWActor.con |
1019 | include NWSnow.con |
1022 | include NWSnow.con |
1020 | 1023 | ||
1021 | // ----------------------------------------------------------------------------- |
1024 | // ----------------------------------------------------------------------------- |
1022 | 1025 | ||
1023 | onevent EVENT_GAME |
1026 | onevent EVENT_GAME |
1024 | ifactor APLAYER |
1027 | ifactor APLAYER |
1025 | { |
1028 | { |
1026 | state nwl3surprise |
1029 | state nwl3surprise |
1027 | 1030 | ||
1028 | getplayer[THISACTOR].holoduke_on holodukeid |
1031 | getplayer[THISACTOR].holoduke_on holodukeid |
1029 | ifvarg holodukeid -1 |
1032 | ifvarg holodukeid -1 |
1030 | setactor[holodukeid].mdflags 16 |
1033 | setactor[holodukeid].mdflags 16 |
1031 | 1034 | ||
1032 | // addlogvar skin |
1035 | // addlogvar skin |
1033 | } |
1036 | } |
1034 | ifactor FRAMEEFFECT1 |
1037 | ifactor FRAMEEFFECT1 |
1035 | ifspawnedby APLAYER |
1038 | ifspawnedby APLAYER |
1036 | setactor[THISACTOR].mdflags 16 |
1039 | setactor[THISACTOR].mdflags 16 |
1037 | 1040 | ||
1038 | /* |
1041 | /* |
1039 | ifactor MONEY |
1042 | ifactor MONEY |
1040 | { |
1043 | { |
1041 | setactor[THISACTOR].mdflags 16 |
1044 | setactor[THISACTOR].mdflags 16 |
1042 | getactor[THISACTOR].owner owner |
1045 | // getactor[THISACTOR].owner owner |
1043 | switch owner |
1046 | switch owner |
1044 | case SNOW case SNOWFLAKE case SNOWMAKER case SNOWMAKERNOMOVE |
1047 | case SNOW case SNOWFLAKE case SNOWMAKER case SNOWMAKERNOMOVE |
1045 | getactor[THISACTOR].x x |
1048 | getactor[THISACTOR].x x |
1046 | getactor[THISACTOR].y y |
1049 | getactor[THISACTOR].y y |
1047 | getactor[THISACTOR].z z |
1050 | getactor[THISACTOR].z z |
1048 | 1051 | ||
1049 | updatesectorz x y z temp |
1052 | updatesectorz x y z temp |
1050 | ifvarn temp -1 getflorzofslope temp x y temp2 else killit |
1053 | ifvarn temp -1 getflorzofslope temp x y temp2 else killit |
1051 | 1054 | ||
1052 | ifvarvare z temp2 killit |
1055 | ifvarvare z temp2 killit |
1053 | break |
1056 | break |
1054 | endswitch |
1057 | endswitch |
1055 | } |
1058 | } |
1056 | */ |
1059 | */ |
1057 | endevent |
1060 | endevent |
1058 | 1061 | ||
1059 | onevent EVENT_ANIMATESPRITES // This is a hell of a mess because putting get/settspr in states throws warnings, and I don't want that. |
- | |
1060 | getactor[THISACTOR].picnum picnum |
- | |
1061 | getactor[THISACTOR].owner owner |
1062 | onevent EVENT_ANIMATESPRITES |
1062 | 1063 | ||
1063 | ifvare picnum DOORSHOCK |
1064 | ifvare picnum DOORSHOCK |
1064 | { |
1065 | { |
1065 | ifspritepal 30 settspr[THISACTOR].tsprpicnum 3656 |
1066 | ifspritepal 30 settspr[THISACTOR].tsprpicnum 3656 |
1066 | ifvare VOLUME 1 ifvare LEVEL 2 settspr[THISACTOR].tsprpicnum 3656 |
1067 | ifvare VOLUME 1 ifvare LEVEL 2 settspr[THISACTOR].tsprpicnum 3656 |
1067 | break |
1068 | break |
1068 | } |
1069 | } |
1069 | ifvare picnum SNOWFLAKE |
1070 | ifvare picnum SNOWFLAKE |
1070 | { |
1071 | { |
1071 | settspr[THISACTOR].tsprpicnum SNOW |
1072 | settspr[THISACTOR].tsprpicnum SNOW |
1072 | settspr[THISACTOR].tsprxrepeat 4 |
1073 | settspr[THISACTOR].tsprxrepeat 4 |
1073 | settspr[THISACTOR].tspryrepeat 4 |
1074 | settspr[THISACTOR].tspryrepeat 4 |
1074 | break |
1075 | break |
1075 | } |
1076 | } |
1076 | /* |
1077 | /* |
1077 | ifvare picnum MONEY |
1078 | ifvare picnum MONEY |
1078 | { |
1079 | { |
1079 | switch owner |
1080 | switch owner |
1080 | case SNOW case SNOWFLAKE case SNOWMAKER case SNOWMAKERNOMOVE |
1081 | case SNOW case SNOWFLAKE case SNOWMAKER case SNOWMAKERNOMOVE |
1081 | settspr[THISACTOR].tsprpicnum SNOW |
1082 | settspr[THISACTOR].tsprpicnum SNOW |
1082 | break |
1083 | break |
1083 | endswitch |
1084 | endswitch |
1084 | } |
1085 | } |
1085 | */ |
1086 | */ |
1086 | 1087 | ||
1087 | switch picnum |
1088 | switch picnum |
1088 | case APLAYER |
1089 | case APLAYER |
1089 | ifvare skin SANTA |
1090 | ifvare skin SANTA |
1090 | { |
1091 | { |
1091 | gettspr[THISACTOR].tsprpicnum temp3 |
1092 | gettspr[THISACTOR].tsprpicnum temp3 |
1092 | ifvarl temp3 1544 addvar temp3 4096 |
1093 | ifvarg temp3 1399 ifvarl temp3 1544 addvar temp3 4096 |
1093 | settspr[THISACTOR].tsprpicnum temp3 |
1094 | settspr[THISACTOR].tsprpicnum temp3 |
1094 | 1095 | ||
1095 | ifvarg holodukeid -1 |
1096 | ifvarg holodukeid -1 |
1096 | { |
1097 | { |
1097 | gettspr[holodukeid].tsprpicnum temp3 |
1098 | gettspr[holodukeid].tsprpicnum temp3 |
1098 | ifvarl temp3 1544 addvar temp3 4096 |
1099 | ifvarg temp3 1399 ifvarl temp3 1544 addvar temp3 4096 |
1099 | settspr[holodukeid].tsprpicnum temp3 |
1100 | settspr[holodukeid].tsprpicnum temp3 |
1100 | } |
1101 | } |
1101 | } |
1102 | } |
1102 | break |
1103 | break |
1103 | 1104 | ||
1104 | case FRAMEEFFECT1 |
1105 | case FRAMEEFFECT1 |
1105 | ifvare skin SANTA |
1106 | ifvare skin SANTA |
1106 | ifspawnedby APLAYER |
1107 | ifspawnedby APLAYER |
1107 | { |
1108 | { |
1108 | gettspr[THISACTOR].tsprpicnum temp3 |
1109 | gettspr[THISACTOR].tsprpicnum temp3 |
1109 | ifvarl temp3 1544 addvar temp3 4096 |
1110 | ifvarg temp3 1399 ifvarl temp3 1544 addvar temp3 4096 |
1110 | settspr[THISACTOR].tsprpicnum temp3 |
1111 | settspr[THISACTOR].tsprpicnum temp3 |
1111 | } |
1112 | } |
1112 | break |
1113 | break |
1113 | 1114 | ||
1114 | case DUKETORSO |
1115 | case DUKETORSO |
1115 | case DUKEGUN |
1116 | case DUKEGUN |
1116 | getactor[owner].picnum temp2 |
1117 | getactor[owner].picnum temp2 |
1117 | ifvare temp2 SOBBOTWALK |
1118 | ifvare temp2 SOBBOTWALK |
1118 | { |
1119 | { |
1119 | gettspr[THISACTOR].tsprpicnum temp3 |
1120 | gettspr[THISACTOR].tsprpicnum temp3 |
1120 | addvar temp3 2456 |
1121 | addvar temp3 2456 |
1121 | settspr[THISACTOR].tsprpicnum temp3 |
1122 | settspr[THISACTOR].tsprpicnum temp3 |
1122 | } |
1123 | } |
1123 | ifvare temp2 SOBBOTFLY |
1124 | ifvare temp2 SOBBOTFLY |
1124 | { |
1125 | { |
1125 | gettspr[THISACTOR].tsprpicnum temp3 |
1126 | gettspr[THISACTOR].tsprpicnum temp3 |
1126 | addvar temp3 2456 |
1127 | addvar temp3 2456 |
1127 | settspr[THISACTOR].tsprpicnum temp3 |
1128 | settspr[THISACTOR].tsprpicnum temp3 |
1128 | } |
1129 | } |
1129 | ifvare temp2 APLAYER |
1130 | ifvare temp2 APLAYER |
1130 | { |
1131 | { |
1131 | ifvare skin SANTA |
1132 | ifvare skin SANTA |
1132 | { |
1133 | { |
1133 | gettspr[THISACTOR].tsprpicnum temp3 |
1134 | gettspr[THISACTOR].tsprpicnum temp3 |
1134 | addvar temp3 2456 |
1135 | addvar temp3 2456 |
1135 | settspr[THISACTOR].tsprpicnum temp3 |
1136 | settspr[THISACTOR].tsprpicnum temp3 |
1136 | } |
1137 | } |
1137 | } |
1138 | } |
1138 | break |
1139 | break |
1139 | 1140 | ||
1140 | case DUKELEG |
1141 | case DUKELEG |
1141 | getactor[owner].picnum temp2 |
1142 | getactor[owner].picnum temp2 |
1142 | ifvare temp2 SOBBOTWALK settspr[THISACTOR].tsprpal 30 |
1143 | ifvare temp2 SOBBOTWALK settspr[THISACTOR].tsprpal 30 |
1143 | ifvare temp2 SOBBOTFLY settspr[THISACTOR].tsprpal 30 |
1144 | ifvare temp2 SOBBOTFLY settspr[THISACTOR].tsprpal 30 |
1144 | ifvare temp2 APLAYER ifvare skin SANTA settspr[THISACTOR].tsprpal 30 |
1145 | ifvare temp2 APLAYER ifvare skin SANTA settspr[THISACTOR].tsprpal 30 |
1145 | break |
1146 | break |
1146 | endswitch |
1147 | endswitch |
1147 | 1148 | ||
1148 | ifvare picnum APLAYER // this fixes the bug with the misplaced TV screen tiles |
1149 | ifvare picnum APLAYER // this fixes the bug with the misplaced TV screen tiles |
1149 | { |
1150 | { |
1150 | gettspr[THISACTOR].tsprpicnum temp |
1151 | gettspr[THISACTOR].tsprpicnum temp |
1151 | switch temp |
1152 | switch temp |
1152 | case 1470 case 1471 case 1472 case 1473 case 1474 |
1153 | case 1470 case 1471 case 1472 case 1473 case 1474 |
1153 | subvar temp 5 |
1154 | subvar temp 5 |
1154 | settspr[THISACTOR].tsprpicnum temp |
1155 | settspr[THISACTOR].tsprpicnum temp |
1155 | break |
1156 | break |
1156 | endswitch |
1157 | endswitch |
1157 | } |
1158 | } |
1158 | endevent |
1159 | endevent |
1159 | 1160 | ||
1160 | 1161 | ||
1161 | 1162 | ||
1162 | 1163 | ||
1163 | useractor notenemy NWEFFECTOR 0 |
1164 | useractor notenemy NWEFFECTOR 0 |
1164 | cstat 32768 |
1165 | cstat 32768 |
1165 | // sizeat 1 1 |
1166 | // sizeat 1 1 |
1166 | 1167 | ||
1167 | ifspritepal 31 |
1168 | ifspritepal 31 |
1168 | { |
1169 | { |
1169 | getplayer[THISACTOR].cursectnum temp3 |
1170 | getplayer[THISACTOR].cursectnum temp3 |
1170 | switch temp3 |
1171 | switch temp3 |
1171 | case 60 case 61 case 62 case 63 |
1172 | case 60 case 61 case 62 case 63 |
1172 | case 86 case 87 |
1173 | case 86 case 87 |
1173 | case 299 case 300 case 301 case 302 case 303 case 304 case 305 case 306 case 307 case 308 case 309 |
1174 | case 299 case 300 case 301 case 302 case 303 case 304 case 305 case 306 case 307 case 308 case 309 |
1174 | case 310 case 311 case 312 case 313 case 314 case 315 case 316 case 317 |
1175 | case 310 case 311 case 312 case 313 case 314 case 315 case 316 case 317 |
1175 | soundonce PHONE_RING |
1176 | soundonce PHONE_RING |
1176 | break |
1177 | break |
1177 | endswitch |
1178 | endswitch |
1178 | 1179 | ||
1179 | ifpdistl RETRIEVEDISTANCE |
1180 | ifpdistl RETRIEVEDISTANCE |
1180 | ifp pfacing |
1181 | ifp pfacing |
1181 | ifhitspace |
1182 | ifhitspace |
1182 | ifvare temp2 0 |
1183 | ifvare temp2 0 |
1183 | { |
1184 | { |
1184 | setvar temp 0 |
1185 | setvar temp 0 |
1185 | setvar temp2 1 |
1186 | setvar temp2 1 |
1186 | } |
1187 | } |
1187 | 1188 | ||
1188 | ifvare temp2 1 |
1189 | ifvare temp2 1 |
1189 | { |
1190 | { |
1190 | addvar temp 1 |
1191 | addvar temp 1 |
1191 | 1192 | ||
1192 | stopsound PHONE_RING |
1193 | stopsound PHONE_RING |
1193 | ifvare temp 1 sound PHONE_PICKUP |
1194 | ifvare temp 1 sound PHONE_PICKUP |
1194 | else ifvare temp 39 |
1195 | else ifvare temp 39 |
1195 | { |
1196 | { |
1196 | setvar tempb 0 |
1197 | setvar tempb 0 |
1197 | randvar tempb 3 |
1198 | randvar tempb 3 |
1198 | switch tempb |
1199 | switch tempb |
1199 | case 0 sound LOWANG1 break |
1200 | case 0 sound LOWANG1 break |
1200 | case 1 sound LOWANG2 break |
1201 | case 1 sound LOWANG2 break |
1201 | case 2 sound LOWANG3 break |
1202 | case 2 sound LOWANG3 break |
1202 | case 3 sound LOWANG4 break |
1203 | case 3 sound LOWANG4 break |
1203 | endswitch |
1204 | endswitch |
1204 | } |
1205 | } |
1205 | else ifvare temp 195 sound PHONE_HANGUP |
1206 | else ifvare temp 195 sound PHONE_HANGUP |
1206 | else ifvare temp 247 |
1207 | else ifvare temp 247 |
1207 | { |
1208 | { |
1208 | setvar temp2 0 |
1209 | setvar temp2 0 |
1209 | setvar temp 0 |
1210 | setvar temp 0 |
1210 | } |
1211 | } |
1211 | } |
1212 | } |
1212 | } |
1213 | } |
1213 | enda |
1214 | enda |
1214 | 1215 | ||
1215 | useractor notenemy 3831 0 |
1216 | useractor notenemy 3831 0 |
1216 | // cstat 32768 |
1217 | // cstat 32768 |
1217 | sizeat 12 13 |
1218 | sizeat 12 13 |
1218 | getactor[THISACTOR].sectnum temp |
1219 | getactor[THISACTOR].sectnum temp |
1219 | getplayer[THISACTOR].cursectnum temp2 |
1220 | getplayer[THISACTOR].cursectnum temp2 |
1220 | ifvarvare temp temp2 |
1221 | ifvarvare temp temp2 |
1221 | { |
1222 | { |
1222 | setuserdef[THISACTOR].volume_number 1 |
1223 | setuserdef[THISACTOR].volume_number 1 |
1223 | endofgame 13 |
1224 | endofgame 13 |
1224 | } |
1225 | } |
1225 | enda |
1226 | enda |
1226 | 1227 | ||
1227 | action WOODENHORSE2FRAME 0 1 5 |
1228 | action WOODENHORSE2FRAME 0 1 5 |
1228 | action WOODEN2FALLFRAME -2738 1 5 |
1229 | action WOODEN2FALLFRAME -2738 1 5 |
1229 | useractor notenemy WOODENHORSE2 WEAK WOODENHORSE2FRAME |
1230 | useractor notenemy WOODENHORSE2 WEAK WOODENHORSE2FRAME |
1230 | fall |
1231 | fall |
1231 | ifhitweapon |
1232 | ifhitweapon |
1232 | { |
1233 | { |
1233 | ifdead |
1234 | ifdead |
1234 | { |
1235 | { |
1235 | debris SCRAP1 4 |
1236 | debris SCRAP1 4 |
1236 | debris SCRAP2 3 |
1237 | debris SCRAP2 3 |
1237 | killit |
1238 | killit |
1238 | } |
1239 | } |
1239 | else |
1240 | else |
1240 | action WOODEN2FALLFRAME |
1241 | action WOODEN2FALLFRAME |
1241 | } |
1242 | } |
1242 | enda |
1243 | enda |
1243 | 1244 | ||
1244 | useractor notenemy NWSTEAM 0 |
1245 | useractor notenemy NWSTEAM 0 |
1245 | ifpdistl 6144 |
1246 | ifpdistl 6144 |
1246 | soundonce STEAM_HISSING |
1247 | soundonce STEAM_HISSING |
1247 | enda |
1248 | enda |
1248 | 1249 | ||
1249 | define title_x1 73 |
1250 | define title_x1 73 |
1250 | define title_x2 306 |
1251 | define title_x2 306 |
1251 | define title_y 194 |
1252 | define title_y 194 |
1252 | define title_zoom 32768 |
1253 | define title_zoom 32768 |
1253 | 1254 | ||
1254 | onevent EVENT_DISPLAYMENU |
1255 | onevent EVENT_DISPLAYMENU |
1255 | // getplayer[THISACTOR].gm temp |
1256 | // getplayer[THISACTOR].gm temp |
1256 | // ifvarand temp 4 nullop else |
1257 | // ifvarand temp 4 nullop else |
1257 | // { |
1258 | // { |
1258 | rotatesprite title_x1 title_y title_zoom 0 3838 0 0 0 0 0 xdim ydim |
1259 | rotatesprite title_x1 title_y title_zoom 0 3838 0 0 0 0 0 xdim ydim |
1259 | rotatesprite title_x2 title_y title_zoom 0 3839 0 0 0 0 0 xdim ydim |
1260 | rotatesprite title_x2 title_y title_zoom 0 3839 0 0 0 0 0 xdim ydim |
1260 | // } |
1261 | // } |
1261 | endevent |
1262 | endevent |
1262 | 1263 | ||
1263 | /* |
1264 | /* |
1264 | onevent EVENT_DISPLAYTITLE |
1265 | onevent EVENT_DISPLAYTITLE |
1265 | rotatesprite title_x1 title_y title_zoom 0 3838 0 0 0 0 0 xdim ydim |
1266 | rotatesprite title_x1 title_y title_zoom 0 3838 0 0 0 0 0 xdim ydim |
1266 | rotatesprite title_x2 title_y title_zoom 0 3839 0 0 0 0 0 xdim ydim |
1267 | rotatesprite title_x2 title_y title_zoom 0 3839 0 0 0 0 0 xdim ydim |
1267 | endevent |
1268 | endevent |
1268 | */ |
1269 | */ |
1269 | 1270 | ||
1270 | 1271 | ||
1271 | 1272 |