mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-04-25 19:43:22 +00:00
Fix bitflags enum spritecut_e for C++
This commit is contained in:
parent
ac8d0e7758
commit
d73a42cf02
2 changed files with 38 additions and 40 deletions
|
|
@ -1008,7 +1008,7 @@ static void R_DrawVisSprite(vissprite_t *vis)
|
|||
vis->scale = FixedMul(vis->scale, this_scale);
|
||||
vis->scalestep = FixedMul(vis->scalestep, this_scale);
|
||||
vis->xiscale = FixedDiv(vis->xiscale,this_scale);
|
||||
vis->cut = static_cast<spritecut_e>(vis->cut | SC_ISSCALED);
|
||||
vis->cut |= SC_ISSCALED;
|
||||
}
|
||||
dc.texturemid = FixedDiv(dc.texturemid,this_scale);
|
||||
}
|
||||
|
|
@ -1246,9 +1246,9 @@ static void R_SplitSprite(vissprite_t *sprite)
|
|||
// adjust the heights.
|
||||
newsprite = static_cast<vissprite_t*>(M_Memcpy(R_NewVisSprite(), sprite, sizeof (vissprite_t)));
|
||||
|
||||
newsprite->cut = static_cast<spritecut_e>(newsprite->cut | (sprite->cut & SC_FLAGMASK));
|
||||
newsprite->cut |= sprite->cut & SC_FLAGMASK;
|
||||
|
||||
sprite->cut = static_cast<spritecut_e>(sprite->cut | SC_BOTTOM);
|
||||
sprite->cut |= SC_BOTTOM;
|
||||
sprite->gz = testheight;
|
||||
|
||||
newsprite->gzt = sprite->gz;
|
||||
|
|
@ -1258,7 +1258,7 @@ static void R_SplitSprite(vissprite_t *sprite)
|
|||
|
||||
newsprite->szt -= 8;
|
||||
|
||||
newsprite->cut = static_cast<spritecut_e>(newsprite->cut | SC_TOP);
|
||||
newsprite->cut |= SC_TOP;
|
||||
if (!(sector->lightlist[i].caster->fofflags & FOF_NOSHADE))
|
||||
{
|
||||
lightnum = (*sector->lightlist[i].lightlevel >> LIGHTSEGSHIFT);
|
||||
|
|
@ -1521,7 +1521,7 @@ static void R_ProjectDropShadow(
|
|||
shadow->sector = vis->sector;
|
||||
shadow->szt = (INT16)((centeryfrac - FixedMul(shadow->gzt - viewz, yscale))>>FRACBITS);
|
||||
shadow->sz = (INT16)((centeryfrac - FixedMul(shadow->gz - viewz, yscale))>>FRACBITS);
|
||||
shadow->cut = static_cast<spritecut_e>(SC_ISSCALED|SC_SHADOW); //check this
|
||||
shadow->cut = SC_ISSCALED|SC_SHADOW; //check this
|
||||
|
||||
shadow->startfrac = 0;
|
||||
//shadow->xiscale = 0x7ffffff0 / (shadow->xscale/2);
|
||||
|
|
@ -1966,7 +1966,7 @@ static void R_ProjectSprite(mobj_t *thing)
|
|||
if (rotsprite != NULL)
|
||||
{
|
||||
patch = rotsprite;
|
||||
cut = static_cast<spritecut_e>(cut | SC_ISROTATED);
|
||||
cut |= SC_ISROTATED;
|
||||
|
||||
spr_width = rotsprite->width << FRACBITS;
|
||||
spr_height = rotsprite->height << FRACBITS;
|
||||
|
|
@ -2214,7 +2214,7 @@ static void R_ProjectSprite(mobj_t *thing)
|
|||
fixed_t jitters = HITLAGJITTERS;
|
||||
if (R_UsingFrameInterpolation() && !paused)
|
||||
jitters += (rendertimefrac / HITLAGDIV);
|
||||
|
||||
|
||||
fixed_t mul = thing->hitlag * jitters;
|
||||
|
||||
if (leveltime & 1)
|
||||
|
|
@ -2247,7 +2247,7 @@ static void R_ProjectSprite(mobj_t *thing)
|
|||
dispoffset *= -1; // if it's physically behind, make sure it's ordered behind (if dispoffset > 0)
|
||||
|
||||
sortscale = linkscale; // now make sure it's linked
|
||||
cut = static_cast<spritecut_e>(cut | SC_LINKDRAW);
|
||||
cut |= SC_LINKDRAW;
|
||||
}
|
||||
else if (splat)
|
||||
{
|
||||
|
|
@ -2336,7 +2336,7 @@ static void R_ProjectSprite(mobj_t *thing)
|
|||
gzt = (isflipped ? (interp.z + thing->height) : interp.z) + patch->height * spriteyscale / 2;
|
||||
gz = gzt - patch->height * spriteyscale;
|
||||
|
||||
cut = static_cast<spritecut_e>(cut | SC_SHEAR);
|
||||
cut |= SC_SHEAR;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2567,11 +2567,11 @@ static void R_ProjectSprite(mobj_t *thing)
|
|||
vis->transmap = R_GetBlendTable(blendmode, trans);
|
||||
|
||||
if (R_ThingIsSemiBright(oldthing))
|
||||
vis->cut = static_cast<spritecut_e>(vis->cut | SC_SEMIBRIGHT);
|
||||
vis->cut |= SC_SEMIBRIGHT;
|
||||
else if (R_ThingIsFullBright(oldthing))
|
||||
vis->cut = static_cast<spritecut_e>(vis->cut | SC_FULLBRIGHT);
|
||||
vis->cut |= SC_FULLBRIGHT;
|
||||
else if (R_ThingIsFullDark(oldthing))
|
||||
vis->cut = static_cast<spritecut_e>(vis->cut | SC_FULLDARK);
|
||||
vis->cut |= SC_FULLDARK;
|
||||
|
||||
//
|
||||
// determine the colormap (lightlevel & special effects)
|
||||
|
|
@ -2600,9 +2600,9 @@ static void R_ProjectSprite(mobj_t *thing)
|
|||
}
|
||||
|
||||
if (vflip)
|
||||
vis->cut = static_cast<spritecut_e>(vis->cut | SC_VFLIP);
|
||||
vis->cut |= SC_VFLIP;
|
||||
if (splat)
|
||||
vis->cut = static_cast<spritecut_e>(vis->cut | SC_SPLAT); // I like ya cut g
|
||||
vis->cut |= SC_SPLAT; // I like ya cut g
|
||||
|
||||
vis->patch = patch;
|
||||
vis->bright = R_CacheSpriteBrightMap(sprinfo, frame);
|
||||
|
|
@ -3685,7 +3685,7 @@ void R_ClipVisSprite(vissprite_t *spr, INT32 x1, INT32 x2, portal_t* portal)
|
|||
|
||||
if (xclip == x)
|
||||
{
|
||||
spr->cut = static_cast<spritecut_e>(spr->cut | SC_CULL); // completely skip this sprite going forward
|
||||
spr->cut |= SC_CULL; // completely skip this sprite going forward
|
||||
}
|
||||
else if (portal)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -132,31 +132,29 @@ void R_DrawMasked(maskcount_t* masks, INT32 nummasks);
|
|||
#define VISSPRITESPERCHUNK (1 << VISSPRITECHUNKBITS)
|
||||
#define VISSPRITEINDEXMASK (VISSPRITESPERCHUNK - 1)
|
||||
|
||||
typedef enum
|
||||
{
|
||||
// actual cuts
|
||||
SC_NONE = 0,
|
||||
SC_TOP = 1,
|
||||
SC_BOTTOM = 1<<1,
|
||||
// other flags
|
||||
SC_PRECIP = 1<<2,
|
||||
SC_LINKDRAW = 1<<3,
|
||||
SC_FULLBRIGHT = 1<<4,
|
||||
SC_FULLDARK = 1<<5,
|
||||
SC_VFLIP = 1<<6,
|
||||
SC_ISSCALED = 1<<7,
|
||||
SC_ISROTATED = 1<<8,
|
||||
SC_SHADOW = 1<<9,
|
||||
SC_SHEAR = 1<<10,
|
||||
SC_SPLAT = 1<<11,
|
||||
// srb2kart
|
||||
SC_SEMIBRIGHT = 1<<12,
|
||||
SC_BBOX = 1<<13,
|
||||
SC_CULL = 1<<14,
|
||||
// masks
|
||||
SC_CUTMASK = SC_TOP|SC_BOTTOM,
|
||||
SC_FLAGMASK = ~SC_CUTMASK
|
||||
} spritecut_e;
|
||||
typedef INT32 spritecut_e;
|
||||
// actual cuts
|
||||
#define SC_NONE (0)
|
||||
#define SC_TOP (1)
|
||||
#define SC_BOTTOM (1<<1)
|
||||
// other flags
|
||||
#define SC_PRECIP (1<<2)
|
||||
#define SC_LINKDRAW (1<<3)
|
||||
#define SC_FULLBRIGHT (1<<4)
|
||||
#define SC_FULLDARK (1<<5)
|
||||
#define SC_VFLIP (1<<6)
|
||||
#define SC_ISSCALED (1<<7)
|
||||
#define SC_ISROTATED (1<<8)
|
||||
#define SC_SHADOW (1<<9)
|
||||
#define SC_SHEAR (1<<10)
|
||||
#define SC_SPLAT (1<<11)
|
||||
// srb2kart
|
||||
#define SC_SEMIBRIGHT (1<<12)
|
||||
#define SC_BBOX (1<<13)
|
||||
#define SC_CULL (1<<14)
|
||||
// masks
|
||||
#define SC_CUTMASK (SC_TOP|SC_BOTTOM)
|
||||
#define SC_FLAGMASK (~SC_CUTMASK)
|
||||
|
||||
// A vissprite_t is a thing that will be drawn during a refresh,
|
||||
// i.e. a sprite object that is partly visible.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue