Subversion Repositories vaca_plus

Rev

Rev 17 | Rev 61 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

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