| OpenTTD
    | 
GUI related to cheating. More...
#include "stdafx.h"#include "command_func.h"#include "cheat_type.h"#include "company_base.h"#include "company_func.h"#include "date_func.h"#include "saveload/saveload.h"#include "textbuf_gui.h"#include "window_gui.h"#include "string_func.h"#include "strings_func.h"#include "window_func.h"#include "rail_gui.h"#include "settings_gui.h"#include "company_gui.h"#include "linkgraph/linkgraphschedule.h"#include "map_func.h"#include "tile_map.h"#include "newgrf.h"#include "error.h"#include "widgets/cheat_widget.h"#include "table/sprites.h"#include "safeguards.h"Go to the source code of this file.
| Data Structures | |
| struct | CheatEntry | 
| Information of a cheat.  More... | |
| struct | CheatWindow | 
| GUI for the cheats.  More... | |
| Typedefs | |
| typedef int32 | CheckButtonClick (int32 p1, int32 p2) | 
| Signature of handler function when user clicks at a cheat. | |
| Enumerations | |
| enum | CheatNumbers { CHT_MONEY, CHT_CHANGE_COMPANY, CHT_EXTRA_DYNAMITE, CHT_CROSSINGTUNNELS, CHT_NO_JETCRASH, CHT_SETUP_PROD, CHT_EDIT_MAX_HL, CHT_CHANGE_DATE, CHT_NUM_CHEATS } | 
| Available cheats.  More... | |
| Functions | |
| static int32 | ClickMoneyCheat (int32 p1, int32 p2) | 
| Handle cheating of money. | |
| static int32 | ClickChangeCompanyCheat (int32 p1, int32 p2) | 
| Handle changing of company. | |
| static int32 | ClickSetProdCheat (int32 p1, int32 p2) | 
| Allow (or disallow) changing production of all industries. | |
| void | EnginesMonthlyLoop () | 
| Monthly update of the availability, reliability, and preview offers of the engines. | |
| static int32 | ClickChangeDateCheat (int32 p1, int32 p2) | 
| Handle changing of the current year. | |
| static int32 | ClickChangeMaxHlCheat (int32 p1, int32 p2) | 
| Allow (or disallow) a change of the maximum allowed heightlevel. | |
| assert_compile (CHT_NUM_CHEATS==lengthof(_cheats_ui)) | |
| void | ShowCheatWindow () | 
| Open cheat window. | |
| Variables | |
| static int32 | _money_cheat_amount = 10000000 | 
| The 'amount' to cheat with. | |
| static const CheatEntry | _cheats_ui [] | 
| The available cheats. | |
| static const NWidgetPart | _nested_cheat_widgets [] | 
| Widget definitions of the cheat GUI. | |
| static WindowDesc | _cheats_desc (WDP_AUTO,"cheats", 0, 0, WC_CHEATS, WC_NONE, 0, _nested_cheat_widgets, lengthof(_nested_cheat_widgets)) | 
| Window description of the cheats GUI. | |
GUI related to cheating.
Definition in file cheat_gui.cpp.
| typedef int32 CheckButtonClick(int32 p1, int32 p2) | 
Signature of handler function when user clicks at a cheat.
| p1 | The new value. | 
| p2 | Change direction (+1, +1), 0for boolean settings. | 
Definition at line 171 of file cheat_gui.cpp.
| enum CheatNumbers | 
Available cheats.
Definition at line 153 of file cheat_gui.cpp.
| 
 | static | 
Handle changing of company.
| p1 | company to set to | 
| p2 | is -1 or +1 (down/up) | 
Definition at line 68 of file cheat_gui.cpp.
References _local_company, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::GetPoolSize(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::IsValidID(), and SetLocalCompany().
| 
 | static | 
Handle changing of the current year.
| p1 | Unused. | 
| p2 | +1 (increase) or -1 (decrease). | 
Definition at line 102 of file cheat_gui.cpp.
References _cur_year, _date, _date_fract, Clamp(), ConvertDateToYMD(), ConvertYMDToDate(), YearMonthDay::day, EnginesMonthlyLoop(), LinkGraphSchedule::instance, InvalidateWindowClassesData(), MAX_YEAR, MIN_YEAR, YearMonthDay::month, ResetSignalVariant(), SetDate(), SetWindowDirty(), LinkGraphSchedule::ShiftDates(), WC_BUILD_OBJECT, WC_BUILD_STATION, and WC_STATUS_BAR.
| 
 | static | 
Allow (or disallow) a change of the maximum allowed heightlevel.
| p1 | new value | 
| p2 | unused | 
Definition at line 128 of file cheat_gui.cpp.
References _settings_game, Clamp(), GameSettings::construction, INVALID_STRING_ID, InvalidateWindowClassesData(), MapSize(), ConstructionSettings::max_heightlevel, MAX_MAX_HEIGHTLEVEL, MIN_MAX_HEIGHTLEVEL, ReloadNewGRFData(), ShowErrorMessage(), TileHeight(), WC_SMALLMAP, and WL_ERROR.
| 
 | static | 
Handle cheating of money.
Note that the amount of money of a company must be changed through a command rather than by setting a variable. Since the cheat data structure expects a variable, the amount of given/taken money is used for this purpose.
| p1 | not used. | 
| p2 | is -1 or +1 (down/up) | 
Definition at line 56 of file cheat_gui.cpp.
References _money_cheat_amount, CMD_MONEY_CHEAT, and DoCommandP().
| 
 | static | 
Allow (or disallow) changing production of all industries.
| p1 | new value | 
| p2 | unused | 
Definition at line 87 of file cheat_gui.cpp.
References _cheats, InvalidateWindowClassesData(), Cheats::setup_prod, Cheat::value, and WC_INDUSTRY_VIEW.
| void EnginesMonthlyLoop | ( | ) | 
Monthly update of the availability, reliability, and preview offers of the engines.
Definition at line 948 of file engine.cpp.
Referenced by ClickChangeDateCheat(), and OnNewMonth().
| void ShowCheatWindow | ( | ) | 
Open cheat window.
Definition at line 418 of file cheat_gui.cpp.
References _cheats_desc, DeleteWindowById(), and WC_CHEATS.
Referenced by MainToolbarWindow::OnHotkey().
| 
 | static | 
Window description of the cheats GUI.
Referenced by ShowCheatWindow().
| 
 | static | 
The available cheats.
Order matches with the values of CheatNumbers
Definition at line 186 of file cheat_gui.cpp.
| 
 | static | 
The 'amount' to cheat with.
This variable is semantically a constant value, but because the cheat code requires to be able to write to the variable it is not constified.
Definition at line 45 of file cheat_gui.cpp.
Referenced by ClickMoneyCheat().
| 
 | static | 
Widget definitions of the cheat GUI.
Definition at line 200 of file cheat_gui.cpp.
 1.8.1.2
 1.8.1.2