mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-06 14:27:16 +00:00
(svn r2658) -Codechange: Use MAKE_TRANSPARENT to display a transparented sprite
This commit is contained in:
parent
18a93cca3d
commit
85f06d6e7b
@ -1,6 +1,7 @@
|
||||
#include "stdafx.h"
|
||||
#include "openttd.h"
|
||||
#include "table/strings.h"
|
||||
#include "table/sprites.h"
|
||||
#include "map.h"
|
||||
#include "tile.h"
|
||||
#include "viewport.h"
|
||||
@ -370,7 +371,7 @@ static void DrawTile_Industry(TileInfo *ti)
|
||||
image |= ormod;
|
||||
|
||||
if (_display_opt & DO_TRANS_BUILDINGS)
|
||||
image = (image & 0x3FFF) | 0x3224000;
|
||||
MAKE_TRANSPARENT(image);
|
||||
|
||||
AddSortableSpriteToDraw(image,
|
||||
ti->x | (dits->subtile_xy>>4),
|
||||
|
@ -1352,7 +1352,7 @@ static void DrawSpecialBuilding(uint32 image, uint32 tracktype_offs,
|
||||
image |= _drawtile_track_palette;
|
||||
image += tracktype_offs;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) // show transparent depots
|
||||
image = (image & 0x3FFF) | 0x3224000;
|
||||
MAKE_TRANSPARENT(image);
|
||||
AddSortableSpriteToDraw(image, ti->x + x, ti->y + y, xsize, ysize, zsize, ti->z + z);
|
||||
}
|
||||
|
||||
|
@ -874,7 +874,7 @@ static void DrawTile_Road(TileInfo *ti)
|
||||
if (image & 0x8000)
|
||||
image |= ormod;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) // show transparent depots
|
||||
image = (image & 0x3FFF) | 0x3224000;
|
||||
MAKE_TRANSPARENT(image);
|
||||
|
||||
AddSortableSpriteToDraw(image, ti->x | drss->subcoord_x,
|
||||
ti->y | drss->subcoord_y, drss->width, drss->height, 0x14, ti->z);
|
||||
|
@ -2188,7 +2188,7 @@ static void DrawTile_Station(TileInfo *ti)
|
||||
image = dtss->image + relocation;
|
||||
image += type_offset;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) {
|
||||
image = (image & 0x3FFF) | 0x03224000;
|
||||
MAKE_TRANSPARENT(image);
|
||||
} else {
|
||||
if (image&0x8000) image |= image_or_modificator;
|
||||
}
|
||||
|
@ -2,6 +2,7 @@
|
||||
#include "openttd.h"
|
||||
#include "strings.h"
|
||||
#include "table/strings.h"
|
||||
#include "table/sprites.h"
|
||||
#include "map.h"
|
||||
#include "tile.h"
|
||||
#include "viewport.h"
|
||||
@ -117,7 +118,7 @@ static void DrawTile_Town(TileInfo *ti)
|
||||
/* Add a house on top of the ground? */
|
||||
if ((image = dcts->sprite_2) != 0) {
|
||||
if (_display_opt & DO_TRANS_BUILDINGS)
|
||||
image = (image & 0x3FFF) | 0x3224000;
|
||||
MAKE_TRANSPARENT(image);
|
||||
|
||||
AddSortableSpriteToDraw(image,
|
||||
ti->x + dcts->subtile_x,
|
||||
|
@ -1,6 +1,7 @@
|
||||
#include "stdafx.h"
|
||||
#include "openttd.h"
|
||||
#include "table/strings.h"
|
||||
#include "table/sprites.h"
|
||||
#include "table/tree_land.h"
|
||||
#include "map.h"
|
||||
#include "tile.h"
|
||||
@ -302,7 +303,7 @@ static void DrawTile_Trees(TileInfo *ti)
|
||||
do {
|
||||
uint32 image = s[0] + (--i == 0 ? (ti->map5 & 7) : 3);
|
||||
if (_display_opt & DO_TRANS_BUILDINGS)
|
||||
image = (image & 0x3FFF) | 0x3224000;
|
||||
MAKE_TRANSPARENT(image);
|
||||
te[i].image = image;
|
||||
te[i].x = d[0];
|
||||
te[i].y = d[1];
|
||||
|
@ -959,7 +959,7 @@ static void DrawBridgePillars(TileInfo *ti, int x, int y, int z)
|
||||
image = b[12 + (ti->map5&0x01)];
|
||||
piece = _m[ti->tile].m2&0xF;
|
||||
if (image != 0 && piece != 0) {
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) image = (image & 0x3FFF) | 0x03224000;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) MAKE_TRANSPARENT(image);
|
||||
DrawGroundSpriteAt(image, x, y, z);
|
||||
}
|
||||
|
||||
@ -976,7 +976,7 @@ static void DrawBridgePillars(TileInfo *ti, int x, int y, int z)
|
||||
{2,4,8,1, 11,16,9,0},
|
||||
};
|
||||
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) image = (image & 0x3FFF) | 0x03224000;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) MAKE_TRANSPARENT(image);
|
||||
|
||||
p = _tileh_bits[(image & 1) * 2 + (ti->map5&0x01)];
|
||||
front_height = ti->z + ((ti->tileh & p[0])?8:0);
|
||||
@ -1070,7 +1070,7 @@ static void DrawTile_TunnelBridge(TileInfo *ti)
|
||||
}
|
||||
|
||||
// draw ramp
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) image = (image & 0x3FFF) | 0x03224000;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) MAKE_TRANSPARENT(image);
|
||||
AddSortableSpriteToDraw(image, ti->x, ti->y, 16, 16, 7, ti->z);
|
||||
} else {
|
||||
// bridge middle part.
|
||||
@ -1121,13 +1121,13 @@ static void DrawTile_TunnelBridge(TileInfo *ti)
|
||||
|
||||
// draw rail
|
||||
image = b[0];
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) image = (image & 0x3FFF) | 0x03224000;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) MAKE_TRANSPARENT(image);
|
||||
AddSortableSpriteToDraw(image, ti->x, ti->y, (ti->map5&1)?11:16, (ti->map5&1)?16:11, 1, z);
|
||||
|
||||
x = ti->x;
|
||||
y = ti->y;
|
||||
image = b[1];
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) image = (image & 0x3FFF) | 0x03224000;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) MAKE_TRANSPARENT(image);
|
||||
|
||||
// draw roof
|
||||
if (ti->map5&1) {
|
||||
@ -1142,7 +1142,7 @@ static void DrawTile_TunnelBridge(TileInfo *ti)
|
||||
// draw poles below for small bridges
|
||||
image = b[2];
|
||||
if (image) {
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) image = (image & 0x3FFF) | 0x03224000;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) MAKE_TRANSPARENT(image);
|
||||
DrawGroundSpriteAt(image, x, y, z);
|
||||
}
|
||||
} else if (_patches.bridge_pillars) {
|
||||
|
@ -1,6 +1,7 @@
|
||||
#include "stdafx.h"
|
||||
#include "openttd.h"
|
||||
#include "table/strings.h"
|
||||
#include "table/sprites.h"
|
||||
#include "map.h"
|
||||
#include "tile.h"
|
||||
#include "command.h"
|
||||
@ -125,7 +126,7 @@ static void DrawTile_Unmovable(TileInfo *ti)
|
||||
image = PLAYER_SPRITE_COLOR(GetTileOwner(ti->tile));
|
||||
image += 0x8A48;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS)
|
||||
image = (image & 0x3FFF) | 0x3224000;
|
||||
MAKE_TRANSPARENT(image);
|
||||
AddSortableSpriteToDraw(image, ti->x, ti->y, 16, 16, 25, ti->z);
|
||||
} else if (ti->map5 == 3) {
|
||||
|
||||
@ -151,7 +152,7 @@ static void DrawTile_Unmovable(TileInfo *ti)
|
||||
|
||||
image = dtus->image;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS)
|
||||
image = (image & 0x3FFF) | 0x3224000;
|
||||
MAKE_TRANSPARENT(image);
|
||||
|
||||
AddSortableSpriteToDraw(image,
|
||||
ti->x | dtus->subcoord_x,
|
||||
@ -173,7 +174,7 @@ static void DrawTile_Unmovable(TileInfo *ti)
|
||||
foreach_draw_tile_seq(dtss, t->seq) {
|
||||
image = dtss->image;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) {
|
||||
image = (image & 0x3FFF) | 0x03224000;
|
||||
MAKE_TRANSPARENT(image);
|
||||
} else {
|
||||
image |= ormod;
|
||||
}
|
||||
|
@ -559,7 +559,7 @@ static void DoDrawVehicle(Vehicle *v)
|
||||
uint32 image = v->cur_image;
|
||||
|
||||
if (v->vehstatus & VS_DISASTER) {
|
||||
image |= 0x3224000;
|
||||
MAKE_TRANSPARENT(image);
|
||||
} else if (v->vehstatus & VS_DEFPAL) {
|
||||
image |= (v->vehstatus & VS_CRASHED) ? PALETTE_CRASH : SPRITE_PALETTE(PLAYER_SPRITE_COLOR(v->owner));
|
||||
}
|
||||
|
@ -391,7 +391,7 @@ static void DrawWaterStuff(TileInfo *ti, const WaterDrawTileStruct *wdts,
|
||||
for (; wdts->delta_x != 0x80; wdts++) {
|
||||
image = wdts->image + base;
|
||||
if (_display_opt & DO_TRANS_BUILDINGS) {
|
||||
image = (image & 0x3FFF) | 0x03224000;
|
||||
MAKE_TRANSPARENT(image);
|
||||
} else {
|
||||
image |= palette;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user