Trim beam length on impact for minimap.

This commit is contained in:
Mari the Deer 2021-10-03 22:42:28 +02:00
commit 2f6fdffb9a
5 changed files with 13 additions and 2 deletions

View file

@ -1,3 +1,3 @@
[default]
SWWM_MODVER="\chSWWM \czGZ\c- \cw1.1.12 r1 \cu(Sun 3 Oct 22:31:00 CEST 2021)\c-";
SWWM_SHORTVER="\cw1.1.12 r1 \cu(2021-10-03 22:31:00)\c-";
SWWM_MODVER="\chSWWM \czGZ\c- \cw1.1.12 r2 \cu(Sun 3 Oct 22:42:28 CEST 2021)\c-";
SWWM_SHORTVER="\cw1.1.12 r2 \cu(2021-10-03 22:42:28)\c-";

View file

@ -722,6 +722,7 @@ Class YnykronBeam : Actor
{
// goodbye
nospread = true;
speed = t.Results.Distance; // shortens in minimap
return;
}
if ( t.Results.HitType != TRACE_HitNone )
@ -819,6 +820,7 @@ Class YnykronBeam : Actor
YnykronShot(master).blastcount++;
}
nospread = true;
speed = t.Results.Distance; // shortens in minimap
return;
}
if ( ((special1%256) < speed) && !Random[Ynykron](0,20) )
@ -1646,6 +1648,7 @@ Class YnykronLightningArc : Actor
}
invoker.nextpos = t.Results.HitPos;
bAMBUSH = true;
speed = t.Results.Distance; // shortens in minimap
return;
}
invoker.nextpos = level.Vec3Offset(pos,x*speed);
@ -2729,6 +2732,7 @@ Class YnykronAltBeam : Actor
{
// goodbye
nospread = true;
speed = t.Results.Distance; // shortens in minimap
return;
}
if ( t.Results.HitType != TRACE_HitNone )
@ -2756,6 +2760,7 @@ Class YnykronAltBeam : Actor
b.angle = atan2(norm.y,norm.x);
b.pitch = asin(-norm.z);
nospread = true;
speed = t.Results.Distance; // shortens in minimap
return;
}
if ( special1 >= 25600 )

View file

@ -535,6 +535,7 @@ Class SaltBeam : Actor
i.special2 = Accuracy;
i.args[0] = args[1];
}
speed = t.Results.Distance; // shortens in minimap
return;
}
else if ( (args[0] > 20) && !Random[Spreadgun](0,800/args[0]) )

View file

@ -1165,6 +1165,7 @@ Class BiosparkBeam : Actor
if ( t.Results.HitType == TRACE_HasHitSky )
{
bAMBUSH = true;
speed = t.Results.Distance; // shortens in minimap
return;
}
if ( t.Results.HitType != TRACE_HitNone )
@ -1175,6 +1176,7 @@ Class BiosparkBeam : Actor
s.pitch = asin(-normal.z);
bAMBUSH = true;
if ( swwm_omnibust ) BusterWall.Bust(t.Results,GetMissileDamage(0,0),target,t.Results.HitVector,t.Results.HitPos.z);
speed = t.Results.Distance; // shortens in minimap
return;
}
double closest = double.infinity;
@ -1506,9 +1508,11 @@ Class BiosparkArc : Actor
normal *= 0;
}
invoker.nextpos = level.Vec3Offset(t.Results.HitPos,normal);
if ( t.Results.HitType != TRACE_HitNone ) speed = t.Results.Distance; // shortens in minimap
if ( t.Results.HitType == TRACE_HasHitSky )
{
bAMBUSH = true;
speed = t.Results.Distance; // shortens in minimap
return;
}
double a = FRandom[Sparkster](0,360), s = FRandom[Sparkster](0.,.8);

View file

@ -136,6 +136,7 @@ Class CandyBeam : Actor
t.Results.HitPos = level.Vec3Offset(pos,x*speed);
normal *= 0;
}
if ( t.Results.HitType != TRACE_HitNone ) speed = t.Results.Distance; // shortens in minimap
double a = FRandom[Candy](0,360), s = FRandom[Candy](0.,.8);
invoker.nextpos = level.Vec3Offset(t.Results.HitPos,normal);
invoker.nextdir = (dir+cos(a)*y*s+sin(a)*z*s).unit();