Beta 5 Hotfix 1:

- Increased accuracy and damage of Betamag (10 → 14).
 - Slightly increased per-pellet damage of Quadshot (11 → 12).
 - Fixed Flamethrower alt refire not restarting the charge process, making it get stuck.
 - [flak_m] I seriously hope this is the last time I need to add even more safeguards to the FlakAccumulator class. It should be airtight now and never crash.
This commit is contained in:
Marisa the Magician 2019-10-03 01:27:27 +02:00
commit cfdbfaa2bf
3 changed files with 6 additions and 4 deletions

View file

@ -50,7 +50,7 @@ Class Betamag : UnrealWeapon
{
Weapon weap = Weapon(invoker);
if ( !weap || !player ) return;
if ( invoker.altaccuracy < 0.1 ) invoker.altaccuracy += 0.015;
if ( invoker.altaccuracy < 0.05 ) invoker.altaccuracy += 0.01;
if ( slave )
{
if ( weap.Ammo1.Amount <= 0 )
@ -172,14 +172,14 @@ Class Betamag : UnrealWeapon
int ydir = slave?-1:1;
if ( alt ) origin = level.Vec3Offset(origin,-z*2.5+ydir*y*1.5);
else origin = level.Vec3Offset(origin,-z*1.5+ydir*y*2);
double a = FRandom[Betamag](0,360), s = FRandom[Betamag](0,alt?invoker.altaccuracy:0.01);
double a = FRandom[Betamag](0,360), s = FRandom[Betamag](0,alt?invoker.altaccuracy:0.);
[x2, y2, z2] = dt_CoordUtil.GetAxes(BulletSlope(),angle,roll);
Vector3 dir = (x2+y2*cos(a)*s+z2*sin(a)*s).unit();
FLineTraceData d;
LineTrace(atan2(dir.y,dir.x),10000,asin(-dir.z),TRF_ABSPOSITION,origin.z,origin.x,origin.y,d);
if ( d.HitType == TRACE_HitActor )
{
int dmg = 10;
int dmg = 14;
dmg = d.HitActor.DamageMobj(invoker,self,dmg,'shot',DMG_USEANGLE|DMG_THRUSTLESS,atan2(d.HitDir.y,d.HitDir.x));
double mm = 3000;
if ( FRandom[Betamag](0,1) < 0.2 ) mm *= 5;

View file

@ -1025,6 +1025,8 @@ Class UFlamethrower : UnrealWeapon
GotoAltHold:
FLMA Y 0
{
invoker.bCharging = true;
A_BeginCharge();
player.SetPSprite(-2,ResolveState("FlameAltHold"));
}
Goto AltHold;

View file

@ -105,7 +105,7 @@ Class QuadShot : UnrealWeapon
{
for ( int i=0; i<t.HitList.Size(); i++ )
{
int dmg = 11;
int dmg = 12;
FlakAccumulator.Accumulate(t.HitList[i].HitActor,dmg,invoker,self,'shot');
double mm = 2400;
UTMainHandler.DoKnockback(t.HitList[i].HitActor,t.HitList[i].x+(0,0,0.025),mm*FRandom[Quadshot](0.4,1.2));