Fix inconsistent bobbing with dual explodium guns.
Fix "laggy" cocking animation with dual explodium guns.
This commit is contained in:
parent
505987b72c
commit
c4e9dfac8a
2 changed files with 12 additions and 4 deletions
|
|
@ -1,3 +1,3 @@
|
||||||
[default]
|
[default]
|
||||||
SWWM_MODVER="\cyDEMOLITIONIST \cw1.2.21 r2 \cu(Tue 7 Jun 12:02:11 CEST 2022)\c-";
|
SWWM_MODVER="\cyDEMOLITIONIST \cw1.2.21 r3 \cu(Tue 7 Jun 12:06:43 CEST 2022)\c-";
|
||||||
SWWM_SHORTVER="\cw1.2.21 r2 \cu(2022-06-07 12:02:11)\c-";
|
SWWM_SHORTVER="\cw1.2.21 r3 \cu(2022-06-07 12:06:43)\c-";
|
||||||
|
|
|
||||||
|
|
@ -860,6 +860,9 @@ Class DualExplodiumGun : SWWMWeapon
|
||||||
int flg = WRF_NOSWITCH|WRF_NOSECONDARY;
|
int flg = WRF_NOSWITCH|WRF_NOSECONDARY;
|
||||||
if ( !ExplodiumGun(invoker.SisterWeapon).chambered )
|
if ( !ExplodiumGun(invoker.SisterWeapon).chambered )
|
||||||
flg |= WRF_NOPRIMARY;
|
flg |= WRF_NOPRIMARY;
|
||||||
|
// don't bob while the left weapon is firing
|
||||||
|
if ( sis.CurState.InStateSequence(ResolveState("LeftFire")) || sis.CurState.InStateSequence(ResolveState("LeftFireLast")) )
|
||||||
|
flg |= WRF_NOBOB;
|
||||||
A_WeaponReady(flg);
|
A_WeaponReady(flg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -876,6 +879,9 @@ Class DualExplodiumGun : SWWMWeapon
|
||||||
player.SetPSprite(PSP_WEAPON+1,ResolveState("LeftReload"));
|
player.SetPSprite(PSP_WEAPON+1,ResolveState("LeftReload"));
|
||||||
else if ( player.cmd.buttons&BT_ALTATTACK && invoker.chambered )
|
else if ( player.cmd.buttons&BT_ALTATTACK && invoker.chambered )
|
||||||
player.SetPSprite(PSP_WEAPON+1,ResolveState("LeftFire"));
|
player.SetPSprite(PSP_WEAPON+1,ResolveState("LeftFire"));
|
||||||
|
// allow bobbing while the right weapon reloads
|
||||||
|
if ( !sis.CurState.InStateSequence(ResolveState("Fire")) && !sis.CurState.InStateSequence(ResolveState("FireLast")) )
|
||||||
|
A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH);
|
||||||
}
|
}
|
||||||
Wait;
|
Wait;
|
||||||
Fire:
|
Fire:
|
||||||
|
|
@ -1077,7 +1083,8 @@ Class DualExplodiumGun : SWWMWeapon
|
||||||
XZW4 KLMNOP 2;
|
XZW4 KLMNOP 2;
|
||||||
Goto Ready;
|
Goto Ready;
|
||||||
Slide:
|
Slide:
|
||||||
XZW2 A 10 { player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftLower")); }
|
XZW2 A 9 { player.SetPSPrite(PSP_WEAPON+1,ResolveState("LeftLower")); }
|
||||||
|
XZW2 A 1;
|
||||||
XZW4 WXY 1;
|
XZW4 WXY 1;
|
||||||
XZW5 A 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP);
|
XZW5 A 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP);
|
||||||
XZW5 BC 1;
|
XZW5 BC 1;
|
||||||
|
|
@ -1133,7 +1140,8 @@ Class DualExplodiumGun : SWWMWeapon
|
||||||
XZWD KLMNOP 2;
|
XZWD KLMNOP 2;
|
||||||
Goto LeftReady;
|
Goto LeftReady;
|
||||||
LeftSlide:
|
LeftSlide:
|
||||||
XZWB A 10 { player.SetPSPrite(PSP_WEAPON,ResolveState("Lower")); }
|
XZWB A 9 { player.SetPSPrite(PSP_WEAPON,ResolveState("Lower")); }
|
||||||
|
XZWB A 1;
|
||||||
XZWD WXY 1;
|
XZWD WXY 1;
|
||||||
XZWE A 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP);
|
XZWE A 1 A_StartSound("explodium/slideback",CHAN_WEAPON,CHANF_OVERLAP);
|
||||||
XZWE BC 1;
|
XZWE BC 1;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue