mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2025-01-29 20:50:58 +00:00
Merge branch 'colormap-overhaul' into colormap-overhaul-change-ldef
This commit is contained in:
commit
9170174768
4 changed files with 13 additions and 13 deletions
14
src/r_bsp.c
14
src/r_bsp.c
|
@ -925,11 +925,11 @@ static void R_Subsector(size_t num)
|
|||
light = R_GetPlaneLight(frontsector, floorcenterz, false);
|
||||
if (frontsector->floorlightsec == -1)
|
||||
floorlightlevel = *frontsector->lightlist[light].lightlevel;
|
||||
floorcolormap = frontsector->lightlist[light].extra_colormap;
|
||||
floorcolormap = *frontsector->lightlist[light].extra_colormap;
|
||||
light = R_GetPlaneLight(frontsector, ceilingcenterz, false);
|
||||
if (frontsector->ceilinglightsec == -1)
|
||||
ceilinglightlevel = *frontsector->lightlist[light].lightlevel;
|
||||
ceilingcolormap = frontsector->lightlist[light].extra_colormap;
|
||||
ceilingcolormap = *frontsector->lightlist[light].extra_colormap;
|
||||
}
|
||||
|
||||
sub->sector->extra_colormap = frontsector->extra_colormap;
|
||||
|
@ -1026,7 +1026,7 @@ static void R_Subsector(size_t num)
|
|||
|
||||
ffloor[numffloors].plane = R_FindPlane(*rover->bottomheight, *rover->bottompic,
|
||||
*frontsector->lightlist[light].lightlevel, *rover->bottomxoffs,
|
||||
*rover->bottomyoffs, *rover->bottomangle, frontsector->lightlist[light].extra_colormap, rover
|
||||
*rover->bottomyoffs, *rover->bottomangle, *frontsector->lightlist[light].extra_colormap, rover
|
||||
#ifdef POLYOBJECTS_PLANES
|
||||
, NULL
|
||||
#endif
|
||||
|
@ -1072,7 +1072,7 @@ static void R_Subsector(size_t num)
|
|||
|
||||
ffloor[numffloors].plane = R_FindPlane(*rover->topheight, *rover->toppic,
|
||||
*frontsector->lightlist[light].lightlevel, *rover->topxoffs, *rover->topyoffs, *rover->topangle,
|
||||
frontsector->lightlist[light].extra_colormap, rover
|
||||
*frontsector->lightlist[light].extra_colormap, rover
|
||||
#ifdef POLYOBJECTS_PLANES
|
||||
, NULL
|
||||
#endif
|
||||
|
@ -1264,7 +1264,7 @@ void R_Prep3DFloors(sector_t *sector)
|
|||
#endif
|
||||
sector->lightlist[0].lightlevel = §or->lightlevel;
|
||||
sector->lightlist[0].caster = NULL;
|
||||
sector->lightlist[0].extra_colormap = sector->extra_colormap;
|
||||
sector->lightlist[0].extra_colormap = §or->extra_colormap;
|
||||
sector->lightlist[0].flags = 0;
|
||||
|
||||
maxheight = INT32_MAX;
|
||||
|
@ -1339,12 +1339,12 @@ void R_Prep3DFloors(sector_t *sector)
|
|||
else if (best->flags & FF_COLORMAPONLY)
|
||||
{
|
||||
sector->lightlist[i].lightlevel = sector->lightlist[i-1].lightlevel;
|
||||
sector->lightlist[i].extra_colormap = sec->extra_colormap;
|
||||
sector->lightlist[i].extra_colormap = &sec->extra_colormap;
|
||||
}
|
||||
else
|
||||
{
|
||||
sector->lightlist[i].lightlevel = best->toplightlevel;
|
||||
sector->lightlist[i].extra_colormap = sec->extra_colormap;
|
||||
sector->lightlist[i].extra_colormap = &sec->extra_colormap;
|
||||
}
|
||||
|
||||
if (best->flags & FF_DOUBLESHADOW)
|
||||
|
|
|
@ -194,7 +194,7 @@ typedef struct lightlist_s
|
|||
{
|
||||
fixed_t height;
|
||||
INT16 *lightlevel;
|
||||
extracolormap_t *extra_colormap;
|
||||
extracolormap_t **extra_colormap; // pointer-to-a-pointer, so we can react to colormap changes
|
||||
INT32 flags;
|
||||
ffloor_t *caster;
|
||||
#ifdef ESLOPE
|
||||
|
|
|
@ -413,7 +413,7 @@ void R_RenderMaskedSegRange(drawseg_t *ds, INT32 x1, INT32 x2)
|
|||
#endif
|
||||
rlight->startheight = rlight->height; // keep starting value here to reset for each repeat
|
||||
rlight->lightlevel = *light->lightlevel;
|
||||
rlight->extra_colormap = light->extra_colormap;
|
||||
rlight->extra_colormap = *light->extra_colormap;
|
||||
rlight->flags = light->flags;
|
||||
|
||||
if (rlight->flags & FF_FOG || (rlight->extra_colormap && rlight->extra_colormap->fog))
|
||||
|
@ -944,7 +944,7 @@ void R_RenderThickSideRange(drawseg_t *ds, INT32 x1, INT32 x2, ffloor_t *pfloor)
|
|||
}
|
||||
|
||||
rlight->lightlevel = *light->lightlevel;
|
||||
rlight->extra_colormap = light->extra_colormap;
|
||||
rlight->extra_colormap = *light->extra_colormap;
|
||||
|
||||
// Check if the current light effects the colormap/lightlevel
|
||||
if (pfloor->flags & FF_FOG)
|
||||
|
@ -2808,7 +2808,7 @@ void R_StoreWallRange(INT32 start, INT32 stop)
|
|||
}
|
||||
|
||||
rlight->lightlevel = *light->lightlevel;
|
||||
rlight->extra_colormap = light->extra_colormap;
|
||||
rlight->extra_colormap = *light->extra_colormap;
|
||||
p++;
|
||||
}
|
||||
|
||||
|
|
|
@ -981,7 +981,7 @@ static void R_SplitSprite(vissprite_t *sprite)
|
|||
else
|
||||
spritelights = scalelight[lightnum];
|
||||
|
||||
newsprite->extra_colormap = sector->lightlist[i].extra_colormap;
|
||||
newsprite->extra_colormap = *sector->lightlist[i].extra_colormap;
|
||||
|
||||
if (!((newsprite->cut & SC_FULLBRIGHT)
|
||||
&& (!newsprite->extra_colormap || !(newsprite->extra_colormap->fog & 1))))
|
||||
|
@ -1360,7 +1360,7 @@ static void R_ProjectSprite(mobj_t *thing)
|
|||
vis->sz = (INT16)((centeryfrac - FixedMul(vis->gz - viewz, sortscale))>>FRACBITS);
|
||||
vis->cut = cut;
|
||||
if (thing->subsector->sector->numlights)
|
||||
vis->extra_colormap = thing->subsector->sector->lightlist[light].extra_colormap;
|
||||
vis->extra_colormap = *thing->subsector->sector->lightlist[light].extra_colormap;
|
||||
else
|
||||
vis->extra_colormap = thing->subsector->sector->extra_colormap;
|
||||
|
||||
|
|
Loading…
Reference in a new issue