diff --git a/zscript/biorifle.zsc b/zscript/biorifle.zsc index ecc2df0..c360d74 100644 --- a/zscript/biorifle.zsc +++ b/zscript/biorifle.zsc @@ -548,6 +548,7 @@ Class BioSplash : BioGel Class BioRifle : UTWeapon { double charge; + bool bCharging; action void A_BioFire( bool alt = false ) { @@ -597,6 +598,7 @@ Class BioRifle : UTWeapon if ( !weap ) return; invoker.charge = 0; A_PlaySound("ges/charge",CHAN_WEAPON); + invoker.bCharging = true; } action void A_ChargeUp() { @@ -607,6 +609,11 @@ Class BioRifle : UTWeapon if ( !weap.DepleteAmmo(weap.bAltFire,true,1) ) return; invoker.charge = min(5.1,invoker.charge+0.5); } + override bool CheckAmmo( int fireMode, bool autoSwitch, bool requireAmmo, int ammocount ) + { + if ( bCharging ) return true; + return Super.CheckAmmo(fireMode,autoSwitch,requireAmmo,ammocount); + } Default { Tag "GES Bio Rifle"; @@ -633,6 +640,7 @@ Class BioRifle : UTWeapon Idle: BIOI A 1 { + invoker.bCharging = false; A_CheckReload(); A_WeaponReady(); } @@ -645,58 +653,49 @@ Class BioRifle : UTWeapon BIOC A 4 A_BeginCharge(); BIOC B 5 A_ChargeUp(); BIOC CD 5; - BIOC E 0 A_Refire("AltFire2"); + BIOC E 0 A_Refire(1); Goto AltRelease; - AltFire2: BIOC E 5 A_ChargeUp(); BIOC FG 5; - BIOC H 0 A_Refire("AltFire3"); + BIOC H 0 A_Refire(1); Goto AltRelease; - AltFire3: BIOC H 5 A_ChargeUp(); BIOC IJ 5; - BIOC K 0 A_Refire("AltFire4"); + BIOC K 0 A_Refire(1); Goto AltRelease; - AltFire4: BIOC K 5 A_ChargeUp(); BIOC LM 5; - BIOC N 0 A_Refire("AltFire5"); + BIOC N 0 A_Refire(1); Goto AltRelease; - AltFire5: BIOC N 5 A_ChargeUp(); BIOC OP 5; - BIOC Q 0 A_Refire("AltFire6"); + BIOC Q 0 A_Refire(1); Goto AltRelease; - AltFire6: BIOC Q 5 A_ChargeUp(); BIOC RS 5; - BIOC T 0 A_Refire("AltFire7"); + BIOC T 0 A_Refire(1); Goto AltRelease; - AltFire7: BIOC T 5 A_ChargeUp(); BIOC UV 5; - BIOC W 0 A_Refire("AltFire8"); + BIOC W 0 A_Refire(1); Goto AltRelease; - AltFire8: BIOC W 5 A_ChargeUp(); BIOC XY 5; - BIOC Z 0 A_Refire("AltFire9"); + BIOC Z 0 A_Refire(1); Goto AltRelease; - AltFire9: BIOC Z 5 A_ChargeUp(); BIC2 AB 5; - BIC2 C 0 A_Refire("AltFire10"); + BIC2 C 0 A_Refire(1); Goto AltRelease; - AltFire10: BIC2 C 5 A_ChargeUp(); BIC2 DE 5; - BIOM A 0 A_Refire("AltHeld"); + BIOM A 0 A_Refire(1); Goto AltRelease; AltHeld: - BIOM A 5 { invoker.charge = min(5.1,invoker.charge+0.1); } + BIOM A 5; BIOM A 0 A_Refire("AltHeld"); AltRelease: - BIOE A 1; + BIOE A 1 { invoker.charge = min(5.1,invoker.charge+0.1); } BIOF A 2 A_BioFire(true); BIOF BCDEFGHI 2; Goto Idle; @@ -708,4 +707,4 @@ Class BioRifle : UTWeapon BIOD J 1 A_Lower(int.max); Wait; } -} \ No newline at end of file +} diff --git a/zscript/minigun.zsc b/zscript/minigun.zsc index 787a55e..ef37e48 100644 --- a/zscript/minigun.zsc +++ b/zscript/minigun.zsc @@ -456,8 +456,5 @@ Class Minigun : UTWeapon Stop; MMUZ I 2 Bright; Stop; - Dummy: - MMUZ ABCDEFGHI -1; - Stop; } }