Slightly increase buckshot damage per pellet so it's closer to vanilla.
Allow Wallbuster to shoot a constant number of pellets, rather than reducing them "for performance". Increase spread of Wallbuster based on number of barrels shot.
This commit is contained in:
parent
1b3b5ebb92
commit
2f5704c5df
3 changed files with 6 additions and 10 deletions
|
|
@ -260,20 +260,16 @@ Class Wallbuster : SWWMWeapon
|
|||
// the shooting
|
||||
if ( !st ) st = new("SpreadgunTracer");
|
||||
st.ignoreme = self;
|
||||
// attempt to uniformize expected damage while reducing traces (mainly for performance)
|
||||
int expecteddmg = 180;
|
||||
int numshot = max(21-howmany,5);
|
||||
int individualdmg = int(ceil(expecteddmg/double(numshot)));
|
||||
for ( int j=0; j<numshot; j++ )
|
||||
for ( int j=0; j<20; j++ )
|
||||
{
|
||||
a = FRandom[Wallbuster](0,360);
|
||||
s = FRandom[Wallbuster](0,.05);
|
||||
s = FRandom[Wallbuster](0,.05+.006*howmany);
|
||||
dir = SWWMUtility.ConeSpread(x2,y2,z2,a,s);
|
||||
st.hitlist.Clear();
|
||||
st.shootthroughlist.Clear();
|
||||
st.waterhitlist.Clear();
|
||||
st.Trace(origin,level.PointInSector(origin.xy),dir,8000.,TRACE_HitSky);
|
||||
ProcessTraceHit(st,origin,dir,individualdmg,7000,bc:5+howmany/6,(howmany>1));
|
||||
ProcessTraceHit(st,origin,dir,10,7000,bc:5+howmany/6,(howmany>1));
|
||||
}
|
||||
for ( int i=0; i<(16-howmany/2); i++ )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -329,7 +329,7 @@ Class Spreadgun : SWWMWeapon
|
|||
st.shootthroughlist.Clear();
|
||||
st.waterhitlist.Clear();
|
||||
st.Trace(origin,level.PointInSector(origin.xy),dir,8000.,TRACE_HitSky);
|
||||
ProcessTraceHit(st,origin,dir,9,7000,bc:5);
|
||||
ProcessTraceHit(st,origin,dir,10,7000,bc:5);
|
||||
}
|
||||
for ( int i=0; i<16; i++ )
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue