summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ai/default/default.c10
-rw-r--r--economy.c17
-rw-r--r--economy.h1
-rw-r--r--train_cmd.c21
-rw-r--r--vehicle.h1
5 files changed, 7 insertions, 43 deletions
diff --git a/ai/default/default.c b/ai/default/default.c
index 8257b0026..59227e32a 100644
--- a/ai/default/default.c
+++ b/ai/default/default.c
@@ -133,12 +133,16 @@ static int AiChooseTrainToBuild(byte railtype, int32 money, byte flag, TileIndex
const RailVehicleInfo *rvi = RailVehInfo(i);
const Engine* e = GetEngine(i);
- if (e->railtype != railtype || rvi->flags & RVI_WAGON
- || !HASBIT(e->player_avail, _current_player) || e->reliability < 0x8A3D)
+ if (e->railtype != railtype ||
+ rvi->flags & RVI_WAGON ||
+ (rvi->flags & RVI_MULTIHEAD && flag & 1) ||
+ !HASBIT(e->player_avail, _current_player) ||
+ e->reliability < 0x8A3D) {
continue;
+ }
ret = DoCommandByTile(tile, i, 0, 0, CMD_BUILD_RAIL_VEHICLE);
- if (!CmdFailed(ret) && (!(_cmd_build_rail_veh_var1&1) || !(flag&1)) && ret <= money &&
+ if (!CmdFailed(ret) && ret <= money &&
_cmd_build_rail_veh_score >= best_veh_score) {
best_veh_score = _cmd_build_rail_veh_score;
best_veh_index = i;
diff --git a/economy.c b/economy.c
index 2e2b45a22..514816146 100644
--- a/economy.c
+++ b/economy.c
@@ -1000,23 +1000,6 @@ static bool CheckSubsidyDuplicate(Subsidy *s)
return false;
}
-void RemoteSubsidyAdd(Subsidy *s_new)
-{
- Subsidy *s;
- Pair pair;
-
- // search the first free subsidy
- for(s=_subsidies; s != endof(_subsidies); s++)
- if (s->cargo_type == CT_INVALID)
- break;
-
- memcpy(s,s_new,sizeof(Subsidy));
-
- pair = SetupSubsidyDecodeParam(s, 0);
- AddNewsItem(STR_2030_SERVICE_SUBSIDY_OFFERED, NEWS_FLAGS(NM_NORMAL, NF_TILE, NT_SUBSIDIES, 0), pair.a, pair.b);
-
- InvalidateWindow(WC_SUBSIDIES_LIST, 0);
-}
static void SubsidyMonthlyHandler(void)
{
diff --git a/economy.h b/economy.h
index 02afd8075..404f5ded7 100644
--- a/economy.h
+++ b/economy.h
@@ -63,7 +63,6 @@ VARDEF Subsidy _subsidies[MAX_PLAYERS];
Pair SetupSubsidyDecodeParam(Subsidy *s, bool mode);
void DeleteSubsidyWithIndustry(uint16 index);
void DeleteSubsidyWithStation(uint16 index);
-void RemoteSubsidyAdd(Subsidy *s_new);
int32 GetTransportedGoodsIncome(uint num_pieces, uint dist, byte transit_days, byte cargo_type);
uint MoveGoodsToStation(TileIndex tile, int w, int h, int type, uint amount);
diff --git a/train_cmd.c b/train_cmd.c
index b643505c5..1e9603f95 100644
--- a/train_cmd.c
+++ b/train_cmd.c
@@ -498,24 +498,6 @@ static void NormalizeTrainVehInDepot(Vehicle *u)
}
}
-static const byte _railveh_unk1[] = {
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 1, 1, 0, 0, 0,
- 0, 0, 0, 0, 1, 0, 1, 0,
- 0, 1, 1, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 1,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,
-};
-
static const byte _railveh_score[] = {
1, 4, 7, 19, 20, 30, 31, 19,
20, 21, 22, 10, 11, 30, 31, 32,
@@ -590,8 +572,6 @@ int32 CmdBuildRailVehicle(int x, int y, uint32 flags, uint32 p1, uint32 p2)
if (!IsTileOwner(tile, _current_player)) return CMD_ERROR;
}
- _cmd_build_rail_veh_var1 = 0;
-
SET_EXPENSES_TYPE(EXPENSES_NEW_VEHICLES);
rvi = RailVehInfo(p1);
@@ -676,7 +656,6 @@ int32 CmdBuildRailVehicle(int x, int y, uint32 flags, uint32 p1, uint32 p2)
InvalidateWindow(WC_COMPANY, v->owner);
}
}
- _cmd_build_rail_veh_var1 = _railveh_unk1[p1];
_cmd_build_rail_veh_score = _railveh_score[p1];
InvalidateWindow(WC_REPLACE_VEHICLE, VEH_Train); // updates the replace Train window
diff --git a/vehicle.h b/vehicle.h
index c61a672f0..443e0773b 100644
--- a/vehicle.h
+++ b/vehicle.h
@@ -447,7 +447,6 @@ VARDEF VehicleID _new_ship_id;
VARDEF VehicleID _new_roadveh_id;
VARDEF uint16 _aircraft_refit_capacity;
VARDEF byte _cmd_build_rail_veh_score;
-VARDEF byte _cmd_build_rail_veh_var1;
// for each player, for each vehicle type, keep a list of the vehicles.
//VARDEF Vehicle *_vehicle_arr[8][4];