OpenTTD Source: src/misc_cmd.cpp File Reference

OpenTTD Source 15.3

Functions
misc_cmd.cpp File Reference

Some misc functions that are better fitted in other files, but never got moved there... More...

`#include "stdafx.h"`
`#include "command_func.h"`
`#include "economy_func.h"`
`#include "window_func.h"`
`#include "textbuf_gui.h"`
`#include "network/network.h"`
`#include "network/network_func.h"`
`#include "strings_func.h"`
`#include "company_func.h"`
`#include "company_gui.h"`
`#include "company_base.h"`
`#include "tile_map.h"`
`#include "texteff.hpp"`
`#include "core/backup_type.hpp"`
`#include "misc_cmd.h"`
`#include "table/strings.h"`
`#include "safeguards.h"`

Go to the source code of this file.

## Functions
CommandCost | CmdIncreaseLoan (DoCommandFlags flags, LoanCommand cmd, Money amount)
| Increase the loan of your company.
CommandCost | CmdDecreaseLoan (DoCommandFlags flags, LoanCommand cmd, Money amount)
| Decrease the loan of your company.
CommandCost | CmdSetCompanyMaxLoan (DoCommandFlags flags, CompanyID company, Money amount)
| Sets the max loan amount of your company.
static void | AskUnsafeUnpauseCallback (Window *, bool confirmed)
| In case of an unsafe unpause, we want the user to confirm that it might crash.
CommandCost | CmdPause (DoCommandFlags flags, PauseMode mode, bool pause)
| Pause/Unpause the game (server-only).
CommandCost | CmdMoneyCheat (DoCommandFlags, Money amount)
| Change the financial flow of your company.
CommandCost | CmdChangeBankBalance (DoCommandFlags flags, TileIndex tile, Money delta, CompanyID company, ExpensesType expenses_type)
| Change the bank bank balance of a company by inserting or removing money without affecting the loan.

## Detailed Description

Some misc functions that are better fitted in other files, but never got moved there...

Definition in file misc_cmd.cpp.

## Function Documentation

## ◆ AskUnsafeUnpauseCallback()

static void AskUnsafeUnpauseCallback | ( | Window * | ,
|  | bool | confirmed
| ) |  |
| static

In case of an unsafe unpause, we want the user to confirm that it might crash.

Parameters

  confirmed | whether the user confirmed their action

Definition at line 150 of file misc_cmd.cpp.

References Error.

Referenced by CmdPause().

## ◆ CmdChangeBankBalance()

CommandCost CmdChangeBankBalance | ( | DoCommandFlags | flags,
|  | TileIndex | tile,
|  | Money | delta,
|  | CompanyID | company,
|  | ExpensesType | expenses_type
| ) |  |

Change the bank bank balance of a company by inserting or removing money without affecting the loan.

Parameters

  flags | operation to perform
  tile | tile to show text effect on (if not 0)
  delta | the amount of money to receive (if positive), or spend (if negative)
  company | the company ID.
  expenses_type | the expenses type which should register the cost/income

See also
  ExpensesType.

Returns
  zero cost or an error

Definition at line 234 of file misc_cmd.cpp.

References _current_company, CMD_ERROR, Execute, EXPENSES_END, GetTilePixelZ(), Pool< Titem, Tindex, Tgrowth_step, Tpool_type, Tcache >::PoolItem<&_company_pool >::IsValidID(), OWNER_DEITY, Backup< T >::Restore(), ShowCostOrIncomeAnimation(), SubtractMoneyFromCompany(), BaseBitSet< Timpl, Tvalue_type, Tstorage, Tmask >::Test(), TILE_SIZE, TileX(), and TileY().

## ◆ CmdDecreaseLoan()

CommandCost CmdDecreaseLoan | ( | DoCommandFlags | flags,
|  | LoanCommand | cmd,
|  | Money | amount
| ) |  |

Decrease the loan of your company.

Parameters

  flags | operation to perform
  cmd | when LoanCommand::Interval: pays back LOAN_INTERVAL, when LoanCommand::Max: pays back the maximum loan permitting money (press CTRL), when LoanCommand::Amount: pays back the amount specified in `amount`
  amount | amount to decrease the loan with, multitude of LOAN_INTERVAL. Only used when cmd == LoanCommand::Amount.

Returns
  the cost of this operation or an error

Definition at line 85 of file misc_cmd.cpp.

References _current_company, CMD_ERROR, CommandCostWithParam(), CompanyProperties::current_loan, Execute, Pool< Titem, Tindex, Tgrowth_step, Tpool_type, Tcache >::PoolItem<&_company_pool >::Get(), GetAvailableMoneyForCommand(), InvalidateCompanyWindows(), LOAN_INTERVAL, CompanyProperties::money, and BaseBitSet< Timpl, Tvalue_type, Tstorage, Tmask >::Test().

## ◆ CmdIncreaseLoan()

CommandCost CmdIncreaseLoan | ( | DoCommandFlags | flags,
|  | LoanCommand | cmd,
|  | Money | amount
| ) |  |

Increase the loan of your company.

Parameters

  flags | operation to perform
  cmd | when LoanCommand::Interval: loans LOAN_INTERVAL, when LoanCommand::Max: loans the maximum loan permitting money (press CTRL), when LoanCommand::Amount: loans the amount specified in `amount`
  amount | amount to increase the loan with, multitude of LOAN_INTERVAL. Only used when cmd == LoanCommand::Amount.

Returns
  the cost of this operation or an error

Definition at line 39 of file misc_cmd.cpp.

References _current_company, CMD_ERROR, CommandCostWithParam(), CompanyProperties::current_loan, Execute, EXPENSES_OTHER, Pool< Titem, Tindex, Tgrowth_step, Tpool_type, Tcache >::PoolItem<&_company_pool >::Get(), Company::GetMaxLoan(), InvalidateCompanyWindows(), LOAN_INTERVAL, CompanyProperties::money, and BaseBitSet< Timpl, Tvalue_type, Tstorage, Tmask >::Test().

## ◆ CmdMoneyCheat()

CommandCost CmdMoneyCheat | ( | DoCommandFlags | flags,
|  | Money | amount
| ) |  |

Change the financial flow of your company.

Parameters

  amount | the amount of money to receive (if positive), or spend (if negative)

Returns
  the cost of this operation or an error

Definition at line 220 of file misc_cmd.cpp.

References EXPENSES_OTHER.

## ◆ CmdPause()

CommandCost CmdPause | ( | DoCommandFlags | flags,
|  | PauseMode | mode,
|  | bool | pause
| ) |  |

Pause/Unpause the game (server-only).

Set or unset a bit in the pause mode. If pause mode is zero the game is unpaused. A bitset is used instead of a boolean value/counter to have more control over the game when saving/loading, etc.

Parameters

  flags | operation to perform
  mode | the pause mode to change
  pause | true pauses, false unpauses this mode

Returns
  the cost of this operation or an error

Definition at line 167 of file misc_cmd.cpp.

References _networking, _pause_mode, ActiveClients, AskUnsafeUnpauseCallback(), CMD_ERROR, CommandDuringPause, Error, Execute, GameScript, GetEncodedString(), Join, LinkGraph, NetworkHandlePauseChange(), Normal, BaseBitSet< Timpl, Tvalue_type, Tstorage, Tmask >::Reset(), SaveLoad, BaseBitSet< Timpl, Tvalue_type, Tstorage, Tmask >::Set(), SetWindowDirty(), ShowQuery(), BaseBitSet< Timpl, Tvalue_type, Tstorage, Tmask >::Test(), WC_MAIN_TOOLBAR, and WC_STATUS_BAR.

## ◆ CmdSetCompanyMaxLoan()

CommandCost CmdSetCompanyMaxLoan | ( | DoCommandFlags | flags,
|  | CompanyID | company,
|  | Money | amount
| ) |  |

Sets the max loan amount of your company.

Does not respect the global loan setting.

Parameters

  company | the company ID.
  amount | the new max loan amount, will be rounded down to the multitude of LOAN_INTERVAL. If set to COMPANY_MAX_LOAN_DEFAULT reset the max loan to default(global) value.

Returns
  zero cost or an error

Definition at line 125 of file misc_cmd.cpp.

References _current_company, CMD_ERROR, Execute, Pool< Titem, Tindex, Tgrowth_step, Tpool_type, Tcache >::PoolItem<&_company_pool >::GetIfValid(), InvalidateCompanyWindows(), LOAN_INTERVAL, CompanyProperties::max_loan, MAX_LOAN_LIMIT, OWNER_DEITY, and BaseBitSet< Timpl, Tvalue_type, Tstorage, Tmask >::Test().