OpenTTD Source: src/command_type.h File Reference

OpenTTD Source 15.3

Data Structures | Macros | Typedefs | Enumerations | Functions
command_type.h File Reference

Types related to commands. More...

`#include "company_type.h"`
`#include "economy_type.h"`
`#include "strings_type.h"`
`#include "tile_type.h"`

Go to the source code of this file.

## Data Structures
class | CommandCost
| Common return value for all commands. More...
struct | CommandFunctionTraitHelper< CommandCost(*)(DoCommandFlags, Targs...)>
struct | CommandFunctionTraitHelper< Tret< CommandCost, Tretargs... >(*)(DoCommandFlags, Targs...)>

## Macros
#define | DEF_CMD_TRAIT(cmd_, proc_, flags_, type_)

## Typedefs
using | DoCommandFlags = EnumBitSet< DoCommandFlag, uint16_t >
using | CommandFlags = EnumBitSet< CommandFlag, uint16_t >
typedef std::vector< uint8_t > | CommandDataBuffer
| Storage buffer for serialized command data.
typedef void | CommandCallback(Commands cmd, const CommandCost &result, TileIndex tile)
| Define a callback function for the client, after the command is finished.
typedef void | CommandCallbackData(Commands cmd, const CommandCost &result, const CommandDataBuffer &data, CommandDataBuffer result_data)
| Define a callback function for the client, after the command is finished.

## Enumerations
enum | Commands : uint8_t { CMD_BUILD_RAILROAD_TRACK , CMD_REMOVE_RAILROAD_TRACK , CMD_BUILD_SINGLE_RAIL , CMD_REMOVE_SINGLE_RAIL , CMD_LANDSCAPE_CLEAR , CMD_BUILD_BRIDGE , CMD_BUILD_RAIL_STATION , CMD_BUILD_TRAIN_DEPOT , CMD_BUILD_SINGLE_SIGNAL , CMD_REMOVE_SINGLE_SIGNAL , CMD_TERRAFORM_LAND , CMD_BUILD_OBJECT , CMD_BUILD_OBJECT_AREA , CMD_BUILD_TUNNEL , CMD_REMOVE_FROM_RAIL_STATION , CMD_CONVERT_RAIL , CMD_BUILD_RAIL_WAYPOINT , CMD_RENAME_WAYPOINT , CMD_MOVE_WAYPOINT_NAME , CMD_REMOVE_FROM_RAIL_WAYPOINT , CMD_BUILD_ROAD_WAYPOINT , CMD_REMOVE_FROM_ROAD_WAYPOINT , CMD_BUILD_ROAD_STOP , CMD_REMOVE_ROAD_STOP , CMD_BUILD_LONG_ROAD , CMD_REMOVE_LONG_ROAD , CMD_BUILD_ROAD , CMD_BUILD_ROAD_DEPOT , CMD_CONVERT_ROAD , CMD_BUILD_AIRPORT , CMD_BUILD_DOCK , CMD_BUILD_SHIP_DEPOT , CMD_BUILD_BUOY , CMD_PLANT_TREE , CMD_BUILD_VEHICLE , CMD_SELL_VEHICLE , CMD_REFIT_VEHICLE , CMD_SEND_VEHICLE_TO_DEPOT , CMD_SET_VEHICLE_VISIBILITY , CMD_MOVE_RAIL_VEHICLE , CMD_FORCE_TRAIN_PROCEED , CMD_REVERSE_TRAIN_DIRECTION , CMD_CLEAR_ORDER_BACKUP , CMD_MODIFY_ORDER , CMD_SKIP_TO_ORDER , CMD_DELETE_ORDER , CMD_INSERT_ORDER , CMD_CHANGE_SERVICE_INT , CMD_BUILD_INDUSTRY , CMD_INDUSTRY_SET_FLAGS , CMD_INDUSTRY_SET_EXCLUSIVITY , CMD_INDUSTRY_SET_TEXT , CMD_INDUSTRY_SET_PRODUCTION , CMD_SET_COMPANY_MANAGER_FACE , CMD_SET_COMPANY_COLOUR , CMD_INCREASE_LOAN , CMD_DECREASE_LOAN , CMD_SET_COMPANY_MAX_LOAN , CMD_WANT_ENGINE_PREVIEW , CMD_ENGINE_CTRL , CMD_RENAME_VEHICLE , CMD_RENAME_ENGINE , CMD_RENAME_COMPANY , CMD_RENAME_PRESIDENT , CMD_RENAME_STATION , CMD_MOVE_STATION_NAME , CMD_RENAME_DEPOT , CMD_PLACE_SIGN , CMD_RENAME_SIGN , CMD_MOVE_SIGN , CMD_TURN_ROADVEH , CMD_PAUSE , CMD_BUY_COMPANY , CMD_FOUND_TOWN , CMD_RENAME_TOWN , CMD_DO_TOWN_ACTION , CMD_TOWN_CARGO_GOAL , CMD_TOWN_GROWTH_RATE , CMD_TOWN_RATING , CMD_TOWN_SET_TEXT , CMD_EXPAND_TOWN , CMD_DELETE_TOWN , CMD_PLACE_HOUSE , CMD_ORDER_REFIT , CMD_CLONE_ORDER , CMD_CLEAR_AREA , CMD_MONEY_CHEAT , CMD_CHANGE_BANK_BALANCE , CMD_BUILD_CANAL , CMD_CREATE_SUBSIDY , CMD_COMPANY_CTRL , CMD_COMPANY_ALLOW_LIST_CTRL , CMD_CUSTOM_NEWS_ITEM , CMD_CREATE_GOAL , CMD_REMOVE_GOAL , CMD_SET_GOAL_DESTINATION , CMD_SET_GOAL_TEXT , CMD_SET_GOAL_PROGRESS , CMD_SET_GOAL_COMPLETED , CMD_GOAL_QUESTION , CMD_GOAL_QUESTION_ANSWER , CMD_CREATE_STORY_PAGE , CMD_CREATE_STORY_PAGE_ELEMENT , CMD_UPDATE_STORY_PAGE_ELEMENT , CMD_SET_STORY_PAGE_TITLE , CMD_SET_STORY_PAGE_DATE , CMD_SHOW_STORY_PAGE , CMD_REMOVE_STORY_PAGE , CMD_REMOVE_STORY_PAGE_ELEMENT , CMD_SCROLL_VIEWPORT , CMD_STORY_PAGE_BUTTON , CMD_LEVEL_LAND , CMD_BUILD_LOCK , CMD_BUILD_SIGNAL_TRACK , CMD_REMOVE_SIGNAL_TRACK , CMD_GIVE_MONEY , CMD_CHANGE_SETTING , CMD_CHANGE_COMPANY_SETTING , CMD_SET_AUTOREPLACE , CMD_CLONE_VEHICLE , CMD_START_STOP_VEHICLE , CMD_MASS_START_STOP , CMD_AUTOREPLACE_VEHICLE , CMD_DEPOT_SELL_ALL_VEHICLES , CMD_DEPOT_MASS_AUTOREPLACE , CMD_CREATE_GROUP , CMD_DELETE_GROUP , CMD_ALTER_GROUP , CMD_ADD_VEHICLE_GROUP , CMD_ADD_SHARED_VEHICLE_GROUP , CMD_REMOVE_ALL_VEHICLES_GROUP , CMD_SET_GROUP_FLAG , CMD_SET_GROUP_LIVERY , CMD_MOVE_ORDER , CMD_CHANGE_TIMETABLE , CMD_BULK_CHANGE_TIMETABLE , CMD_SET_VEHICLE_ON_TIME , CMD_AUTOFILL_TIMETABLE , CMD_SET_TIMETABLE_START , CMD_OPEN_CLOSE_AIRPORT , CMD_CREATE_LEAGUE_TABLE , CMD_CREATE_LEAGUE_TABLE_ELEMENT , CMD_UPDATE_LEAGUE_TABLE_ELEMENT_DATA , CMD_UPDATE_LEAGUE_TABLE_ELEMENT_SCORE , CMD_REMOVE_LEAGUE_TABLE_ELEMENT , CMD_END }
| List of commands. More...
enum class | DoCommandFlag : uint8_t { Execute , Auto , QueryCost , NoWater , NoTestTownRating , Bankrupt , AutoReplace , NoCargoCapacityCheck , AllTiles , NoModifyTownRating , ForceClearTile }
| List of flags for a command. More...
enum class | CommandFlag : uint8_t { Server , Spectator , Offline , Auto , AllTiles , NoTest , NoWater , ClientID , Deity , StrCtrl , NoEst , Location }
| Command flags for the command table _command_proc_table. More...
enum class | CommandType : uint8_t { LandscapeConstruction , VehicleConstruction , MoneyManagement , VehicleManagement , RouteManagement , OtherManagement , CompanySetting , ServerSetting , Cheat , End }
| Types of commands we have. More...
enum class | CommandPauseLevel : uint8_t { NoActions , NoConstruction , NoLandscaping , AllActions }
| Different command pause levels. More...

## Functions
CommandCost | CommandCostWithParam (StringID str, uint64_t value)
| Return an error status, with string and parameter.
CommandCost | CommandCostWithParam (StringID str, ConvertibleThroughBase auto value)

## Detailed Description

Types related to commands.

Definition in file command_type.h.

## Macro Definition Documentation

## ◆ DEF_CMD_TRAIT

#define DEF_CMD_TRAIT | ( |  | cmd_,
|  |  | proc_,
|  |  | flags_,
|  |  | type_
| ) |  |

Value:
template <> struct CommandTraits<cmd_> { \
using ProcType = decltype(&proc_); \
using Args = typename CommandFunctionTraitHelper<ProcType>::Args; \
using RetTypes = typename CommandFunctionTraitHelper<ProcType>::RetTypes; \
using CbArgs = typename CommandFunctionTraitHelper<ProcType>::CbArgs; \
using RetCallbackProc = typename CommandFunctionTraitHelper<ProcType>::CbProcType; \
static constexpr Commands cmd = cmd_; \
static constexpr auto &proc = proc_; \
static constexpr CommandFlags flags = flags_; \
static constexpr CommandType type = type_; \
static inline constexpr std::string_view name = #proc_; \
};
EnumBitSet< CommandFlag, uint16_t >
CommandType
CommandType
Types of commands we have.
Definition command_type.h:423
Commands
Commands
List of commands.
Definition command_type.h:196
CommandFunctionTraitHelper
Definition command_type.h:447
CommandTraits
Defines the traits of a command.
Definition command_type.h:464

Definition at line 466 of file command_type.h.

## Typedef Documentation

## ◆ CommandCallback

typedef void CommandCallback(Commands cmd, const CommandCost &result, TileIndex tile)

Define a callback function for the client, after the command is finished.

Functions of this type are called after the command is finished. The parameters are from the #CommandProc callback type. The boolean parameter indicates if the command succeeded or failed.

Parameters

  cmd | The command that was executed
  result | The result of the executed command
  tile | The tile of the command action

See also
  CommandProc

Definition at line 495 of file command_type.h.

## ◆ CommandCallbackData

typedef void CommandCallbackData(Commands cmd, const CommandCost &result, const CommandDataBuffer &data, CommandDataBuffer result_data)

Define a callback function for the client, after the command is finished.

Functions of this type are called after the command is finished. The parameters are from the #CommandProc callback type. The boolean parameter indicates if the command succeeded or failed.

Parameters

  cmd | The command that was executed
  result | The result of the executed command
  tile | The tile of the command action
  data | Additional data of the command
  result_data | Additional returned data from the command

See also
  CommandProc

Definition at line 511 of file command_type.h.

## ◆ CommandDataBuffer

typedef std::vector<uint8_t> CommandDataBuffer

Storage buffer for serialized command data.

Definition at line 481 of file command_type.h.

## ◆ CommandFlags

using CommandFlags = EnumBitSet<CommandFlag, uint16_t>

Definition at line 420 of file command_type.h.

## ◆ DoCommandFlags

using DoCommandFlags = EnumBitSet<DoCommandFlag, uint16_t>

Definition at line 399 of file command_type.h.

## Enumeration Type Documentation

## ◆ CommandFlag

enum class CommandFlag : uint8_t
| strong

Command flags for the command table _command_proc_table.

This enumeration defines flags for the _command_proc_table.

Enumerator
Server | the command can only be initiated by the server
Spectator | the command may be initiated by a spectator
Offline | the command cannot be executed in a multiplayer game; single-player only
Auto | set the DoCommandFlag::Auto flag on this command
AllTiles | allow this command also on MP_VOID tiles
NoTest | the command's output may differ between test and execute due to town rating changes etc.
NoWater | set the DoCommandFlag::NoWater flag on this command
ClientID | set p2 with the ClientID of the sending client.
Deity | the command may be executed by COMPANY_DEITY
StrCtrl | the command's string may contain control strings
NoEst | the command is never estimated.
Location | the command has implicit location argument.

Definition at line 406 of file command_type.h.

## ◆ CommandPauseLevel

enum class CommandPauseLevel : uint8_t
| strong

Different command pause levels.

Enumerator
NoActions | No user actions may be executed.
NoConstruction | No construction actions may be executed.
NoLandscaping | No landscaping actions may be executed.
AllActions | All actions may be executed.

Definition at line 439 of file command_type.h.

## ◆ Commands

enum Commands : uint8_t

List of commands.

This enum defines all possible commands which can be executed to the game engine. Observing the game like the query-tool or checking the profit of a vehicle don't result in a command which should be executed in the engine nor send to the server in a network game.

See also
  _command_proc_table

Enumerator
CMD_BUILD_RAILROAD_TRACK | build a rail track
CMD_REMOVE_RAILROAD_TRACK | remove a rail track
CMD_BUILD_SINGLE_RAIL | build a single rail track
CMD_REMOVE_SINGLE_RAIL | remove a single rail track
CMD_LANDSCAPE_CLEAR | demolish a tile
CMD_BUILD_BRIDGE | build a bridge
CMD_BUILD_RAIL_STATION | build a rail station
CMD_BUILD_TRAIN_DEPOT | build a train depot
CMD_BUILD_SINGLE_SIGNAL | build a signal
CMD_REMOVE_SINGLE_SIGNAL | remove a signal
CMD_TERRAFORM_LAND | terraform a tile
CMD_BUILD_OBJECT | build an object
CMD_BUILD_OBJECT_AREA | build an area of objects
CMD_BUILD_TUNNEL | build a tunnel
CMD_REMOVE_FROM_RAIL_STATION | remove a (rectangle of) tiles from a rail station
CMD_CONVERT_RAIL | convert a rail type
CMD_BUILD_RAIL_WAYPOINT | build a waypoint
CMD_RENAME_WAYPOINT | rename a waypoint
CMD_MOVE_WAYPOINT_NAME | move a waypoint name
CMD_REMOVE_FROM_RAIL_WAYPOINT | remove a (rectangle of) tiles from a rail waypoint
CMD_BUILD_ROAD_WAYPOINT | build a road waypoint
CMD_REMOVE_FROM_ROAD_WAYPOINT | remove a (rectangle of) tiles from a road waypoint
CMD_BUILD_ROAD_STOP | build a road stop
CMD_REMOVE_ROAD_STOP | remove a road stop
CMD_BUILD_LONG_ROAD | build a complete road (not a "half" one)
CMD_REMOVE_LONG_ROAD | remove a complete road (not a "half" one)
CMD_BUILD_ROAD | build a "half" road
CMD_BUILD_ROAD_DEPOT | build a road depot
CMD_CONVERT_ROAD | convert a road type
CMD_BUILD_AIRPORT | build an airport
CMD_BUILD_DOCK | build a dock
CMD_BUILD_SHIP_DEPOT | build a ship depot
CMD_BUILD_BUOY | build a buoy
CMD_PLANT_TREE | plant a tree
CMD_BUILD_VEHICLE | build a vehicle
CMD_SELL_VEHICLE | sell a vehicle
CMD_REFIT_VEHICLE | refit the cargo space of a vehicle
CMD_SEND_VEHICLE_TO_DEPOT | send a vehicle to a depot
CMD_SET_VEHICLE_VISIBILITY | hide or unhide a vehicle in the build vehicle and autoreplace GUIs
CMD_MOVE_RAIL_VEHICLE | move a rail vehicle (in the depot)
CMD_FORCE_TRAIN_PROCEED | proceed a train to pass a red signal
CMD_REVERSE_TRAIN_DIRECTION | turn a train around
CMD_CLEAR_ORDER_BACKUP | clear the order backup of a given user/tile
CMD_MODIFY_ORDER | modify an order (like set full-load)
CMD_SKIP_TO_ORDER | skip an order to the next of specific one
CMD_DELETE_ORDER | delete an order
CMD_INSERT_ORDER | insert a new order
CMD_CHANGE_SERVICE_INT | change the server interval of a vehicle
CMD_BUILD_INDUSTRY | build a new industry
CMD_INDUSTRY_SET_FLAGS | change industry control flags
CMD_INDUSTRY_SET_EXCLUSIVITY | change industry exclusive consumer/supplier
CMD_INDUSTRY_SET_TEXT | change additional text for the industry
CMD_INDUSTRY_SET_PRODUCTION | change industry production
CMD_SET_COMPANY_MANAGER_FACE | set the manager's face of the company
CMD_SET_COMPANY_COLOUR | set the colour of the company
CMD_INCREASE_LOAN | increase the loan from the bank
CMD_DECREASE_LOAN | decrease the loan from the bank
CMD_SET_COMPANY_MAX_LOAN | sets the max loan for the company
CMD_WANT_ENGINE_PREVIEW | confirm the preview of an engine
CMD_ENGINE_CTRL | control availability of the engine for companies
CMD_RENAME_VEHICLE | rename a whole vehicle
CMD_RENAME_ENGINE | rename a engine (in the engine list)
CMD_RENAME_COMPANY | change the company name
CMD_RENAME_PRESIDENT | change the president name
CMD_RENAME_STATION | rename a station
CMD_MOVE_STATION_NAME | move a station name
CMD_RENAME_DEPOT | rename a depot
CMD_PLACE_SIGN | place a sign
CMD_RENAME_SIGN | rename a sign
CMD_MOVE_SIGN | move a sign
CMD_TURN_ROADVEH | turn a road vehicle around
CMD_PAUSE | pause the game
CMD_BUY_COMPANY | buy a company which is bankrupt
CMD_FOUND_TOWN | found a town
CMD_RENAME_TOWN | rename a town
CMD_DO_TOWN_ACTION | do a action from the town detail window (like advertises or bribe)
CMD_TOWN_CARGO_GOAL | set the goal of a cargo for a town
CMD_TOWN_GROWTH_RATE | set the town growth rate
CMD_TOWN_RATING | set rating of a company in a town
CMD_TOWN_SET_TEXT | set the custom text of a town
CMD_EXPAND_TOWN | expand a town
CMD_DELETE_TOWN | delete a town
CMD_PLACE_HOUSE | place a house
CMD_ORDER_REFIT | change the refit information of an order (for "goto depot" )
CMD_CLONE_ORDER | clone (and share) an order
CMD_CLEAR_AREA | clear an area
CMD_MONEY_CHEAT | do the money cheat
CMD_CHANGE_BANK_BALANCE | change bank balance to charge costs or give money from a GS
CMD_BUILD_CANAL | build a canal
CMD_CREATE_SUBSIDY | create a new subsidy
CMD_COMPANY_CTRL | used in multiplayer to create a new companies etc.
CMD_COMPANY_ALLOW_LIST_CTRL | Used in multiplayer to add/remove a client's public key to/from the company's allow list.
CMD_CUSTOM_NEWS_ITEM | create a custom news message
CMD_CREATE_GOAL | create a new goal
CMD_REMOVE_GOAL | remove a goal
CMD_SET_GOAL_DESTINATION | update goal destination of a goal
CMD_SET_GOAL_TEXT | update goal text of a goal
CMD_SET_GOAL_PROGRESS | update goal progress text of a goal
CMD_SET_GOAL_COMPLETED | update goal completed status of a goal
CMD_GOAL_QUESTION | ask a goal related question
CMD_GOAL_QUESTION_ANSWER | answer(s) to CMD_GOAL_QUESTION
CMD_CREATE_STORY_PAGE | create a new story page
CMD_CREATE_STORY_PAGE_ELEMENT | create a new story page element
CMD_UPDATE_STORY_PAGE_ELEMENT | update a story page element
CMD_SET_STORY_PAGE_TITLE | update title of a story page
CMD_SET_STORY_PAGE_DATE | update date of a story page
CMD_SHOW_STORY_PAGE | show a story page
CMD_REMOVE_STORY_PAGE | remove a story page
CMD_REMOVE_STORY_PAGE_ELEMENT | remove a story page element
CMD_SCROLL_VIEWPORT | scroll main viewport of players
CMD_STORY_PAGE_BUTTON | selection via story page button
CMD_LEVEL_LAND | level land
CMD_BUILD_LOCK | build a lock
CMD_BUILD_SIGNAL_TRACK | add signals along a track (by dragging)
CMD_REMOVE_SIGNAL_TRACK | remove signals along a track (by dragging)
CMD_GIVE_MONEY | give money to another company
CMD_CHANGE_SETTING | change a setting
CMD_CHANGE_COMPANY_SETTING | change a company setting
CMD_SET_AUTOREPLACE | set an autoreplace entry
CMD_CLONE_VEHICLE | clone a vehicle
CMD_START_STOP_VEHICLE | start or stop a vehicle
CMD_MASS_START_STOP | start/stop all vehicles (in a depot)
CMD_AUTOREPLACE_VEHICLE | replace/renew a vehicle while it is in a depot
CMD_DEPOT_SELL_ALL_VEHICLES | sell all vehicles which are in a given depot
CMD_DEPOT_MASS_AUTOREPLACE | force the autoreplace to take action in a given depot
CMD_CREATE_GROUP | create a new group
CMD_DELETE_GROUP | delete a group
CMD_ALTER_GROUP | alter a group
CMD_ADD_VEHICLE_GROUP | add a vehicle to a group
CMD_ADD_SHARED_VEHICLE_GROUP | add all other shared vehicles to a group which are missing
CMD_REMOVE_ALL_VEHICLES_GROUP | remove all vehicles from a group
CMD_SET_GROUP_FLAG | set/clear a flag for a group
CMD_SET_GROUP_LIVERY | set the livery for a group
CMD_MOVE_ORDER | move an order
CMD_CHANGE_TIMETABLE | change the timetable for a vehicle
CMD_BULK_CHANGE_TIMETABLE | change the timetable for all orders of a vehicle
CMD_SET_VEHICLE_ON_TIME | set the vehicle on time feature (timetable)
CMD_AUTOFILL_TIMETABLE | autofill the timetable
CMD_SET_TIMETABLE_START | set the date that a timetable should start
CMD_OPEN_CLOSE_AIRPORT | open/close an airport to incoming aircraft
CMD_CREATE_LEAGUE_TABLE | create a new league table
CMD_CREATE_LEAGUE_TABLE_ELEMENT | create a new element in a league table
CMD_UPDATE_LEAGUE_TABLE_ELEMENT_DATA | update the data fields of a league table element
CMD_UPDATE_LEAGUE_TABLE_ELEMENT_SCORE | update the score of a league table element
CMD_REMOVE_LEAGUE_TABLE_ELEMENT | remove a league table element
CMD_END | Must ALWAYS be on the end of this list!! (period)

Definition at line 196 of file command_type.h.

## ◆ CommandType

enum class CommandType : uint8_t
| strong

Types of commands we have.

Enumerator
LandscapeConstruction | Construction and destruction of objects on the map.
VehicleConstruction | Construction, modification (incl. refit) and destruction of vehicles.
MoneyManagement | Management of money, i.e. loans.
VehicleManagement | Stopping, starting, sending to depot, turning around, replace orders etc.
RouteManagement | Modifications to route management (orders, groups, etc).
OtherManagement | Renaming stuff, changing company colours, placing signs, etc.
CompanySetting | Changing settings related to a company.
ServerSetting | Pausing/removing companies/server settings.
Cheat | A cheat of some sorts.
End | End marker.

Definition at line 423 of file command_type.h.

## ◆ DoCommandFlag

enum class DoCommandFlag : uint8_t
| strong

List of flags for a command.

This enums defines some flags which can be used for the commands.

Enumerator
Execute | execute the given command
Auto | don't allow building on structures
QueryCost | query cost only, don't build.
NoWater | don't allow building on water
NoTestTownRating | town rating does not disallow you from building
Bankrupt | company bankrupts, skip money check, skip vehicle on tile check in some cases
AutoReplace | autoreplace/autorenew is in progress, this shall disable vehicle limits when building, and ignore certain restrictions when undoing things (like vehicle attach callback)
NoCargoCapacityCheck | when autoreplace/autorenew is in progress, this shall prevent truncating the amount of cargo in the vehicle to prevent testing the command to remove cargo
AllTiles | allow this command also on MP_VOID tiles
NoModifyTownRating | do not change town rating
ForceClearTile | do not only remove the object on the tile, but also clear any water left on it

Definition at line 386 of file command_type.h.

## Function Documentation

## ◆ CommandCostWithParam() [1/2]

CommandCost CommandCostWithParam | ( | StringID | str,
|  | ConvertibleThroughBase auto | value
| ) |  |

Definition at line 184 of file command_type.h.

## ◆ CommandCostWithParam() [2/2]

CommandCost CommandCostWithParam | ( | StringID | str,
|  | uint64_t | value
| ) |  |

Return an error status, with string and parameter.

Parameters

  str | StringID of error.
  value | Single parameter for error.

Returns
  CommandCost representing the error.

Definition at line 417 of file command.cpp.

References GetEncodedString(), IsLocalCompany(), and CommandCost::SetEncodedMessage().

Referenced by CheckAllowRemoveRoad(), CheckforTownRating(), CheckIfAuthorityAllowsNewStation(), ClearTile_Station(), ClearTile_Town(), CmdBuildAirport(), CmdBuildBridge(), CmdDecreaseLoan(), CmdIncreaseLoan(), DoBuildLock(), CommandHelperBase::InternalExecuteProcessResult(), and IsStationBridgeAboveOk().