OpenTTD Source  20241108-master-g80f628063a
command_type.h File Reference

Types related to commands. More...

#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(*)(DoCommandFlag, Targs...)>
 
struct  CommandFunctionTraitHelper< Tret< CommandCost, Tretargs... >(*)(DoCommandFlag, Targs...)>
 

Macros

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

Typedefs

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. More...
 
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. More...
 

Enumerations

enum  Commands : uint16_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_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_RENAME_DEPOT , CMD_PLACE_SIGN , CMD_RENAME_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  DoCommandFlag {
  DC_NONE = 0x000 , DC_EXEC = 0x001 , DC_AUTO = 0x002 , DC_QUERY_COST = 0x004 ,
  DC_NO_WATER = 0x008 , DC_NO_TEST_TOWN_RATING = 0x020 , DC_BANKRUPT = 0x040 , DC_AUTOREPLACE = 0x080 ,
  DC_NO_CARGO_CAP_CHECK = 0x100 , DC_ALL_TILES = 0x200 , DC_NO_MODIFY_TOWN_RATING = 0x400 , DC_FORCE_CLEAR_TILE = 0x800
}
 List of flags for a command. More...
 
enum  CommandFlags {
  CMD_SERVER = 0x001 , CMD_SPECTATOR = 0x002 , CMD_OFFLINE = 0x004 , CMD_AUTO = 0x008 ,
  CMD_ALL_TILES = 0x010 , CMD_NO_TEST = 0x020 , CMD_NO_WATER = 0x040 , CMD_CLIENT_ID = 0x080 ,
  CMD_DEITY = 0x100 , CMD_STR_CTRL = 0x200 , CMD_NO_EST = 0x400 , CMD_LOCATION = 0x800
}
 Command flags for the command table _command_proc_table. More...
 
enum  CommandType {
  CMDT_LANDSCAPE_CONSTRUCTION , CMDT_VEHICLE_CONSTRUCTION , CMDT_MONEY_MANAGEMENT , CMDT_VEHICLE_MANAGEMENT ,
  CMDT_ROUTE_MANAGEMENT , CMDT_OTHER_MANAGEMENT , CMDT_COMPANY_SETTING , CMDT_SERVER_SETTING ,
  CMDT_CHEAT , CMDT_END
}
 Types of commands we have. More...
 
enum  CommandPauseLevel { CMDPL_NO_ACTIONS , CMDPL_NO_CONSTRUCTION , CMDPL_NO_LANDSCAPING , CMDPL_ALL_ACTIONS }
 Different command pause levels. More...
 

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 RetCallbackProc = typename CommandFunctionTraitHelper<ProcType>::CbProcType; \
static constexpr Commands cmd = cmd_; \
static constexpr auto &proc = proc_; \
static constexpr CommandFlags flags = (CommandFlags)(flags_); \
static constexpr CommandType type = type_; \
static inline constexpr const char *name = #proc_; \
};
CommandType
Types of commands we have.
Definition: command_type.h:413
Commands
List of commands.
Definition: command_type.h:187
CommandFlags
Command flags for the command table _command_proc_table.
Definition: command_type.h:396
Defines the traits of a command.
Definition: command_type.h:453

Definition at line 455 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
cmdThe command that was executed
resultThe result of the executed command
tileThe tile of the command action
See also
CommandProc

Definition at line 484 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
cmdThe command that was executed
resultThe result of the executed command
tileThe tile of the command action
dataAdditional data of the command
result_dataAdditional returned data from the command
See also
CommandProc

Definition at line 500 of file command_type.h.

Enumeration Type Documentation

◆ CommandFlags

Command flags for the command table _command_proc_table.

This enumeration defines flags for the _command_proc_table.

Enumerator
CMD_SERVER 

the command can only be initiated by the server

CMD_SPECTATOR 

the command may be initiated by a spectator

CMD_OFFLINE 

the command cannot be executed in a multiplayer game; single-player only

CMD_AUTO 

set the DC_AUTO flag on this command

CMD_ALL_TILES 

allow this command also on MP_VOID tiles

CMD_NO_TEST 

the command's output may differ between test and execute due to town rating changes etc.

CMD_NO_WATER 

set the DC_NO_WATER flag on this command

CMD_CLIENT_ID 

set p2 with the ClientID of the sending client.

CMD_DEITY 

the command may be executed by COMPANY_DEITY

CMD_STR_CTRL 

the command's string may contain control strings

CMD_NO_EST 

the command is never estimated.

CMD_LOCATION 

the command has implicit location argument.

Definition at line 396 of file command_type.h.

◆ CommandPauseLevel

Different command pause levels.

Enumerator
CMDPL_NO_ACTIONS 

No user actions may be executed.

CMDPL_NO_CONSTRUCTION 

No construction actions may be executed.

CMDPL_NO_LANDSCAPING 

No landscaping actions may be executed.

CMDPL_ALL_ACTIONS 

All actions may be executed.

Definition at line 428 of file command_type.h.

◆ Commands

enum Commands : uint16_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_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_RENAME_DEPOT 

rename a depot

CMD_PLACE_SIGN 

place a sign

CMD_RENAME_SIGN 

rename 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 187 of file command_type.h.

◆ CommandType

Types of commands we have.

Enumerator
CMDT_LANDSCAPE_CONSTRUCTION 

Construction and destruction of objects on the map.

CMDT_VEHICLE_CONSTRUCTION 

Construction, modification (incl. refit) and destruction of vehicles.

CMDT_MONEY_MANAGEMENT 

Management of money, i.e. loans.

CMDT_VEHICLE_MANAGEMENT 

Stopping, starting, sending to depot, turning around, replace orders etc.

CMDT_ROUTE_MANAGEMENT 

Modifications to route management (orders, groups, etc).

CMDT_OTHER_MANAGEMENT 

Renaming stuff, changing company colours, placing signs, etc.

CMDT_COMPANY_SETTING 

Changing settings related to a company.

CMDT_SERVER_SETTING 

Pausing/removing companies/server settings.

CMDT_CHEAT 

A cheat of some sorts.

CMDT_END 

Magic end marker.

Definition at line 413 of file command_type.h.

◆ DoCommandFlag

List of flags for a command.

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

Enumerator
DC_NONE 

no flag is set

DC_EXEC 

execute the given command

DC_AUTO 

don't allow building on structures

DC_QUERY_COST 

query cost only, don't build.

DC_NO_WATER 

don't allow building on water

DC_NO_TEST_TOWN_RATING 

town rating does not disallow you from building

DC_BANKRUPT 

company bankrupts, skip money check, skip vehicle on tile check in some cases

DC_AUTOREPLACE 

autoreplace/autorenew is in progress, this shall disable vehicle limits when building, and ignore certain restrictions when undoing things (like vehicle attach callback)

DC_NO_CARGO_CAP_CHECK 

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

DC_ALL_TILES 

allow this command also on MP_VOID tiles

DC_NO_MODIFY_TOWN_RATING 

do not change town rating

DC_FORCE_CLEAR_TILE 

do not only remove the object on the tile, but also clear any water left on it

Definition at line 374 of file command_type.h.