1
0
Fork 0

(svn r3983) Use existing functions to access tree and road info

release/0.5
tron 2006-03-19 16:57:48 +00:00
parent 85da306049
commit 7b21893adb
2 changed files with 6 additions and 8 deletions

View File

@ -269,7 +269,6 @@ int32 CmdBuildSingleRail(int x, int y, uint32 flags, uint32 p1, uint32 p2)
{ {
TileIndex tile; TileIndex tile;
uint tileh; uint tileh;
uint m5; /* XXX: Used only as a cache, should probably be removed? */
Track track = (Track)p2; Track track = (Track)p2;
TrackBits trackbit; TrackBits trackbit;
int32 cost = 0; int32 cost = 0;
@ -279,7 +278,6 @@ int32 CmdBuildSingleRail(int x, int y, uint32 flags, uint32 p1, uint32 p2)
tile = TileVirtXY(x, y); tile = TileVirtXY(x, y);
tileh = GetTileSlope(tile, NULL); tileh = GetTileSlope(tile, NULL);
m5 = _m[tile].m5;
trackbit = TrackToTrackBits(track); trackbit = TrackToTrackBits(track);
SET_EXPENSES_TYPE(EXPENSES_CONSTRUCTION); SET_EXPENSES_TYPE(EXPENSES_CONSTRUCTION);
@ -326,7 +324,7 @@ int32 CmdBuildSingleRail(int x, int y, uint32 flags, uint32 p1, uint32 p2)
if (flags & DC_EXEC) { if (flags & DC_EXEC) {
_m[tile].m2 &= ~RAIL_MAP2LO_GROUND_MASK; // Bare land _m[tile].m2 &= ~RAIL_MAP2LO_GROUND_MASK; // Bare land
_m[tile].m5 = m5 | trackbit; _m[tile].m5 |= trackbit;
} }
break; break;
@ -341,8 +339,8 @@ int32 CmdBuildSingleRail(int x, int y, uint32 flags, uint32 p1, uint32 p2)
if (!EnsureNoVehicle(tile)) return CMD_ERROR; if (!EnsureNoVehicle(tile)) return CMD_ERROR;
if (GetRoadType(tile) == ROAD_NORMAL && ( if (GetRoadType(tile) == ROAD_NORMAL && (
(track == TRACK_X && m5 == ROAD_Y) || (track == TRACK_X && GetRoadBits(tile) == ROAD_Y) ||
(track == TRACK_Y && m5 == ROAD_X) // correct direction? (track == TRACK_Y && GetRoadBits(tile) == ROAD_X)
)) { )) {
if (flags & DC_EXEC) { if (flags & DC_EXEC) {
MakeRoadCrossing(tile, GetTileOwner(tile), _current_player, (track == TRACK_X ? AXIS_Y : AXIS_X), p1, _m[tile].m2); MakeRoadCrossing(tile, GetTileOwner(tile), _current_player, (track == TRACK_X ? AXIS_Y : AXIS_X), p1, _m[tile].m2);

View File

@ -286,9 +286,9 @@ static void DrawTile_Trees(TileInfo *ti)
uint i; uint i;
/* put the trees to draw in a list */ /* put the trees to draw in a list */
i = (ti->map5 >> 6) + 1; i = GetTreeCount(ti->tile) + 1;
do { do {
uint32 image = s[0] + (--i == 0 ? GB(ti->map5, 0, 3) : 3); uint32 image = s[0] + (--i == 0 ? GetTreeGrowth(ti->tile) : 3);
if (_display_opt & DO_TRANS_BUILDINGS) MAKE_TRANSPARENT(image); if (_display_opt & DO_TRANS_BUILDINGS) MAKE_TRANSPARENT(image);
te[i].image = image; te[i].image = image;
te[i].x = d->x; te[i].x = d->x;
@ -302,7 +302,7 @@ static void DrawTile_Trees(TileInfo *ti)
byte min = 0xFF; byte min = 0xFF;
TreeListEnt *tep = NULL; TreeListEnt *tep = NULL;
i = (ti->map5 >> 6) + 1; i = GetTreeCount(ti->tile) + 1;
do { do {
if (te[--i].image != 0 && te[i].x + te[i].y < min) { if (te[--i].image != 0 && te[i].x + te[i].y < min) {
min = te[i].x + te[i].y; min = te[i].x + te[i].y;