- do not use global variables to track state in the decal code.

Setups like this have caused problems in the past so best get rid of it.
This commit is contained in:
Christoph Oelckers 2018-12-29 11:48:28 +01:00
commit 3fbc55a8dd
4 changed files with 44 additions and 40 deletions

View file

@ -9,6 +9,7 @@ struct vertex_t;
struct side_t;
struct F3DFloor;
class DBaseDecal;
struct SpreadInfo;
class DBaseDecal *ShootDecal(const FDecalTemplate *tpl, AActor *basisactor, sector_t *sec, double x, double y, double z, DAngle angle, double tracedist, bool permanent);
void SprayDecal(AActor *shooter, const char *name,double distance = 172.);
@ -52,8 +53,8 @@ protected:
void CalcFracPos(side_t *wall, double x, double y);
void Remove ();
static void SpreadLeft (double r, vertex_t *v1, side_t *feelwall, F3DFloor *ffloor);
static void SpreadRight (double r, side_t *feelwall, double wallsize, F3DFloor *ffloor);
static void SpreadLeft (double r, vertex_t *v1, side_t *feelwall, F3DFloor *ffloor, SpreadInfo *spread);
static void SpreadRight (double r, side_t *feelwall, double wallsize, F3DFloor *ffloor, SpreadInfo *spread);
};
class DImpactDecal : public DBaseDecal