mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-01-22 07:06:01 +00:00
(svn r1730) - Fix: Ships and Aircrafts have to be build in depots owned by _current_player (hacked client protection)
now all 4 types of vehicles have to be build in depots. Note: there is a wordaround for AI players since the AI handle aircraft building in a weird way
This commit is contained in:
parent
961ba55e85
commit
307c27892d
@ -163,6 +163,11 @@ int32 CmdBuildAircraft(int x, int y, uint32 flags, uint32 p1, uint32 p2)
|
||||
|
||||
if (!IsEngineBuildable(p1, VEH_Aircraft)) return CMD_ERROR;
|
||||
|
||||
// Workaround: TODO: make AI players try to build planes in a hangar instead of just an airport tile.
|
||||
if (!IsAircraftHangarTile((TileIndex)tile) && IS_HUMAN_PLAYER(_current_player)) return CMD_ERROR;
|
||||
|
||||
if (_map_owner[tile] != _current_player) return CMD_ERROR;
|
||||
|
||||
SET_EXPENSES_TYPE(EXPENSES_NEW_VEHICLES);
|
||||
|
||||
value = EstimateAircraftCost(p1);
|
||||
|
@ -841,6 +841,10 @@ int32 CmdBuildShip(int x, int y, uint32 flags, uint32 p1, uint32 p2)
|
||||
|
||||
if (!IsEngineBuildable(p1, VEH_Ship)) return CMD_ERROR;
|
||||
|
||||
if (!IsShipDepotTile((TileIndex)tile)) return CMD_ERROR;
|
||||
|
||||
if (_map_owner[tile] != _current_player) return CMD_ERROR;
|
||||
|
||||
SET_EXPENSES_TYPE(EXPENSES_NEW_VEHICLES);
|
||||
|
||||
value = EstimateShipCost(p1);
|
||||
|
Loading…
Reference in New Issue
Block a user