Add (back) fog of war to the other radar modes. Stop radar from changing size when
changing mode. Closes ticket:1372 git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9058 4a71c877-e1ca-e34f-864e-861f7616d084master
parent
ada555a8d0
commit
7b63597be1
|
@ -2678,8 +2678,6 @@ void kf_ToggleRadarTerrain(void)
|
||||||
assert(false);
|
assert(false);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
resetRadarRedraw();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
42
src/radar.c
42
src/radar.c
|
@ -289,31 +289,30 @@ static PIELIGHT appliedRadarColour(RADAR_DRAW_MODE radarDrawMode, MAPTILE *WTile
|
||||||
{
|
{
|
||||||
PIELIGHT WScr = WZCOL_BLACK; // squelch warning
|
PIELIGHT WScr = WZCOL_BLACK; // squelch warning
|
||||||
|
|
||||||
|
// draw radar terrain on/off feature
|
||||||
|
if ((getRevealStatus() || radarDrawMode == RADAR_MODE_TERRAIN_SEEN) && !TEST_TILE_VISIBLE(selectedPlayer, WTile))
|
||||||
|
{
|
||||||
|
return WZCOL_RADAR_BACKGROUND;
|
||||||
|
}
|
||||||
|
|
||||||
switch(radarDrawMode)
|
switch(radarDrawMode)
|
||||||
{
|
{
|
||||||
case RADAR_MODE_TERRAIN:
|
case RADAR_MODE_TERRAIN:
|
||||||
case RADAR_MODE_TERRAIN_SEEN:
|
case RADAR_MODE_TERRAIN_SEEN:
|
||||||
{
|
{
|
||||||
if ((getRevealStatus() || radarDrawMode == RADAR_MODE_TERRAIN_SEEN) && !TEST_TILE_VISIBLE(selectedPlayer, WTile))
|
// draw radar terrain on/off feature
|
||||||
{
|
PIELIGHT col = tileColours[TileNumber_tile(WTile->texture)];
|
||||||
WScr = WZCOL_RADAR_BACKGROUND;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// draw radar terrain on/off feature
|
|
||||||
PIELIGHT col = tileColours[TileNumber_tile(WTile->texture)];
|
|
||||||
|
|
||||||
col.byte.r = sqrtf(col.byte.r * WTile->illumination);
|
col.byte.r = sqrtf(col.byte.r * WTile->illumination);
|
||||||
col.byte.b = sqrtf(col.byte.b * WTile->illumination);
|
col.byte.b = sqrtf(col.byte.b * WTile->illumination);
|
||||||
col.byte.g = sqrtf(col.byte.g * WTile->illumination);
|
col.byte.g = sqrtf(col.byte.g * WTile->illumination);
|
||||||
if (!hasSensorOnTile(WTile, selectedPlayer))
|
if (!hasSensorOnTile(WTile, selectedPlayer))
|
||||||
{
|
{
|
||||||
col.byte.r /= 2;
|
col.byte.r /= 2;
|
||||||
col.byte.b /= 2;
|
col.byte.b /= 2;
|
||||||
col.byte.g /= 2;
|
col.byte.g /= 2;
|
||||||
}
|
|
||||||
WScr = col;
|
|
||||||
}
|
}
|
||||||
|
WScr = col;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case RADAR_MODE_COMBINED:
|
case RADAR_MODE_COMBINED:
|
||||||
|
@ -324,12 +323,17 @@ static PIELIGHT appliedRadarColour(RADAR_DRAW_MODE radarDrawMode, MAPTILE *WTile
|
||||||
col.byte.r = sqrtf(col.byte.r * (WTile->illumination + WTile->height) / 2);
|
col.byte.r = sqrtf(col.byte.r * (WTile->illumination + WTile->height) / 2);
|
||||||
col.byte.b = sqrtf(col.byte.b * (WTile->illumination + WTile->height) / 2);
|
col.byte.b = sqrtf(col.byte.b * (WTile->illumination + WTile->height) / 2);
|
||||||
col.byte.g = sqrtf(col.byte.g * (WTile->illumination + WTile->height) / 2);
|
col.byte.g = sqrtf(col.byte.g * (WTile->illumination + WTile->height) / 2);
|
||||||
|
if (!hasSensorOnTile(WTile, selectedPlayer))
|
||||||
|
{
|
||||||
|
col.byte.r /= 2;
|
||||||
|
col.byte.b /= 2;
|
||||||
|
col.byte.g /= 2;
|
||||||
|
}
|
||||||
WScr = col;
|
WScr = col;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case RADAR_MODE_HEIGHT_MAP:
|
case RADAR_MODE_HEIGHT_MAP:
|
||||||
{
|
{
|
||||||
// draw radar terrain on/off feature
|
|
||||||
WScr.byte.r = WScr.byte.g = WScr.byte.b = WTile->height;
|
WScr.byte.r = WScr.byte.g = WScr.byte.b = WTile->height;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue