(svn r3787) Use DirToDiagDir() instead of >> 1

This commit is contained in:
tron 2006-03-08 08:28:48 +00:00
parent 03536a32a1
commit 2181a72e9e
5 changed files with 6 additions and 6 deletions

View File

@ -656,7 +656,7 @@ static void DisasterTick_5_and_6(Vehicle *v)
if (!(v->tick_counter&1)) if (!(v->tick_counter&1))
return; return;
tile = v->tile + TileOffsByDir(v->direction >> 1); tile = v->tile + TileOffsByDir(DirToDiagDir(v->direction));
if (IsValidTile(tile) && if (IsValidTile(tile) &&
(r=GetTileTrackStatus(tile,TRANSPORT_WATER),(byte)(r+(r >> 8)) == 0x3F) && (r=GetTileTrackStatus(tile,TRANSPORT_WATER),(byte)(r+(r >> 8)) == 0x3F) &&
!CHANCE16(1,90)) { !CHANCE16(1,90)) {

View File

@ -918,7 +918,7 @@ static void RoadVehCheckOvertake(Vehicle *v, Vehicle *u)
od.tile = v->tile; od.tile = v->tile;
if (FindRoadVehToOvertake(&od)) return; if (FindRoadVehToOvertake(&od)) return;
od.tile = v->tile + TileOffsByDir(v->direction >> 1); od.tile = v->tile + TileOffsByDir(DirToDiagDir(v->direction));
if (FindRoadVehToOvertake(&od)) return; if (FindRoadVehToOvertake(&od)) return;
if (od.u->cur_speed == 0 || od.u->vehstatus&VS_STOPPED) { if (od.u->cur_speed == 0 || od.u->vehstatus&VS_STOPPED) {

View File

@ -2177,7 +2177,7 @@ static uint32 VehicleEnter_Station(Vehicle *v, TileIndex tile, int x, int y)
{ {
if (v->type == VEH_Train) { if (v->type == VEH_Train) {
if (IS_BYTE_INSIDE(_m[tile].m5, 0, 8) && IsFrontEngine(v) && if (IS_BYTE_INSIDE(_m[tile].m5, 0, 8) && IsFrontEngine(v) &&
!IsCompatibleTrainStationTile(tile + TileOffsByDir(v->direction >> 1), tile)) { !IsCompatibleTrainStationTile(tile + TileOffsByDir(DirToDiagDir(v->direction)), tile)) {
StationID station_id = _m[tile].m2; StationID station_id = _m[tile].m2;
if ((!(v->current_order.flags & OF_NON_STOP) && !_patches.new_nonstop) || if ((!(v->current_order.flags & OF_NON_STOP) && !_patches.new_nonstop) ||

View File

@ -2172,7 +2172,7 @@ static bool CheckReverseTrain(Vehicle *v)
assert(v->u.rail.track); assert(v->u.rail.track);
i = _search_directions[FIND_FIRST_BIT(v->u.rail.track)][v->direction>>1]; i = _search_directions[FIND_FIRST_BIT(v->u.rail.track)][DirToDiagDir(v->direction)];
if (_patches.new_pathfinding_all) { /* Use a new pathfinding for everything */ if (_patches.new_pathfinding_all) { /* Use a new pathfinding for everything */
NPFFindStationOrTileData fstd; NPFFindStationOrTileData fstd;

View File

@ -1960,7 +1960,7 @@ Trackdir GetVehicleTrackdir(const Vehicle* v)
return DiagdirToDiagTrackdir(GetDepotDirection(v->tile, TRANSPORT_RAIL)); /* Train in depot */ return DiagdirToDiagTrackdir(GetDepotDirection(v->tile, TRANSPORT_RAIL)); /* Train in depot */
if (v->u.rail.track == 0x40) /* train in tunnel, so just use his direction and assume a diagonal track */ if (v->u.rail.track == 0x40) /* train in tunnel, so just use his direction and assume a diagonal track */
return DiagdirToDiagTrackdir((v->direction >> 1) & 3); return DiagdirToDiagTrackdir(DirToDiagDir(v->direction));
return TrackDirectionToTrackdir(FIND_FIRST_BIT(v->u.rail.track),v->direction); return TrackDirectionToTrackdir(FIND_FIRST_BIT(v->u.rail.track),v->direction);
@ -1978,7 +1978,7 @@ Trackdir GetVehicleTrackdir(const Vehicle* v)
if (IsRoadStationTile(v->tile)) /* We'll assume the road vehicle is facing outwards */ if (IsRoadStationTile(v->tile)) /* We'll assume the road vehicle is facing outwards */
return DiagdirToDiagTrackdir(GetRoadStationDir(v->tile)); /* Road vehicle in a station */ return DiagdirToDiagTrackdir(GetRoadStationDir(v->tile)); /* Road vehicle in a station */
return DiagdirToDiagTrackdir((v->direction >> 1) & 3); return DiagdirToDiagTrackdir(DirToDiagDir(v->direction));
/* case VEH_Aircraft: case VEH_Special: case VEH_Disaster: */ /* case VEH_Aircraft: case VEH_Special: case VEH_Disaster: */
default: return 0xFF; default: return 0xFF;