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-861f7616d084
master
Per Inge Mathisen 2010-01-08 13:49:23 +00:00 committed by Git SVN Gateway
parent ada555a8d0
commit 7b63597be1
2 changed files with 23 additions and 21 deletions

View File

@ -2678,8 +2678,6 @@ void kf_ToggleRadarTerrain(void)
assert(false); assert(false);
break; break;
} }
resetRadarRedraw();
} }

View File

@ -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;