Explodium Gun and Candy Gun now have a slide lock.
This commit is contained in:
parent
fc549703fa
commit
5f01001891
11 changed files with 694 additions and 46 deletions
|
|
@ -60,10 +60,8 @@ This is just a bit of *"future planning"* for stuff that I ***might*** add after
|
|||
- [Hexen] And Another One *(Defeat... yup, one more Heresiarch)*
|
||||
- [Hexen] The Last One *(Defeat the last Heresiarch)*
|
||||
- [Hexen] Didn't I Kick Your Ass Before? *(Defeat the Deathkings)*
|
||||
* **Official Sunder support *(when the WAD is complete)***
|
||||
* ***(Maybe)* Fake livestream chat overlay, with dynamic reactions to all sorts of stuff**
|
||||
* **Mothgirl summon for Lämp easter egg**
|
||||
* **Replace all hitscan with *"light projectiles"***
|
||||
* **Customized cluster text stuff if that ever gets scriptified**
|
||||
* **Crouch sliding *(+ proper crouch dashing)***
|
||||
* **Expand third person animations**
|
||||
- 4-directional movement variants
|
||||
|
|
@ -75,33 +73,40 @@ This is just a bit of *"future planning"* for stuff that I ***might*** add after
|
|||
- Giggle
|
||||
- Shrug
|
||||
- Beckon
|
||||
* **Japanese localization???**
|
||||
* ***(Maybe)* Fake livestream chat overlay, with dynamic reactions to all sorts of stuff**
|
||||
* **Customized cluster text stuff if that ever gets scriptified**
|
||||
* **Official Sunder support *(when the WAD is complete)***
|
||||
* **Photo Mode**
|
||||
- Dedicated poses
|
||||
- Stickers
|
||||
* **Monster/decoration replacements add-on:**
|
||||
- Potentially standalone, usable with other mods
|
||||
- Balanced for this mod
|
||||
- Unique bosses
|
||||
- Some extra enemy variants
|
||||
- Coverage for all supported IWADs *(oof)*
|
||||
* **DLC Gameset:**
|
||||
- Tetris
|
||||
- Pong
|
||||
- Snake
|
||||
- **[Doom]** Demo Land Adventure (platformer with shooty gameplay)
|
||||
- **[Heretic]** Interstellar Demolitionist (a somewhat simple vertical SHMUP, kinda Touhou styled)
|
||||
- **[Hexen]** Demolition Quest (a JRPG, kinda like early FF / BoF)
|
||||
* **Mothgirl summon for Lämp easter egg**
|
||||
* **Ibuki companion add-on**
|
||||
* **Saya companion add-on**
|
||||
* **Kirin companion add-on *(Hexen-exclusive)***
|
||||
- **[Doom]** Demo Land Adventure *(platformer with shooty gameplay)*
|
||||
- **[Heretic]** Interstellar Demolitionist *(a somewhat simple vertical SHMUP, kinda Touhou styled)*
|
||||
- **[Hexen]** Demolition Quest *(a JRPG, kinda like early FF / BoF)*
|
||||
* **Original English Voice Acting:**
|
||||
- Demolitionist
|
||||
- Ibuki
|
||||
- Saya
|
||||
- Kirin
|
||||
* **Japanese localization???**
|
||||
* **Monster/decoration replacements add-on**
|
||||
* **Photo Mode**
|
||||
- Dedicated poses
|
||||
- Stickers
|
||||
* **Hardcore Mode**
|
||||
* **Ibuki sub-mod *(Red Oni)***
|
||||
* **Saya sub-mod *(Red-Eyed Rampage)***
|
||||
* **Kirin sub-mod *(Red Star of Innocence)***
|
||||
* **Hardcore Mode sub-mod:**
|
||||
- Featuring Demolitionist on Maidbot frame
|
||||
- More complex game mechanics
|
||||
- Manual Hammerspace management
|
||||
- Manual reloading and weapon maintenance
|
||||
- Alternate mobility options (no jetpack)
|
||||
- Alternate mobility options *(no jetpack)*
|
||||
- Non-instant item usage
|
||||
* **DLC Weaponset 2:**
|
||||
- [1] Hand of Divine *(Total Madness)*
|
||||
|
|
@ -119,4 +124,7 @@ This is just a bit of *"future planning"* for stuff that I ***might*** add after
|
|||
- [Heretic/Hexen] Safety Tether *(Original)*
|
||||
- Devastation Sigil *(SWWM)*
|
||||
- Divine Sprite *(SWWM Platinum)*
|
||||
- Angel of Death *(Total Destruction, SWWM Platinum Ep2)*
|
||||
- Angel of Death *(Total Destruction, SWWM Platinum Ep2)*
|
||||
* **Official Campaign:**
|
||||
- Retell the events of UnSX 2 *(but with the Demolitionist's participation)*
|
||||
- Basically give SWWM GZ its own IWAD as a standalone game
|
||||
5
TODO.md
5
TODO.md
|
|
@ -17,6 +17,7 @@
|
|||
|
||||
**Very extra things for the future:**
|
||||
|
||||
- Saya and Ibuki companion add-ons (potentially a Kirin companion too)
|
||||
- Possibly also playable versions of them, for coop
|
||||
- Modeled Monster/Decoration replacers for all IWADs done in the style of the mod (will be very time consuming)
|
||||
- Another DLC weaponset
|
||||
- Official DM map pack
|
||||
- Official IWAD
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
[default]
|
||||
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r586 \cu(Sat 7 Aug 23:17:38 CEST 2021)\c-";
|
||||
SWWM_SHORTVER="\cw0.9.11b-pre r586 \cu(2021-08-07 23:17:38)\c-";
|
||||
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r588 \cu(Sun 8 Aug 19:32:39 CEST 2021)\c-";
|
||||
SWWM_SHORTVER="\cw0.9.11b-pre r588 \cu(2021-08-08 19:32:39)\c-";
|
||||
|
|
|
|||
|
|
@ -430,4 +430,90 @@ Model "CandyGun"
|
|||
FrameIndex XZWC H 1 21
|
||||
FrameIndex XZWC I 1 22
|
||||
FrameIndex XZWC J 1 23
|
||||
/// LAST ROUND
|
||||
SurfaceSkin 1 0 "DemoTags.png"
|
||||
SurfaceSkin 1 1 "DemoArms.png"
|
||||
SurfaceSkin 1 2 "DemoSoft.png"
|
||||
SurfaceSkin 1 3 "CandyGun.png"
|
||||
SurfaceSkin 1 4 ""
|
||||
SurfaceSkin 1 5 "CandyGun.png"
|
||||
// Fire
|
||||
FrameIndex XZWC K 1 237
|
||||
FrameIndex XZWC L 1 238
|
||||
FrameIndex XZWC M 1 239
|
||||
FrameIndex XZWC N 1 240
|
||||
FrameIndex XZWC O 1 241
|
||||
FrameIndex XZWC P 1 242
|
||||
FrameIndex XZWC Q 1 243
|
||||
FrameIndex XZWC R 1 244
|
||||
FrameIndex XZWC S 1 245
|
||||
// Still
|
||||
FrameIndex XZW9 X 1 248
|
||||
// Reload (Part 1)
|
||||
SurfaceSkin 1 5 "CandyGun_EmptyMag.png" // empty mag
|
||||
FrameIndex XZW9 Z 1 249
|
||||
FrameIndex XZWC X 1 250
|
||||
FrameIndex XZWC Y 1 251
|
||||
FrameIndex XZWC Z 1 252
|
||||
FrameIndex XZWD A 1 253
|
||||
FrameIndex XZWD B 1 254
|
||||
FrameIndex XZWD C 1 255
|
||||
FrameIndex XZWD D 1 256
|
||||
FrameIndex XZWD E 1 257
|
||||
FrameIndex XZWD F 1 258
|
||||
FrameIndex XZWD G 1 259
|
||||
FrameIndex XZWD H 1 260
|
||||
FrameIndex XZWD I 1 261
|
||||
FrameIndex XZWD J 1 262
|
||||
FrameIndex XZWD K 1 263
|
||||
FrameIndex XZWD L 1 264
|
||||
// Reload (Part 2)
|
||||
SurfaceSkin 1 5 "" // hide mag
|
||||
SurfaceSkin 1 6 "ExplodiumGun.png" // show new mag
|
||||
FrameIndex XZWD M 1 265
|
||||
FrameIndex XZWD N 1 266
|
||||
FrameIndex XZWD O 1 267
|
||||
FrameIndex XZWD P 1 268
|
||||
FrameIndex XZWD Q 1 269
|
||||
FrameIndex XZWD R 1 270
|
||||
FrameIndex XZWD S 1 271
|
||||
FrameIndex XZWD T 1 272
|
||||
SurfaceSkin 1 6 "" // hide new mag
|
||||
FrameIndex XZWD U 1 273
|
||||
FrameIndex XZWD V 1 274
|
||||
FrameIndex XZWD W 1 275
|
||||
SurfaceSkin 1 5 "CandyGun.png" // show mag
|
||||
FrameIndex XZWD X 1 276
|
||||
FrameIndex XZWD Y 1 277
|
||||
FrameIndex XZWD Z 1 278
|
||||
FrameIndex XZWE A 1 279
|
||||
FrameIndex XZWE B 1 280
|
||||
FrameIndex XZWE C 1 281
|
||||
FrameIndex XZWE D 1 282
|
||||
FrameIndex XZWE E 1 283
|
||||
FrameIndex XZWE F 1 284
|
||||
FrameIndex XZWE G 1 285
|
||||
FrameIndex XZWE H 1 286
|
||||
FrameIndex XZWE I 1 287
|
||||
FrameIndex XZWE J 1 288
|
||||
FrameIndex XZWE K 1 289
|
||||
FrameIndex XZWE L 1 290
|
||||
FrameIndex XZWE M 1 291
|
||||
FrameIndex XZWE N 1 292
|
||||
FrameIndex XZWE O 1 293
|
||||
FrameIndex XZWE P 1 294
|
||||
// Deselect
|
||||
FrameIndex XZWE Q 1 297
|
||||
FrameIndex XZWE R 1 298
|
||||
FrameIndex XZWE S 1 299
|
||||
FrameIndex XZWE T 1 300
|
||||
// Select
|
||||
FrameIndex XZWE U 1 301
|
||||
FrameIndex XZWE V 1 302
|
||||
FrameIndex XZWE W 1 303
|
||||
FrameIndex XZWE X 1 304
|
||||
FrameIndex XZWE Y 1 305
|
||||
FrameIndex XZWE Z 1 306
|
||||
FrameIndex XZWF A 1 307
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -372,5 +372,77 @@ Model "ExplodiumGun"
|
|||
FrameIndex XZWA H 1 21
|
||||
FrameIndex XZWA I 1 22
|
||||
FrameIndex XZWA J 1 23
|
||||
/// LAST ROUND
|
||||
SurfaceSkin 1 0 "DemoTags.png"
|
||||
SurfaceSkin 1 1 "DemoArms.png"
|
||||
SurfaceSkin 1 2 "DemoSoft.png"
|
||||
SurfaceSkin 1 3 "ExplodiumGun.png"
|
||||
SurfaceSkin 1 4 ""
|
||||
SurfaceSkin 1 5 "ExplodiumGun.png"
|
||||
// Fire
|
||||
FrameIndex XZWA K 1 237
|
||||
FrameIndex XZWA L 1 238
|
||||
FrameIndex XZWA M 1 239
|
||||
FrameIndex XZWA N 1 240
|
||||
FrameIndex XZWA O 1 241
|
||||
FrameIndex XZWA P 1 242
|
||||
FrameIndex XZWA Q 1 243
|
||||
FrameIndex XZWA R 1 244
|
||||
FrameIndex XZWA S 1 245
|
||||
// Still
|
||||
FrameIndex XZW9 X 1 248
|
||||
// Reload (Part 1)
|
||||
SurfaceSkin 1 5 "ExplodiumGun_EmptyMag.png" // empty mag
|
||||
FrameIndex XZW9 Z 1 249
|
||||
FrameIndex XZWA X 1 250
|
||||
FrameIndex XZWA Y 1 251
|
||||
FrameIndex XZWA Z 1 252
|
||||
FrameIndex XZWB A 1 253
|
||||
FrameIndex XZWB B 1 254
|
||||
FrameIndex XZWB C 1 255
|
||||
FrameIndex XZWB D 1 256
|
||||
FrameIndex XZWB E 1 257
|
||||
FrameIndex XZWB F 1 258
|
||||
FrameIndex XZWB G 1 259
|
||||
FrameIndex XZWB H 1 260
|
||||
FrameIndex XZWB I 1 261
|
||||
FrameIndex XZWB J 1 262
|
||||
FrameIndex XZWB K 1 263
|
||||
FrameIndex XZWB L 1 264
|
||||
// Reload (Part 2)
|
||||
SurfaceSkin 1 5 "" // hide mag
|
||||
SurfaceSkin 1 6 "ExplodiumGun.png" // show new mag
|
||||
FrameIndex XZWB M 1 265
|
||||
FrameIndex XZWB N 1 266
|
||||
FrameIndex XZWB O 1 267
|
||||
FrameIndex XZWB P 1 268
|
||||
FrameIndex XZWB Q 1 269
|
||||
FrameIndex XZWB R 1 270
|
||||
FrameIndex XZWB S 1 271
|
||||
FrameIndex XZWB T 1 272
|
||||
SurfaceSkin 1 6 "" // hide new mag
|
||||
FrameIndex XZWB U 1 273
|
||||
FrameIndex XZWB V 1 274
|
||||
FrameIndex XZWB W 1 275
|
||||
SurfaceSkin 1 5 "ExplodiumGun.png" // show mag
|
||||
FrameIndex XZWB X 1 276
|
||||
FrameIndex XZWB Y 1 277
|
||||
FrameIndex XZWB Z 1 278
|
||||
FrameIndex XZWC A 1 279
|
||||
FrameIndex XZWC B 1 280
|
||||
FrameIndex XZWC C 1 281
|
||||
FrameIndex XZWC D 1 282
|
||||
FrameIndex XZWC E 1 283
|
||||
FrameIndex XZWC F 1 284
|
||||
FrameIndex XZWC G 1 285
|
||||
FrameIndex XZWC H 1 286
|
||||
FrameIndex XZWC I 1 287
|
||||
FrameIndex XZWC J 1 288
|
||||
FrameIndex XZWC K 1 289
|
||||
FrameIndex XZWC L 1 290
|
||||
FrameIndex XZWC M 1 291
|
||||
FrameIndex XZWC N 1 292
|
||||
FrameIndex XZWC O 1 293
|
||||
FrameIndex XZWC P 1 294
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -402,4 +402,171 @@ Model "DualExplodiumGun"
|
|||
FrameIndex XZWI H 1 21
|
||||
FrameIndex XZWI I 1 22
|
||||
FrameIndex XZWI J 1 23
|
||||
/// LAST ROUND
|
||||
SurfaceSkin 1 0 "DemoTags.png"
|
||||
SurfaceSkin 1 1 "DemoArms.png"
|
||||
SurfaceSkin 1 2 "DemoSoft.png"
|
||||
SurfaceSkin 1 3 "ExplodiumGun.png"
|
||||
SurfaceSkin 1 4 ""
|
||||
SurfaceSkin 1 5 "ExplodiumGun.png"
|
||||
// RIGHT
|
||||
Model 1 "ExplodiumGun1st_d.3d"
|
||||
Offset 3 0 -2
|
||||
// Fire
|
||||
FrameIndex XZWI K 1 237
|
||||
FrameIndex XZWI L 1 238
|
||||
FrameIndex XZWI M 1 239
|
||||
FrameIndex XZWI N 1 240
|
||||
FrameIndex XZWI O 1 241
|
||||
FrameIndex XZWI P 1 242
|
||||
FrameIndex XZWI Q 1 243
|
||||
FrameIndex XZWI R 1 244
|
||||
FrameIndex XZWI S 1 245
|
||||
// Still
|
||||
FrameIndex XZWI V 1 248
|
||||
// Reload (Part 1)
|
||||
SurfaceSkin 1 5 "ExplodiumGun_EmptyMag.png" // empty mag
|
||||
FrameIndex XZWI W 1 249
|
||||
FrameIndex XZWI X 1 250
|
||||
FrameIndex XZWI Y 1 251
|
||||
FrameIndex XZWI Z 1 252
|
||||
FrameIndex XZWJ A 1 253
|
||||
FrameIndex XZWJ B 1 254
|
||||
FrameIndex XZWJ C 1 255
|
||||
FrameIndex XZWJ D 1 256
|
||||
FrameIndex XZWJ E 1 257
|
||||
FrameIndex XZWJ F 1 258
|
||||
FrameIndex XZWJ G 1 259
|
||||
FrameIndex XZWJ H 1 260
|
||||
FrameIndex XZWJ I 1 261
|
||||
FrameIndex XZWJ J 1 262
|
||||
FrameIndex XZWJ K 1 263
|
||||
FrameIndex XZWJ L 1 264
|
||||
// Reload (Part 2)
|
||||
SurfaceSkin 1 5 "" // hide mag
|
||||
SurfaceSkin 1 6 "ExplodiumGun.png" // show new mag
|
||||
FrameIndex XZWJ M 1 265
|
||||
FrameIndex XZWJ N 1 266
|
||||
FrameIndex XZWJ O 1 267
|
||||
FrameIndex XZWJ P 1 268
|
||||
FrameIndex XZWJ Q 1 269
|
||||
FrameIndex XZWJ R 1 270
|
||||
FrameIndex XZWJ S 1 271
|
||||
FrameIndex XZWJ T 1 272
|
||||
SurfaceSkin 1 6 "" // hide new mag
|
||||
FrameIndex XZWJ U 1 273
|
||||
FrameIndex XZWJ V 1 274
|
||||
FrameIndex XZWJ W 1 275
|
||||
SurfaceSkin 1 5 "ExplodiumGun.png" // show mag
|
||||
FrameIndex XZWJ X 1 276
|
||||
FrameIndex XZWJ Y 1 277
|
||||
FrameIndex XZWJ Z 1 278
|
||||
FrameIndex XZWK A 1 279
|
||||
FrameIndex XZWK B 1 280
|
||||
FrameIndex XZWK C 1 281
|
||||
FrameIndex XZWK D 1 282
|
||||
FrameIndex XZWK E 1 283
|
||||
FrameIndex XZWK F 1 284
|
||||
FrameIndex XZWK G 1 285
|
||||
FrameIndex XZWK H 1 286
|
||||
FrameIndex XZWK I 1 287
|
||||
FrameIndex XZWK J 1 288
|
||||
FrameIndex XZWK K 1 289
|
||||
FrameIndex XZWK L 1 290
|
||||
FrameIndex XZWK M 1 291
|
||||
FrameIndex XZWK N 1 292
|
||||
FrameIndex XZWK O 1 293
|
||||
FrameIndex XZWK P 1 294
|
||||
// Lower
|
||||
FrameIndex XZWM U 1 297
|
||||
FrameIndex XZWM V 1 298
|
||||
FrameIndex XZWM W 1 299
|
||||
FrameIndex XZWM X 1 300
|
||||
FrameIndex XZWM Y 1 301 // Raise
|
||||
FrameIndex XZWM Z 1 302
|
||||
FrameIndex XZWN A 1 303
|
||||
FrameIndex XZWN B 1 304
|
||||
FrameIndex XZWN C 1 305
|
||||
FrameIndex XZWN D 1 306
|
||||
FrameIndex XZWN E 1 307
|
||||
// LEFT
|
||||
Model 1 "ExplodiumGun1stL_d.3d"
|
||||
Offset -3 0 -2
|
||||
// Fire
|
||||
FrameIndex XZWK Q 1 237
|
||||
FrameIndex XZWK R 1 238
|
||||
FrameIndex XZWK S 1 239
|
||||
FrameIndex XZWK T 1 240
|
||||
FrameIndex XZWK U 1 241
|
||||
FrameIndex XZWK V 1 242
|
||||
FrameIndex XZWK W 1 243
|
||||
FrameIndex XZWK X 1 244
|
||||
FrameIndex XZWK Y 1 245
|
||||
// Still
|
||||
FrameIndex XZWK Z 1 248
|
||||
// Reload (Part 1)
|
||||
SurfaceSkin 1 5 "ExplodiumGun_EmptyMag.png" // empty mag
|
||||
FrameIndex XZWL A 1 249
|
||||
FrameIndex XZWL B 1 250
|
||||
FrameIndex XZWL C 1 251
|
||||
FrameIndex XZWL D 1 252
|
||||
FrameIndex XZWL E 1 253
|
||||
FrameIndex XZWL F 1 254
|
||||
FrameIndex XZWL G 1 255
|
||||
FrameIndex XZWL H 1 256
|
||||
FrameIndex XZWL I 1 257
|
||||
FrameIndex XZWL J 1 258
|
||||
FrameIndex XZWL K 1 259
|
||||
FrameIndex XZWL L 1 260
|
||||
FrameIndex XZWL M 1 261
|
||||
FrameIndex XZWL N 1 262
|
||||
FrameIndex XZWL O 1 263
|
||||
FrameIndex XZWL P 1 264
|
||||
// Reload (Part 2)
|
||||
SurfaceSkin 1 5 "" // hide mag
|
||||
SurfaceSkin 1 6 "ExplodiumGun.png" // show new mag
|
||||
FrameIndex XZWL Q 1 265
|
||||
FrameIndex XZWL R 1 266
|
||||
FrameIndex XZWL S 1 267
|
||||
FrameIndex XZWL T 1 268
|
||||
FrameIndex XZWL U 1 269
|
||||
FrameIndex XZWL V 1 270
|
||||
FrameIndex XZWL W 1 271
|
||||
FrameIndex XZWL X 1 272
|
||||
SurfaceSkin 1 6 "" // hide new mag
|
||||
FrameIndex XZWL Y 1 273
|
||||
FrameIndex XZWL Z 1 274
|
||||
FrameIndex XZWM A 1 275
|
||||
SurfaceSkin 1 5 "ExplodiumGun.png" // show mag
|
||||
FrameIndex XZWM B 1 276
|
||||
FrameIndex XZWM C 1 277
|
||||
FrameIndex XZWM D 1 278
|
||||
FrameIndex XZWM E 1 279
|
||||
FrameIndex XZWM F 1 280
|
||||
FrameIndex XZWM G 1 281
|
||||
FrameIndex XZWM H 1 282
|
||||
FrameIndex XZWM I 1 283
|
||||
FrameIndex XZWM J 1 284
|
||||
FrameIndex XZWM K 1 285
|
||||
FrameIndex XZWM L 1 286
|
||||
FrameIndex XZWM M 1 287
|
||||
FrameIndex XZWM N 1 288
|
||||
FrameIndex XZWM O 1 289
|
||||
FrameIndex XZWM P 1 290
|
||||
FrameIndex XZWM Q 1 291
|
||||
FrameIndex XZWM R 1 292
|
||||
FrameIndex XZWM S 1 293
|
||||
FrameIndex XZWM T 1 294
|
||||
// Lower
|
||||
FrameIndex XZWN F 1 297
|
||||
FrameIndex XZWN G 1 298
|
||||
FrameIndex XZWN H 1 299
|
||||
FrameIndex XZWN I 1 300
|
||||
FrameIndex XZWN J 1 301 // Raise
|
||||
FrameIndex XZWN K 1 302
|
||||
FrameIndex XZWN L 1 303
|
||||
FrameIndex XZWN M 1 304
|
||||
FrameIndex XZWN N 1 305
|
||||
FrameIndex XZWN O 1 306
|
||||
FrameIndex XZWN P 1 307
|
||||
}
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -335,13 +335,16 @@ Class ExplodiumGun : SWWMWeapon
|
|||
Ready:
|
||||
XZW2 A 1
|
||||
{
|
||||
if ( (invoker.clipcount <= 0) && !invoker.chambered ) player.SetPSprite(PSP_WEAPON,ResolveState("Reload"));
|
||||
else if ( (invoker.clipcount > 0) && !invoker.chambered ) player.SetPSprite(PSP_WEAPON,ResolveState("Slide"));
|
||||
if ( (invoker.clipcount > 0) && !invoker.chambered ) player.SetPSprite(PSP_WEAPON,ResolveState("Slide"));
|
||||
else A_WeaponReady(WRF_ALLOWZOOM|WRF_ALLOWUSER1|WRF_ALLOWRELOAD);
|
||||
}
|
||||
Wait;
|
||||
Fire:
|
||||
XZW2 A 1 A_Schutt();
|
||||
XZW2 A 1
|
||||
{
|
||||
A_Schutt();
|
||||
return A_JumpIf((invoker.clipcount<=0)&&!invoker.chambered,"FireLast");
|
||||
}
|
||||
XZW2 I 1;
|
||||
XZW2 J 1
|
||||
{
|
||||
|
|
@ -352,6 +355,47 @@ Class ExplodiumGun : SWWMWeapon
|
|||
XZW2 KLMNOP 1;
|
||||
XZW2 Q 2;
|
||||
Goto Ready;
|
||||
FireLast:
|
||||
XZW2 A 1;
|
||||
XZWA K 1;
|
||||
XZWA L 1
|
||||
{
|
||||
int layer = PSP_WEAPON+1;
|
||||
while ( player.FindPSprite(layer) ) layer++;
|
||||
A_Overlay(layer,"Casing");
|
||||
}
|
||||
XZWA M 1;
|
||||
XZWA N 1 A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP,.6,pitch:1.5);
|
||||
XZWA OPQR 1;
|
||||
XZWA S 2;
|
||||
Goto ReloadLast;
|
||||
ReloadLast:
|
||||
XZW9 X 1 A_PlayerReload();
|
||||
XZW9 Z 1;
|
||||
XZWA XYZ 1;
|
||||
XZWB ABC 1;
|
||||
XZWB D 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP,.3);
|
||||
XZWB E 1 { invoker.clipcount = 0; }
|
||||
XZWB F 1;
|
||||
XZWB G 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWB HIJK 1;
|
||||
XZWB L 1 A_DropMag();
|
||||
XZWB MNOPQR 1;
|
||||
XZWB S 1 A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWB TUVWXYZ 1;
|
||||
XZWC ABCD 1;
|
||||
XZWC E 1 { A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP); invoker.clipcount = invoker.default.clipcount; }
|
||||
XZWC FGHI 1;
|
||||
XZWC J 1
|
||||
{
|
||||
A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
invoker.clipcount--;
|
||||
invoker.chambered = true;
|
||||
}
|
||||
XZWC K 1;
|
||||
XZWC L 3;
|
||||
XZWC MNOP 1;
|
||||
Goto Ready;
|
||||
Casing:
|
||||
XZWA A 1
|
||||
{
|
||||
|
|
@ -736,14 +780,12 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
player.SetPSprite(PSP_WEAPON+1,ResolveState("LeftReady"));
|
||||
sis = player.FindPSprite(PSP_WEAPON+1);
|
||||
}
|
||||
if ( sis.CurState.InStateSequence(ResolveState("LeftReady")) )
|
||||
if ( sis.CurState.InStateSequence(ResolveState("LeftReady")) || sis.CurState.InStateSequence(ResolveState("LeftWaitLast")) )
|
||||
{
|
||||
if ( (ExplodiumGun(invoker.SisterWeapon).clipcount <= 0) && !ExplodiumGun(invoker.SisterWeapon).chambered )
|
||||
player.SetPSprite(PSP_WEAPON,ResolveState("Reload"));
|
||||
else if ( (ExplodiumGun(invoker.SisterWeapon).clipcount > 0) && !ExplodiumGun(invoker.SisterWeapon).chambered )
|
||||
if ( (ExplodiumGun(invoker.SisterWeapon).clipcount > 0) && !ExplodiumGun(invoker.SisterWeapon).chambered )
|
||||
player.SetPSprite(PSP_WEAPON,ResolveState("PreSlide"));
|
||||
else if ( (invoker.clipcount <= 0) && !invoker.chambered )
|
||||
player.SetPSprite(PSP_WEAPON+1,ResolveState("LeftReload"));
|
||||
player.SetPSprite(PSP_WEAPON+1,ResolveState("LeftReloadLast"));
|
||||
else if ( (invoker.clipcount > 0) && !invoker.chambered )
|
||||
player.SetPSprite(PSP_WEAPON+1,ResolveState("LeftPreSlide"));
|
||||
else if ( (player.cmd.buttons&BT_RELOAD) && (ExplodiumGun(invoker.SisterWeapon).clipcount < ExplodiumGun(invoker.SisterWeapon).default.clipcount)
|
||||
|
|
@ -751,7 +793,8 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
player.SetPSprite(PSP_WEAPON,ResolveState("Reload"));
|
||||
else if ( (player.cmd.buttons&BT_RELOAD) && (invoker.clipcount < invoker.default.clipcount) )
|
||||
player.SetPSprite(PSP_WEAPON+1,ResolveState("LeftReload"));
|
||||
else A_WeaponReady(WRF_ALLOWZOOM|WRF_ALLOWUSER1);
|
||||
else if ( !sis.CurState.InStateSequence(ResolveState("LeftWaitLast")) ) A_WeaponReady(WRF_ALLOWZOOM|WRF_ALLOWUSER1);
|
||||
else A_WeaponReady();
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -770,7 +813,11 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
}
|
||||
Wait;
|
||||
Fire:
|
||||
XZW2 A 1 A_Schutt();
|
||||
XZW2 A 1
|
||||
{
|
||||
A_Schutt();
|
||||
return A_JumpIf((ExplodiumGun(invoker.SisterWeapon).clipcount<=0)&&!ExplodiumGun(invoker.SisterWeapon).chambered,"FireLast");
|
||||
}
|
||||
XZW2 I 1;
|
||||
XZW2 J 1
|
||||
{
|
||||
|
|
@ -781,8 +828,70 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
XZW2 KLMNOP 1;
|
||||
XZW2 Q 2;
|
||||
Goto Ready;
|
||||
FireLast:
|
||||
XZW2 A 1;
|
||||
XZWI K 1;
|
||||
XZWI L 1
|
||||
{
|
||||
int layer = PSP_WEAPON+1;
|
||||
while ( player.FindPSprite(layer) ) layer++;
|
||||
A_Overlay(layer,"Casing");
|
||||
}
|
||||
XZWI M 1;
|
||||
XZWI N 1 A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP,.6,pitch:1.5);
|
||||
XZWI OPQR 1;
|
||||
XZWI S 2;
|
||||
Goto WaitLast;
|
||||
WaitLast:
|
||||
XZWI V 1
|
||||
{
|
||||
let sis = player.FindPSprite(PSP_WEAPON+1);
|
||||
return A_JumpIf(sis.CurState.InStateSequence(ResolveState("LeftReady"))||sis.CurState.InStateSequence(ResolveState("LeftWaitLast")),"ReloadLast");
|
||||
}
|
||||
Wait;
|
||||
ReloadLast:
|
||||
XZWI V 9
|
||||
{
|
||||
let sis = player.FindPSprite(PSP_WEAPON+1);
|
||||
if ( sis.CurState.InStateSequence(ResolveState("LeftWaitLast")) )
|
||||
player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftLowerLast"));
|
||||
else player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftLower"));
|
||||
}
|
||||
XZWI V 1 A_PlayerReload();
|
||||
XZWI WXYZ 1;
|
||||
XZWJ ABC 1;
|
||||
XZWJ D 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP,.3);
|
||||
XZWJ E 1 { ExplodiumGun(invoker.SisterWeapon).clipcount = 0; }
|
||||
XZWJ F 1;
|
||||
XZWJ G 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWJ HIJK 1;
|
||||
XZWJ L 1 A_DropMag();
|
||||
XZWJ MNOPQR 1;
|
||||
XZWJ S 1 A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWJ TUVWXYZ 1;
|
||||
XZWK ABCD 1;
|
||||
XZWK E 1 { A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP); ExplodiumGun(invoker.SisterWeapon).clipcount = ExplodiumGun(invoker.SisterWeapon).default.clipcount; }
|
||||
XZWK FGHI 1;
|
||||
XZWK J 1
|
||||
{
|
||||
A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
ExplodiumGun(invoker.SisterWeapon).clipcount--;
|
||||
ExplodiumGun(invoker.SisterWeapon).chambered = true;
|
||||
let sis = player.FindPSprite(PSP_WEAPON+1);
|
||||
if ( sis.CurState.InStateSequence(ResolveState("LeftLowerLast")) )
|
||||
player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftRaiseLast"));
|
||||
else player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftRaise"));
|
||||
}
|
||||
XZWK K 1;
|
||||
XZWK L 3;
|
||||
XZWK MNOP 1;
|
||||
Goto Ready;
|
||||
LeftFire:
|
||||
XZWB A 1 A_Schutt(-1);
|
||||
XZWB A 1
|
||||
{
|
||||
A_Schutt(-1);
|
||||
return A_JumpIf((invoker.clipcount<=0)&&!invoker.chambered,"LeftFireLast");
|
||||
}
|
||||
XZWB I 1;
|
||||
XZWB J 1
|
||||
{
|
||||
|
|
@ -793,6 +902,53 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
XZWB KLMNOP 1;
|
||||
XZWB Q 2;
|
||||
Goto LeftReady;
|
||||
LeftFireLast:
|
||||
XZWB A 1;
|
||||
XZWK Q 1;
|
||||
XZWK R 1
|
||||
{
|
||||
int layer = PSP_WEAPON+1;
|
||||
while ( player.FindPSprite(layer) ) layer++;
|
||||
A_Overlay(layer,"Casing");
|
||||
}
|
||||
XZWK S 1;
|
||||
XZWK T 1 A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP,.6,pitch:1.5);
|
||||
XZWK UVWX 1;
|
||||
XZWK Y 2;
|
||||
Goto LeftWaitLast;
|
||||
LeftWaitLast:
|
||||
XZWK Z 1;
|
||||
Wait;
|
||||
LeftReloadLast:
|
||||
XZWK Z 9 { player.SetPSPrite(PSP_WEAPON,ResolveState("Lower")); }
|
||||
XZWK Z 1 A_PlayerReload();
|
||||
XZWL ABCDEFG 1;
|
||||
XZWL H 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP,.3);
|
||||
XZWL I 1 { invoker.clipcount = 0; }
|
||||
XZWL J 1;
|
||||
XZWL K 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWL LMNO 1;
|
||||
XZWL P 1 A_DropMag();
|
||||
XZWL QRSTUV 1;
|
||||
XZWL W 1 A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWL XYZ 1;
|
||||
XZWM ABCDEFGH 1;
|
||||
XZWM I 1 { A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP); invoker.clipcount = invoker.default.clipcount; }
|
||||
XZWM JKLM 1;
|
||||
XZWM N 1
|
||||
{
|
||||
A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
invoker.clipcount--;
|
||||
invoker.chambered = true;
|
||||
let sis = player.FindPSprite(PSP_WEAPON);
|
||||
if ( sis.CurState.InStateSequence(ResolveState("LowerLast")) )
|
||||
player.SetPSPrite(PSP_WEAPON,ResolveState("RaiseLast"));
|
||||
else player.SetPSPrite(PSP_WEAPON,ResolveState("Raise"));
|
||||
}
|
||||
XZWM O 1;
|
||||
XZWM P 3;
|
||||
XZWM QRST 1;
|
||||
Goto LeftReady;
|
||||
Casing:
|
||||
XZWA A 1
|
||||
{
|
||||
|
|
@ -833,8 +989,33 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
XZWG VUT 2;
|
||||
XZWB A 1;
|
||||
Goto LeftReady;
|
||||
LowerLast:
|
||||
XZWI V 2;
|
||||
XZWM UVW 2;
|
||||
XZWM Y -1;
|
||||
Stop;
|
||||
LeftLowerLast:
|
||||
XZWK Z 2;
|
||||
XZWN FGH 2;
|
||||
XZWN J -1;
|
||||
Stop;
|
||||
RaiseLast:
|
||||
XZWM Y 2;
|
||||
XZWN WVU 2;
|
||||
XZWI V 1;
|
||||
Goto WaitLast;
|
||||
LeftRaiseLast:
|
||||
XZWN JHGF 2;
|
||||
XZWK Z 1;
|
||||
Goto LeftWaitLast;
|
||||
Reload:
|
||||
XZW2 A 9 { player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftLower")); }
|
||||
XZW2 A 9
|
||||
{
|
||||
let sis = player.FindPSprite(PSP_WEAPON+1);
|
||||
if ( sis.CurState.InStateSequence(ResolveState("LeftWaitLast")) )
|
||||
player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftLowerLast"));
|
||||
else player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftLower"));
|
||||
}
|
||||
XZW2 A 1
|
||||
{
|
||||
A_PlayerReload();
|
||||
|
|
@ -870,10 +1051,22 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
}
|
||||
XZW4 STUV 1;
|
||||
XZW2 A 0 A_JumpIf(!ExplodiumGun(invoker.SisterWeapon).chambered,"Slide");
|
||||
XZW2 A 0 { player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftRaise")); }
|
||||
XZW2 A 0
|
||||
{
|
||||
let sis = player.FindPSprite(PSP_WEAPON+1);
|
||||
if ( sis.CurState.InStateSequence(ResolveState("LeftLowerLast")) )
|
||||
player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftRaiseLast"));
|
||||
else player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftRaise"));
|
||||
}
|
||||
Goto Ready;
|
||||
PreSlide:
|
||||
XZW2 A 9 { player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftLower")); }
|
||||
XZW2 A 9
|
||||
{
|
||||
let sis = player.FindPSprite(PSP_WEAPON+1);
|
||||
if ( sis.CurState.InStateSequence(ResolveState("LeftWaitLast")) )
|
||||
player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftLowerLast"));
|
||||
else player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftLower"));
|
||||
}
|
||||
Slide:
|
||||
XZW2 A 1;
|
||||
XZW4 WXY 1;
|
||||
|
|
@ -887,10 +1080,22 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
XZW5 EFG 1;
|
||||
XZW5 H 1 A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW5 IJKLM 1;
|
||||
XZW2 A 0 { player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftRaise")); }
|
||||
XZW2 A 0
|
||||
{
|
||||
let sis = player.FindPSprite(PSP_WEAPON+1);
|
||||
if ( sis.CurState.InStateSequence(ResolveState("LeftLowerLast")) )
|
||||
player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftRaiseLast"));
|
||||
else player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftRaise"));
|
||||
}
|
||||
Goto Ready;
|
||||
LeftReload:
|
||||
XZWB A 9 { player.SetPSPrite(PSP_WEAPON,ResolveState("Lower")); }
|
||||
XZWB A 9
|
||||
{
|
||||
let sis = player.FindPSprite(PSP_WEAPON);
|
||||
if ( sis.CurState.InStateSequence(ResolveState("WaitLast")) )
|
||||
player.SetPSPrite(PSP_WEAPON,ResolveState("LowerLast"));
|
||||
else player.SetPSPrite(PSP_WEAPON,ResolveState("Lower"));
|
||||
}
|
||||
XZWB A 1
|
||||
{
|
||||
A_PlayerReload();
|
||||
|
|
@ -926,10 +1131,22 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
}
|
||||
XZWD STUV 1;
|
||||
XZWB A 0 A_JumpIf(!invoker.chambered,"LeftSlide");
|
||||
XZWB A 0 { player.SetPSPrite(PSP_WEAPON,ResolveState("Raise")); }
|
||||
XZWB A 0
|
||||
{
|
||||
let sis = player.FindPSprite(PSP_WEAPON);
|
||||
if ( sis.CurState.InStateSequence(ResolveState("LowerLast")) )
|
||||
player.SetPSPrite(PSP_WEAPON,ResolveState("RaiseLast"));
|
||||
else player.SetPSPrite(PSP_WEAPON,ResolveState("Raise"));
|
||||
}
|
||||
Goto LeftReady;
|
||||
LeftPreSlide:
|
||||
XZWB A 9 { player.SetPSPrite(PSP_WEAPON,ResolveState("Lower")); }
|
||||
XZWB A 9
|
||||
{
|
||||
let sis = player.FindPSprite(PSP_WEAPON);
|
||||
if ( sis.CurState.InStateSequence(ResolveState("WaitLast")) )
|
||||
player.SetPSPrite(PSP_WEAPON,ResolveState("LowerLast"));
|
||||
else player.SetPSPrite(PSP_WEAPON,ResolveState("Lower"));
|
||||
}
|
||||
LeftSlide:
|
||||
XZWB A 1;
|
||||
XZWD WXY 1;
|
||||
|
|
@ -943,7 +1160,13 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
XZWE EFG 1;
|
||||
XZWE H 1 A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWE IJKLM 1;
|
||||
XZWB A 0 { player.SetPSPrite(PSP_WEAPON,ResolveState("Raise")); }
|
||||
XZWB A 0
|
||||
{
|
||||
let sis = player.FindPSprite(PSP_WEAPON);
|
||||
if ( sis.CurState.InStateSequence(ResolveState("LowerLast")) )
|
||||
player.SetPSPrite(PSP_WEAPON,ResolveState("RaiseLast"));
|
||||
else player.SetPSPrite(PSP_WEAPON,ResolveState("Raise"));
|
||||
}
|
||||
Goto LeftReady;
|
||||
Zoom:
|
||||
XZW2 A 1
|
||||
|
|
|
|||
|
|
@ -363,14 +363,21 @@ Class CandyGun : SWWMWeapon
|
|||
XZW1 AB -1;
|
||||
Stop;
|
||||
Select:
|
||||
XZW2 B 2 A_FullRaise();
|
||||
XZW2 B 2
|
||||
{
|
||||
A_FullRaise();
|
||||
return A_JumpIf((invoker.clipcount<=0)&&!invoker.chambered,"SelectLast");
|
||||
}
|
||||
XZW2 CDEFGH 2;
|
||||
Goto Ready;
|
||||
SelectLast:
|
||||
XZWE UVWXYZ 2;
|
||||
XZWF A 2;
|
||||
Goto ReadyLast;
|
||||
Ready:
|
||||
XZW2 A 1
|
||||
{
|
||||
if ( (invoker.clipcount <= 0) && !invoker.chambered && ((invoker.Ammo1.Amount > 0) || (CountInv("CandyGunBullets") > 0)) ) player.SetPSprite(PSP_WEAPON,ResolveState("Reload"));
|
||||
else if ( (invoker.clipcount > 0) && !invoker.chambered ) player.SetPSprite(PSP_WEAPON,ResolveState("Slide"));
|
||||
if ( (invoker.clipcount > 0) && !invoker.chambered ) player.SetPSprite(PSP_WEAPON,ResolveState("Slide"));
|
||||
else
|
||||
{
|
||||
int flg = WRF_ALLOWZOOM|WRF_ALLOWUSER1;
|
||||
|
|
@ -382,8 +389,24 @@ Class CandyGun : SWWMWeapon
|
|||
}
|
||||
}
|
||||
Wait;
|
||||
ReadyLast:
|
||||
XZW9 X 1
|
||||
{
|
||||
if ( (invoker.Ammo1.Amount > 0) || (CountInv("CandyGunBullets") > 0) || sv_infiniteammo || FindInventory('PowerInfiniteAmmo',true) ) player.SetPSprite(PSP_WEAPON,ResolveState("ReloadLast"));
|
||||
else
|
||||
{
|
||||
A_WeaponReady(WRF_NOPRIMARY|WRF_NOSECONDARY);
|
||||
if ( player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK) )
|
||||
invoker.CheckAmmo(EitherFire,true);
|
||||
}
|
||||
}
|
||||
Wait;
|
||||
Fire:
|
||||
XZW2 A 1 A_Schutt();
|
||||
XZW2 A 1
|
||||
{
|
||||
A_Schutt();
|
||||
return A_JumpIf((invoker.clipcount<=0)&&!invoker.chambered,"FireLast");
|
||||
}
|
||||
XZW2 I 1;
|
||||
XZW2 J 1
|
||||
{
|
||||
|
|
@ -394,6 +417,64 @@ Class CandyGun : SWWMWeapon
|
|||
XZW2 KLMNOP 1;
|
||||
XZW2 Q 2;
|
||||
Goto Ready;
|
||||
FireLast:
|
||||
XZW2 A 1;
|
||||
XZWC K 1;
|
||||
XZWC L 1
|
||||
{
|
||||
int layer = PSP_WEAPON+1;
|
||||
while ( player.FindPSprite(layer) ) layer++;
|
||||
A_Overlay(layer,"Casing");
|
||||
}
|
||||
XZWC M 1;
|
||||
XZWC N 1 A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP,.6,pitch:1.5);
|
||||
XZWC OPQR 1;
|
||||
XZWC S 2;
|
||||
Goto ReadyLast;
|
||||
ReloadLast:
|
||||
XZW9 X 1 A_PlayerReload();
|
||||
XZW9 Z 1;
|
||||
XZWC XYZ 1;
|
||||
XZWD ABC 1;
|
||||
XZWD D 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP,.3);
|
||||
XZWD E 1 { invoker.clipcount = 0; }
|
||||
XZWD F 1;
|
||||
XZWD G 1 A_StartSound("explodium/magout",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWD HIJK 1;
|
||||
XZWD L 1 A_DropMag();
|
||||
XZWD MNOPQR 1;
|
||||
XZWD S 1 A_StartSound("explodium/magin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZWD TUVWXYZ 1;
|
||||
XZWE ABCD 1;
|
||||
XZWE E 1
|
||||
{
|
||||
A_StartSound("explodium/jamitin",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
if ( sv_infiniteammo || FindInventory('PowerInfiniteAmmo',true) )
|
||||
invoker.clipcount = invoker.default.clipcount;
|
||||
else if ( invoker.Ammo1.Amount <= 0 )
|
||||
{
|
||||
MagAmmo sb = MagAmmo(FindInventory("CandyGunBullets"));
|
||||
int takeamt = min(sb.Amount,sb.ClipSize);
|
||||
invoker.clipcount = takeamt;
|
||||
sb.Amount -= takeamt;
|
||||
}
|
||||
else
|
||||
{
|
||||
invoker.Ammo1.Amount = max(0,invoker.Ammo1.Amount-1);
|
||||
invoker.clipcount = invoker.default.clipcount;
|
||||
}
|
||||
}
|
||||
XZWE FGHI 1;
|
||||
XZWE J 1
|
||||
{
|
||||
A_StartSound("explodium/slideforward",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
invoker.clipcount--;
|
||||
invoker.chambered = true;
|
||||
}
|
||||
XZWE K 1;
|
||||
XZWE L 3;
|
||||
XZWE MNOP 1;
|
||||
Goto Ready;
|
||||
Casing:
|
||||
XZWC A 1
|
||||
{
|
||||
|
|
@ -572,11 +653,21 @@ Class CandyGun : SWWMWeapon
|
|||
XZW9 ABCDEFGHIJKLMNOPQRSTUVW 1;
|
||||
Goto Ready;
|
||||
Deselect:
|
||||
XZW2 A 2 A_StartSound("explodium/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
XZW2 A 2
|
||||
{
|
||||
A_StartSound("explodium/deselect",CHAN_WEAPON,CHANF_OVERLAP);
|
||||
return A_JumpIf((invoker.clipcount<=0)&&!invoker.chambered,"DeselectLast");
|
||||
}
|
||||
XZWA TUVW 2;
|
||||
XZW2 B 2;
|
||||
XZW2 B -1 A_FullLower();
|
||||
Stop;
|
||||
DeselectLast:
|
||||
XZW9 X 2;
|
||||
XZWE QRST 2;
|
||||
XZWE U 2;
|
||||
XZWE U -1 A_FullLower();
|
||||
Stop;
|
||||
Flash:
|
||||
XZWZ A 2
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue