Trim beam length on impact for minimap.
This commit is contained in:
parent
46f9696b71
commit
2f6fdffb9a
5 changed files with 13 additions and 2 deletions
|
|
@ -1,3 +1,3 @@
|
||||||
[default]
|
[default]
|
||||||
SWWM_MODVER="\chSWWM \czGZ\c- \cw1.1.12 r1 \cu(Sun 3 Oct 22:31:00 CEST 2021)\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 r1 \cu(2021-10-03 22:31:00)\c-";
|
SWWM_SHORTVER="\cw1.1.12 r2 \cu(2021-10-03 22:42:28)\c-";
|
||||||
|
|
|
||||||
|
|
@ -722,6 +722,7 @@ Class YnykronBeam : Actor
|
||||||
{
|
{
|
||||||
// goodbye
|
// goodbye
|
||||||
nospread = true;
|
nospread = true;
|
||||||
|
speed = t.Results.Distance; // shortens in minimap
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ( t.Results.HitType != TRACE_HitNone )
|
if ( t.Results.HitType != TRACE_HitNone )
|
||||||
|
|
@ -819,6 +820,7 @@ Class YnykronBeam : Actor
|
||||||
YnykronShot(master).blastcount++;
|
YnykronShot(master).blastcount++;
|
||||||
}
|
}
|
||||||
nospread = true;
|
nospread = true;
|
||||||
|
speed = t.Results.Distance; // shortens in minimap
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ( ((special1%256) < speed) && !Random[Ynykron](0,20) )
|
if ( ((special1%256) < speed) && !Random[Ynykron](0,20) )
|
||||||
|
|
@ -1646,6 +1648,7 @@ Class YnykronLightningArc : Actor
|
||||||
}
|
}
|
||||||
invoker.nextpos = t.Results.HitPos;
|
invoker.nextpos = t.Results.HitPos;
|
||||||
bAMBUSH = true;
|
bAMBUSH = true;
|
||||||
|
speed = t.Results.Distance; // shortens in minimap
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
invoker.nextpos = level.Vec3Offset(pos,x*speed);
|
invoker.nextpos = level.Vec3Offset(pos,x*speed);
|
||||||
|
|
@ -2729,6 +2732,7 @@ Class YnykronAltBeam : Actor
|
||||||
{
|
{
|
||||||
// goodbye
|
// goodbye
|
||||||
nospread = true;
|
nospread = true;
|
||||||
|
speed = t.Results.Distance; // shortens in minimap
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ( t.Results.HitType != TRACE_HitNone )
|
if ( t.Results.HitType != TRACE_HitNone )
|
||||||
|
|
@ -2756,6 +2760,7 @@ Class YnykronAltBeam : Actor
|
||||||
b.angle = atan2(norm.y,norm.x);
|
b.angle = atan2(norm.y,norm.x);
|
||||||
b.pitch = asin(-norm.z);
|
b.pitch = asin(-norm.z);
|
||||||
nospread = true;
|
nospread = true;
|
||||||
|
speed = t.Results.Distance; // shortens in minimap
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ( special1 >= 25600 )
|
if ( special1 >= 25600 )
|
||||||
|
|
|
||||||
|
|
@ -535,6 +535,7 @@ Class SaltBeam : Actor
|
||||||
i.special2 = Accuracy;
|
i.special2 = Accuracy;
|
||||||
i.args[0] = args[1];
|
i.args[0] = args[1];
|
||||||
}
|
}
|
||||||
|
speed = t.Results.Distance; // shortens in minimap
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if ( (args[0] > 20) && !Random[Spreadgun](0,800/args[0]) )
|
else if ( (args[0] > 20) && !Random[Spreadgun](0,800/args[0]) )
|
||||||
|
|
|
||||||
|
|
@ -1165,6 +1165,7 @@ Class BiosparkBeam : Actor
|
||||||
if ( t.Results.HitType == TRACE_HasHitSky )
|
if ( t.Results.HitType == TRACE_HasHitSky )
|
||||||
{
|
{
|
||||||
bAMBUSH = true;
|
bAMBUSH = true;
|
||||||
|
speed = t.Results.Distance; // shortens in minimap
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ( t.Results.HitType != TRACE_HitNone )
|
if ( t.Results.HitType != TRACE_HitNone )
|
||||||
|
|
@ -1175,6 +1176,7 @@ Class BiosparkBeam : Actor
|
||||||
s.pitch = asin(-normal.z);
|
s.pitch = asin(-normal.z);
|
||||||
bAMBUSH = true;
|
bAMBUSH = true;
|
||||||
if ( swwm_omnibust ) BusterWall.Bust(t.Results,GetMissileDamage(0,0),target,t.Results.HitVector,t.Results.HitPos.z);
|
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;
|
return;
|
||||||
}
|
}
|
||||||
double closest = double.infinity;
|
double closest = double.infinity;
|
||||||
|
|
@ -1506,9 +1508,11 @@ Class BiosparkArc : Actor
|
||||||
normal *= 0;
|
normal *= 0;
|
||||||
}
|
}
|
||||||
invoker.nextpos = level.Vec3Offset(t.Results.HitPos,normal);
|
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 )
|
if ( t.Results.HitType == TRACE_HasHitSky )
|
||||||
{
|
{
|
||||||
bAMBUSH = true;
|
bAMBUSH = true;
|
||||||
|
speed = t.Results.Distance; // shortens in minimap
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
double a = FRandom[Sparkster](0,360), s = FRandom[Sparkster](0.,.8);
|
double a = FRandom[Sparkster](0,360), s = FRandom[Sparkster](0.,.8);
|
||||||
|
|
|
||||||
|
|
@ -136,6 +136,7 @@ Class CandyBeam : Actor
|
||||||
t.Results.HitPos = level.Vec3Offset(pos,x*speed);
|
t.Results.HitPos = level.Vec3Offset(pos,x*speed);
|
||||||
normal *= 0;
|
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);
|
double a = FRandom[Candy](0,360), s = FRandom[Candy](0.,.8);
|
||||||
invoker.nextpos = level.Vec3Offset(t.Results.HitPos,normal);
|
invoker.nextpos = level.Vec3Offset(t.Results.HitPos,normal);
|
||||||
invoker.nextdir = (dir+cos(a)*y*s+sin(a)*z*s).unit();
|
invoker.nextdir = (dir+cos(a)*y*s+sin(a)*z*s).unit();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue