A radius of 1 can cause projectiles to clip through walls.
This commit is contained in:
parent
837fde6de1
commit
2b1687b0f8
7 changed files with 22 additions and 21 deletions
|
|
@ -1,3 +1,3 @@
|
|||
[default]
|
||||
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r503 \cu(Sat 22 May 18:56:41 CEST 2021)\c-";
|
||||
SWWM_SHORTVER="\cw0.9.11b-pre r503 \cu(2021-05-22 18:56:41)\c-";
|
||||
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r505 \cu(Sun 23 May 10:32:23 CEST 2021)\c-";
|
||||
SWWM_SHORTVER="\cw0.9.11b-pre r505 \cu(2021-05-23 10:32:23)\c-";
|
||||
|
|
|
|||
|
|
@ -1291,8 +1291,8 @@ Class LampMoth : Actor
|
|||
Default
|
||||
{
|
||||
Tag "$T_MOTH";
|
||||
Radius 1;
|
||||
Height 2;
|
||||
Radius 2;
|
||||
Height 4;
|
||||
Speed 2;
|
||||
DamageFunction 1;
|
||||
MeleeRange 16;
|
||||
|
|
|
|||
|
|
@ -1119,8 +1119,8 @@ Class InvisibleSplasher : Actor
|
|||
{
|
||||
Mass 100;
|
||||
VSpeed -2;
|
||||
Radius 1;
|
||||
Height 2;
|
||||
Radius 2;
|
||||
Height 4;
|
||||
+NOBLOCKMAP; // needed to prevent infinite loops with some 3D floor water (yes, you read that right)
|
||||
FloatBobPhase 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,8 +10,8 @@ Class SWWMCasing : Actor abstract
|
|||
|
||||
Default
|
||||
{
|
||||
Radius 1;
|
||||
Height 2;
|
||||
Radius 2;
|
||||
Height 4;
|
||||
+NOBLOCKMAP;
|
||||
+MISSILE;
|
||||
+DROPOFF;
|
||||
|
|
|
|||
|
|
@ -145,8 +145,8 @@ Class EvisceratorChunk : Actor
|
|||
Default
|
||||
{
|
||||
Obituary "$O_EVISCERATOR";
|
||||
Radius 1;
|
||||
Height 2;
|
||||
Radius 2;
|
||||
Height 4;
|
||||
Speed 50;
|
||||
DamageFunction int(clamp((vel.length()-8)*.2+max(0,1.-lifetime)*2.,0,15));
|
||||
DamageType 'shot';
|
||||
|
|
@ -236,7 +236,7 @@ Class EvisceratorChunk : Actor
|
|||
|
||||
void A_HandleBounce()
|
||||
{
|
||||
Vector3 HitNormal = -vel.unit();
|
||||
Vector3 HitNormal = (0,0,0);
|
||||
F3DFloor ff;
|
||||
if ( BlockingFloor )
|
||||
{
|
||||
|
|
@ -275,6 +275,7 @@ Class EvisceratorChunk : Actor
|
|||
Vector3 diff = level.Vec3Diff(BlockingMobj.Vec3Offset(0,0,BlockingMobj.Height/2),pos);
|
||||
HitNormal = diff.unit();
|
||||
}
|
||||
else if ( vel.length() > 0. ) HitNormal = vel.unit();
|
||||
if ( swwm_omnibust ) BusterWall.ProjectileBust(self,GetMissileDamage(0,0),oldvel.unit());
|
||||
// undo the bounce, we need to hook in our own
|
||||
vel = oldvel;
|
||||
|
|
@ -288,8 +289,8 @@ Class EvisceratorChunk : Actor
|
|||
if ( (vel.length() > 20) && !Random[Eviscerator](0,2) )
|
||||
{
|
||||
let l = Spawn("ChunkImpact",pos);
|
||||
l.angle = atan2(HitNormal.y,HitNormal.x);
|
||||
l.pitch = asin(-HitNormal.z);
|
||||
l.angle = atan2(RealHitNormal.y,RealHitNormal.x);
|
||||
l.pitch = asin(-RealHitNormal.z);
|
||||
A_StartSound("eviscerator/hith",CHAN_WEAPON,CHANF_OVERLAP,.5);
|
||||
}
|
||||
A_Gravity();
|
||||
|
|
|
|||
|
|
@ -1146,8 +1146,8 @@ Class TheBall : Actor
|
|||
Speed 80;
|
||||
Gravity 0.1;
|
||||
BounceFactor 1.0;
|
||||
Radius 1;
|
||||
Height 2;
|
||||
Radius 2;
|
||||
Height 4;
|
||||
}
|
||||
override String GetObituary( Actor victim, Actor inflictor, Name mod, bool playerattack )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -388,8 +388,8 @@ Class BigBiospark : Actor
|
|||
DamageType "Plasma";
|
||||
RenderStyle "Add";
|
||||
Health 1200;
|
||||
Radius 1;
|
||||
Height 2;
|
||||
Radius 2;
|
||||
Height 4;
|
||||
Speed 1;
|
||||
BounceFactor 1.;
|
||||
WallBounceFactor 1.;
|
||||
|
|
@ -432,8 +432,8 @@ Class BiosparkBall : Actor
|
|||
Obituary "$O_SPARKSTER";
|
||||
DamageType "Plasma";
|
||||
RenderStyle "Add";
|
||||
Radius 1;
|
||||
Height 2;
|
||||
Radius 2;
|
||||
Height 4;
|
||||
Speed 20;
|
||||
PROJECTILE;
|
||||
+FOILINVUL;
|
||||
|
|
@ -1730,8 +1730,8 @@ Class BiosparkCore : Actor
|
|||
Gravity .1;
|
||||
BounceFactor 1.;
|
||||
WallBounceFactor 1.;
|
||||
Radius 1;
|
||||
Height 2;
|
||||
Radius 2;
|
||||
Height 4;
|
||||
ReactionTime 25;
|
||||
}
|
||||
override void PostBeginPlay()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue