fix cbt divide by zero due to typo
This commit is contained in:
parent
2200bc061f
commit
6de152ebb7
2 changed files with 4 additions and 3 deletions
|
|
@ -1,2 +1,2 @@
|
|||
[default]
|
||||
SWWM_MODVER="\chSWWM \cwGZ\c- r379 (Tue 23 Jun 01:52:44 CEST 2020)";
|
||||
SWWM_MODVER="\chSWWM \cwGZ\c- r380 (Tue 23 Jun 08:57:22 CEST 2020)";
|
||||
|
|
|
|||
|
|
@ -600,18 +600,19 @@ Class BusterWall : Thinker
|
|||
if ( l.v1.p.x > b.x ) b.x = l.v1.p.x;
|
||||
if ( l.v2.p.x > b.x ) b.x = l.v2.p.x;
|
||||
if ( l.v1.p.y > b.y ) b.y = l.v1.p.y;
|
||||
if ( l.v2.p.y > b.y ) a.y = l.v2.p.y;
|
||||
if ( l.v2.p.y > b.y ) b.y = l.v2.p.y;
|
||||
}
|
||||
double girthitude = (b.x-a.x)*(b.y-a.y)*partheight;
|
||||
// do a grid check to approximate "real" volume, useful for diagonal doors
|
||||
double ystep = (b.y-a.y)/64.;
|
||||
double xstep = (b.x-a.x)/64.;
|
||||
int inspot = 0, allspot = 0;
|
||||
for ( double y=a.y; y<b.y; y+=ystep ) for ( double x=a.x; x<b.x; x+=xstep )
|
||||
for ( double y=a.y; y<=b.y; y+=ystep ) for ( double x=a.x; x<=b.x; x+=xstep )
|
||||
{
|
||||
allspot++;
|
||||
if ( level.PointInSector((x,y)) == hs ) inspot++;
|
||||
}
|
||||
if ( allspot <= 0 ) return; // what the fuck?
|
||||
girthitude = (girthitude*inspot)/allspot;
|
||||
// too fucking huge
|
||||
if ( (girthitude > 16777216) || (max(partheight,max(b.x-a.x,b.y-a.y)) > 1024) ) return;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue