1.0.3 release:
- Add option for vanilla style Power Shield to not drain over time (defaults to true). - Fix various weapons being able to fire after player dies while charging (Biorifle, Flamethrower). - Fix Minigun not firing bullets immediately at start of fire loop or on refire. - Fix Minigun playing unwind animation on death, this time for real. - Added interpolation to some Teleport Capsule states and made refire a bit quicker.
This commit is contained in:
parent
efda5e69e5
commit
8061ce28b2
9 changed files with 47 additions and 10 deletions
|
|
@ -858,10 +858,15 @@ Class UFlamethrower : UnrealWeapon
|
|||
}
|
||||
action void A_FireFlame()
|
||||
{
|
||||
if ( Health <= 0 )
|
||||
{
|
||||
player.SetPSprite(-9999,ResolveState("Null"));
|
||||
return;
|
||||
}
|
||||
let weap = Weapon(invoker);
|
||||
if ( (weap.Ammo1.Amount <= 0) || !(player.cmd.buttons&BT_ATTACK) )
|
||||
{
|
||||
player.SetPSPrite(PSP_WEAPON,invoker.FindState("Release"));
|
||||
player.SetPSprite(PSP_WEAPON,invoker.FindState("Release"));
|
||||
return;
|
||||
}
|
||||
invoker.count += 10./TICRATE;
|
||||
|
|
@ -921,6 +926,12 @@ Class UFlamethrower : UnrealWeapon
|
|||
}
|
||||
action void A_ChargeUp()
|
||||
{
|
||||
if ( Health <= 0 )
|
||||
{
|
||||
invoker.bCharging = false;
|
||||
player.SetPSprite(-9999,ResolveState("Null"));
|
||||
return;
|
||||
}
|
||||
let weap = Weapon(invoker);
|
||||
if ( (invoker.chargesize < 4.9) && (weap.Ammo1.Amount > 0) )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -209,6 +209,7 @@ Class PowerShield : UnrealArmor
|
|||
override void Tick()
|
||||
{
|
||||
Super.Tick();
|
||||
if ( sting_pshield && sting_pshield2 ) return;
|
||||
if ( !Owner || !Owner.player || (amount <= 0) ) return;
|
||||
if ( gothit )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -640,6 +640,12 @@ Class UBioRifle : UnrealWeapon
|
|||
}
|
||||
action void A_ChargeUp()
|
||||
{
|
||||
if ( Health <= 0 )
|
||||
{
|
||||
invoker.bCharging = false;
|
||||
player.SetPSprite(-9999,ResolveState("Null"));
|
||||
return;
|
||||
}
|
||||
let weap = Weapon(invoker);
|
||||
if ( (invoker.chargesize < 4.9) && (weap.Ammo1.Amount > 0) )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -143,6 +143,7 @@ Class UMinigun : UnrealWeapon
|
|||
return;
|
||||
}
|
||||
weap.bAltFire = !!(player.cmd.buttons&BT_ALTATTACK);
|
||||
invoker.bcnt = 5;
|
||||
A_Refire("Hold");
|
||||
}
|
||||
|
||||
|
|
@ -183,11 +184,12 @@ Class UMinigun : UnrealWeapon
|
|||
FireDummy:
|
||||
TNT1 A 1
|
||||
{
|
||||
if ( Health <= 0 ) return ResolveState("Null");
|
||||
let weap = Weapon(invoker);
|
||||
if ( !(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)) || (weap.Ammo1.Amount <= 0) )
|
||||
{
|
||||
A_StopSound(CHAN_WEAPON);
|
||||
if ( Health > 0 ) player.SetPSprite(PSP_WEAPON,invoker.FindState("Release"));
|
||||
player.SetPSprite(PSP_WEAPON,invoker.FindState("Release"));
|
||||
return ResolveState("Null");
|
||||
}
|
||||
return ResolveState(null);
|
||||
|
|
@ -197,7 +199,11 @@ Class UMinigun : UnrealWeapon
|
|||
AltFire:
|
||||
MGNW A 0 A_PlaySound("umini/wind",CHAN_WEAPON,Dampener.Active(self)?.1:1.);
|
||||
MGNW ABCDEFGHIJKLMNO 1;
|
||||
MGNW O 0 A_Refire(1);
|
||||
MGNW O 0
|
||||
{
|
||||
invoker.bcnt = 5;
|
||||
A_Refire(1);
|
||||
}
|
||||
Goto Release;
|
||||
Hold:
|
||||
MGNF A 0
|
||||
|
|
|
|||
|
|
@ -291,26 +291,31 @@ Class UTranslocator : UnrealWeapon
|
|||
TLCT ABCDEFGHI 5;
|
||||
Goto Idle+1;
|
||||
Fire:
|
||||
TLCF A 0 A_Overlay(-9999,"Null");
|
||||
TLCF A 0 A_JumpIf(invoker.module,"Recall");
|
||||
#### # 0 A_Overlay(-9999,"Null");
|
||||
#### # 0 A_JumpIf(invoker.module,"Recall");
|
||||
#### # 2;
|
||||
TLCF ABCDEF 2;
|
||||
TLCF G 0 A_ThrowModule();
|
||||
TLCF GHIJKLMNOPQRSTUVWXY 2;
|
||||
TLCF GHIJKLMNOPQRSTUV 2;
|
||||
TLCF WXY 2 A_WeaponReady();
|
||||
Goto Idle;
|
||||
Recall:
|
||||
#### # 2;
|
||||
TLCR ABCDEF 2;
|
||||
TLCR G 0 A_ReturnModule();
|
||||
TLCR GHIJKLM 2;
|
||||
Goto Idle;
|
||||
AltFire:
|
||||
TLCA A 0 A_Overlay(-9999,"Null");
|
||||
TLCA A 0 A_JumpIf(!invoker.module,"Reload");
|
||||
#### # 0 A_Overlay(-9999,"Null");
|
||||
#### # 0 A_JumpIf(!invoker.module,"Reload");
|
||||
#### # 2;
|
||||
TLCA ABCDE 2;
|
||||
TLCA A 0 A_Translocate();
|
||||
TLCA FGHIJKL 2;
|
||||
Goto Idle;
|
||||
Reload:
|
||||
TLCB A 0 A_Overlay(-9999,"Null");
|
||||
#### # 0 A_Overlay(-9999,"Null");
|
||||
#### # 2;
|
||||
TLCB ABCDEFGHIJKLMNOPQRSTUVWXYZ[\] 2;
|
||||
TLB2 AB 2;
|
||||
Goto Idle;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue