diff options
author | matthijs <matthijs@openttd.org> | 2005-02-06 22:36:08 +0000 |
---|---|---|
committer | matthijs <matthijs@openttd.org> | 2005-02-06 22:36:08 +0000 |
commit | c5c5c9b17c1c4fd543873f866534d3fa06f9f1cb (patch) | |
tree | b4e6f6fce72b1b3fcb2b25b635ad70c6bd5b6741 /ai.c | |
parent | eed181245dffbc04a2e527e8e7cccf44ce4fda86 (diff) | |
download | openttd-c5c5c9b17c1c4fd543873f866534d3fa06f9f1cb.tar.xz |
(svn r1834) - Fix: NPF does not check the owner of its target, busses try to enter other players' depots. TODO
- Add: asserts to find the v->u.rail.track == 0 problem.
- Add: IsValidDepot(), IsValidTown(), IsValidSign(), IsValidVehicle(), IsValidStation()
- Add: GetTileOwner(), IsTileOwner()
- Codechange: Replaced IsShipDepotTile(), IsTrainDepotTile(), IsRoadDepotTile() by IsTileDepotType().
- Codechange: typedeffed the MAP_OWNERS as Owner. Should be used as variable type.
- Codechange: Replaced a few uint by TileIndex.
Diffstat (limited to 'ai.c')
-rw-r--r-- | ai.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -284,7 +284,7 @@ static void AiHandleReplaceTrain(Player *p) uint tile; // wait until the vehicle reaches the depot. - if (!IsTrainDepotTile(v->tile) || v->u.rail.track != 0x80 || !(v->vehstatus&VS_STOPPED)) { + if (!IsTileDepotType(v->tile, TRANSPORT_RAIL) || v->u.rail.track != 0x80 || !(v->vehstatus&VS_STOPPED)) { AiHandleGotoDepot(p, CMD_TRAIN_GOTO_DEPOT); return; } @@ -312,7 +312,7 @@ static void AiHandleReplaceRoadVeh(Player *p) int veh; uint tile; - if (!IsRoadDepotTile(v->tile) || v->u.road.state != 254 || !(v->vehstatus&VS_STOPPED)) { + if (!IsTileDepotType(v->tile, TRANSPORT_ROAD) || v->u.road.state != 254 || !(v->vehstatus&VS_STOPPED)) { AiHandleGotoDepot(p, CMD_SEND_ROADVEH_TO_DEPOT); return; } @@ -3561,7 +3561,7 @@ static void AiStateSellVeh(Player *p) if (v->owner == _current_player) { if (v->type == VEH_Train) { - if (!IsTrainDepotTile(v->tile) || v->u.rail.track != 0x80 || !(v->vehstatus&VS_STOPPED)) { + if (!IsTileDepotType(v->tile, TRANSPORT_RAIL) || v->u.rail.track != 0x80 || !(v->vehstatus&VS_STOPPED)) { if (v->current_order.type != OT_GOTO_DEPOT) DoCommandByTile(0, v->index, 0, DC_EXEC, CMD_TRAIN_GOTO_DEPOT); goto going_to_depot; @@ -3571,7 +3571,7 @@ static void AiStateSellVeh(Player *p) DoCommandByTile(v->tile, v->index, 1, DC_EXEC, CMD_SELL_RAIL_WAGON); } else if (v->type == VEH_Road) { - if (!IsRoadDepotTile(v->tile) || v->u.road.state != 254 || !(v->vehstatus&VS_STOPPED)) { + if (!IsTileDepotType(v->tile, TRANSPORT_ROAD) || v->u.road.state != 254 || !(v->vehstatus&VS_STOPPED)) { if (v->current_order.type != OT_GOTO_DEPOT) DoCommandByTile(0, v->index, 0, DC_EXEC, CMD_SEND_ROADVEH_TO_DEPOT); goto going_to_depot; |