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

Command definitions related to industries. More...

#include "command_type.h"
#include "company_type.h"
#include "industry_type.h"

Go to the source code of this file.

Functions

enum IndustryControlFlags uint8_t CommandCost CmdBuildIndustry (DoCommandFlag flags, TileIndex tile, IndustryType it, uint32_t first_layout, bool fund, uint32_t seed)
 Build/Fund an industry. More...
 
CommandCost CmdIndustrySetFlags (DoCommandFlag flags, IndustryID ind_id, IndustryControlFlags ctlflags)
 Set industry control flags. More...
 
CommandCost CmdIndustrySetExclusivity (DoCommandFlag flags, IndustryID ind_id, Owner company_id, bool consumer)
 Change exclusive consumer or supplier for the industry. More...
 
CommandCost CmdIndustrySetText (DoCommandFlag flags, IndustryID ind_id, const std::string &text)
 Change additional industry text. More...
 
CommandCost CmdIndustrySetProduction (DoCommandFlag flags, IndustryID ind_id, uint8_t prod_level, bool show_news, const std::string &text)
 Set industry production. More...
 
void CcBuildIndustry (Commands cmd, const CommandCost &result, TileIndex tile, IndustryType indtype, uint32_t, bool, uint32_t)
 Command callback. More...
 

Detailed Description

Command definitions related to industries.

Definition in file industry_cmd.h.

Function Documentation

◆ CcBuildIndustry()

void CcBuildIndustry ( Commands  cmd,
const CommandCost result,
TileIndex  tile,
IndustryType  indtype,
uint32_t  ,
bool  ,
uint32_t   
)

Command callback.

In case of failure to build an industry, show an error message.

Parameters
resultResult of the command.
tileTile where the industry is placed.
indtypeIndustry type.

Definition at line 255 of file industry_gui.cpp.

◆ CmdBuildIndustry()

enum IndustryControlFlags uint8_t CommandCost CmdBuildIndustry ( DoCommandFlag  flags,
TileIndex  tile,
IndustryType  it,
uint32_t  first_layout,
bool  fund,
uint32_t  seed 
)

Build/Fund an industry.

Parameters
flagsof operations to conduct
tiletile where industry is built
itindustry type see build_industry.h and see industry.h
first_layoutfirst layout to try
fundfalse = prospect, true = fund (only valid if current company is DEITY)
seedseed to use for desyncfree randomisations
Returns
the cost of this operation or an error

Definition at line 2065 of file industry_cmd.cpp.

References CMD_ERROR, IndustrySpec::enabled, GetIndustrySpec(), IndustrySpec::layouts, and NUM_INDUSTRYTYPES.

◆ CmdIndustrySetExclusivity()

CommandCost CmdIndustrySetExclusivity ( DoCommandFlag  flags,
IndustryID  ind_id,
Owner  company_id,
bool  consumer 
)

Change exclusive consumer or supplier for the industry.

Parameters
flagsType of operation.
ind_idIndustryID
company_idCompanyID to set or INVALID_OWNER (available to everyone) or OWNER_NONE (neutral stations only) or OWNER_DEITY (no one)
consumerSet exclusive consumer if true, supplier if false.
Returns
Empty cost or an error.

Definition at line 2235 of file industry_cmd.cpp.

References _current_company, CMD_ERROR, DC_EXEC, Industry::exclusive_consumer, Industry::exclusive_supplier, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_industry_pool >::GetIfValid(), INVALID_OWNER, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::IsValidID(), OWNER_DEITY, and OWNER_NONE.

◆ CmdIndustrySetFlags()

CommandCost CmdIndustrySetFlags ( DoCommandFlag  flags,
IndustryID  ind_id,
IndustryControlFlags  ctlflags 
)

Set industry control flags.

Parameters
flagsType of operation.
ind_idIndustryID
ctlflagsIndustryControlFlags
Returns
Empty cost or an error.

Definition at line 2157 of file industry_cmd.cpp.

References _current_company, CMD_ERROR, Industry::ctlflags, DC_EXEC, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_industry_pool >::GetIfValid(), INDCTL_MASK, and OWNER_DEITY.

◆ CmdIndustrySetProduction()

CommandCost CmdIndustrySetProduction ( DoCommandFlag  flags,
IndustryID  ind_id,
uint8_t  prod_level,
bool  show_news,
const std::string &  custom_news 
)

◆ CmdIndustrySetText()

CommandCost CmdIndustrySetText ( DoCommandFlag  flags,
IndustryID  ind_id,
const std::string &  text 
)