Subversion Repositories nw_plus

Rev

Rev 66 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

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