Mortal Rifle cluster shot mode implemented.
This commit is contained in:
parent
502f9fc495
commit
8f04064672
8 changed files with 217 additions and 13 deletions
|
|
@ -244,6 +244,7 @@ Class Wallbuster : SWWMWeapon
|
|||
let p = Spawn(impact,t.HitList[i].HitLocation);
|
||||
p.angle = atan2(t.HitList[i].x.y,t.HitList[i].x.x)+180;
|
||||
p.pitch = asin(t.HitList[i].x.z);
|
||||
p.target = self;
|
||||
p.special1 = max(0,(bc-5)/4);
|
||||
}
|
||||
else
|
||||
|
|
@ -276,6 +277,7 @@ Class Wallbuster : SWWMWeapon
|
|||
let p = Spawn(impact,t.Results.HitPos+hitnormal*4);
|
||||
p.angle = atan2(hitnormal.y,hitnormal.x);
|
||||
p.pitch = asin(-hitnormal.z);
|
||||
p.target = self;
|
||||
p.special1 = max(0,(bc-5)/4);
|
||||
if ( t.Results.HitType == TRACE_HitFloor ) p.CheckSplash(40);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -318,6 +318,7 @@ Class Spreadgun : SWWMWeapon
|
|||
let p = Spawn(impact,t.HitList[i].HitLocation);
|
||||
p.angle = atan2(t.HitList[i].x.y,t.HitList[i].x.x)+180;
|
||||
p.pitch = asin(t.HitList[i].x.z);
|
||||
p.target = self;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -348,6 +349,7 @@ Class Spreadgun : SWWMWeapon
|
|||
let p = Spawn(impact,t.Results.HitPos+hitnormal*4);
|
||||
p.angle = atan2(hitnormal.y,hitnormal.x);
|
||||
p.pitch = asin(-hitnormal.z);
|
||||
p.target = self;
|
||||
if ( t.Results.HitType == TRACE_HitFloor ) p.CheckSplash(40);
|
||||
if ( t.Results.HitLine ) t.Results.HitLine.RemoteActivate(self,t.Results.Side,SPAC_Impact,t.Results.HitPos);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -113,6 +113,7 @@ Class ExplodiumGun : SWWMWeapon
|
|||
let p = Spawn("SWWMBulletImpact",d.HitLocation);
|
||||
p.angle = atan2(d.HitDir.y,d.HitDir.x)+180;
|
||||
p.pitch = asin(d.HitDir.z);
|
||||
p.target = self;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -146,6 +147,7 @@ Class ExplodiumGun : SWWMWeapon
|
|||
let p = Spawn("SWWMBulletImpact",d.HitLocation+hitnormal*0.01);
|
||||
p.angle = atan2(hitnormal.y,hitnormal.x);
|
||||
p.pitch = asin(-hitnormal.z);
|
||||
p.target = self;
|
||||
if ( d.HitLine ) d.HitLine.RemoteActivate(self,d.LineSide,SPAC_Impact,d.HitLocation);
|
||||
let b = Spawn("ExplodiumBulletImpact",d.HitLocation+hitnormal*4.);
|
||||
b.angle = atan2(hitnormal.y,hitnormal.x);
|
||||
|
|
@ -657,6 +659,7 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
let p = Spawn("SWWMBulletImpact",d.HitLocation);
|
||||
p.angle = atan2(d.HitDir.y,d.HitDir.x)+180;
|
||||
p.pitch = asin(d.HitDir.z);
|
||||
p.target = self;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -690,6 +693,7 @@ Class DualExplodiumGun : SWWMWeapon
|
|||
let p = Spawn("SWWMBulletImpact",d.HitLocation+hitnormal*0.01);
|
||||
p.angle = atan2(hitnormal.y,hitnormal.x);
|
||||
p.pitch = asin(-hitnormal.z);
|
||||
p.target = self;
|
||||
if ( d.HitLine ) d.HitLine.RemoteActivate(self,d.LineSide,SPAC_Impact,d.HitLocation);
|
||||
let b = Spawn("ExplodiumBulletImpact",d.HitLocation+hitnormal*4.);
|
||||
b.angle = atan2(hitnormal.y,hitnormal.x);
|
||||
|
|
|
|||
|
|
@ -154,6 +154,7 @@ Class CandyGun : SWWMWeapon
|
|||
let p = Spawn("SWWMBulletImpact",d.HitLocation);
|
||||
p.angle = atan2(d.HitDir.y,d.HitDir.x)+180;
|
||||
p.pitch = asin(d.HitDir.z);
|
||||
p.target = self;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -186,6 +187,7 @@ Class CandyGun : SWWMWeapon
|
|||
let p = Spawn("SWWMBulletImpact",d.HitLocation+hitnormal*0.01);
|
||||
p.angle = atan2(hitnormal.y,hitnormal.x);
|
||||
p.pitch = asin(-hitnormal.z);
|
||||
p.target = self;
|
||||
if ( d.HitLine ) d.HitLine.RemoteActivate(self,d.LineSide,SPAC_Impact,d.HitLocation);
|
||||
let b = Spawn("CandyBulletImpact",d.HitLocation+hitnormal*4.);
|
||||
b.angle = atan2(hitnormal.y,hitnormal.x);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue