src/settings_type.h
author Tero Marttila <terom@fixme.fi>
Fri, 19 Dec 2008 02:25:44 +0200
branchterom-mini
changeset 10442 7089fa402bfd
parent 10207 c291a21b304e
permissions -rw-r--r--
mini-branch
2186
db48cf29b983 (svn r2701) Insert Id tags into all source files
tron
parents: 2154
diff changeset
     1
/* $Id$ */
db48cf29b983 (svn r2701) Insert Id tags into all source files
tron
parents: 2154
diff changeset
     2
8208
3d0590aa2124 (svn r11771) -Codechange: split settings.h into better separated headers.
rubidium
parents: 8151
diff changeset
     3
/** @file settings_type.h Types related to global configuration settings. */
6423
8e10e79e0fd1 (svn r9559) -Documentation: doxygen and comment changes: 'U' and 'V' now. Almost done. Yeah. I know, I've already said that...
belugas
parents: 6344
diff changeset
     4
8208
3d0590aa2124 (svn r11771) -Codechange: split settings.h into better separated headers.
rubidium
parents: 8151
diff changeset
     5
#ifndef SETTINGS_TYPE_H
3d0590aa2124 (svn r11771) -Codechange: split settings.h into better separated headers.
rubidium
parents: 8151
diff changeset
     6
#define SETTINGS_TYPE_H
0
29654efe3188 (svn r1) Import of revision 975 of old (crashed) SVN
truelight
parents:
diff changeset
     7
8140
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents: 8138
diff changeset
     8
#include "date_type.h"
8213
7bdd7593eb9b (svn r11776) -Codechange: more header splittings to reduce the dependencies.
rubidium
parents: 8208
diff changeset
     9
#include "town_type.h"
9126
5648d696456b (svn r12986) -Codechange: move the landscape and transport related types from openttd.h to their own headers.
rubidium
parents: 9070
diff changeset
    10
#include "transport_type.h"
9420
8a38703928e8 (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings.
rubidium
parents: 9413
diff changeset
    11
#include "network/core/config.h"
3900
2c84ed52709d (svn r4987) Feature: Merged YAPF into trunk. Thanks to devs for continuous support and users for testing.
KUDr
parents: 3890
diff changeset
    12
9358
2e1e4d2f71dd (svn r13255) -Codechange: move _opt to _settings.
rubidium
parents: 9354
diff changeset
    13
/** Settings related to the difficulty of the game */
2e1e4d2f71dd (svn r13255) -Codechange: move _opt to _settings.
rubidium
parents: 9354
diff changeset
    14
struct DifficultySettings {
9359
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    15
	byte   max_no_competitors;               ///< the number of competitors (AIs)
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    16
	byte   competitor_start_time;            ///< how long to wait for the first competitors (AIs)
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    17
	byte   number_towns;                     ///< the amount of towns
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    18
	byte   number_industries;                ///< the amount of industries
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    19
	uint32 max_loan;                         ///< the maximum initial loan
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    20
	byte   initial_interest;                 ///< amount of interest (to pay over the loan)
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    21
	byte   vehicle_costs;                    ///< amount of money spent on vehicle running cost
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    22
	byte   competitor_speed;                 ///< the speed at which the AI builds
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    23
	byte   competitor_intelligence;          ///< the competior's (AI) intelligence
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    24
	byte   vehicle_breakdowns;               ///< likelihood of vehicles breaking down
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    25
	byte   subsidy_multiplier;               ///< amount of subsidy
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    26
	byte   construction_cost;                ///< how expensive is building
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    27
	byte   terrain_type;                     ///< the mountainousness of the landscape
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    28
	byte   quantity_sea_lakes;               ///< the amount of seas/lakes
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    29
	byte   economy;                          ///< how volatile is the economy
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    30
	byte   line_reverse_mode;                ///< reversing at stations or not
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    31
	byte   disasters;                        ///< are disasters enabled
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    32
	byte   town_council_tolerance;           ///< minimum required town ratings to be allowed to demolish stuff
3a8554ac1cb8 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
rubidium
parents: 9358
diff changeset
    33
	byte   diff_level;                       ///< the difficulty level
8268
5027ad5e70a0 (svn r11832) -Codechange: get rid of (quite) some VARDEFs.
rubidium
parents: 8213
diff changeset
    34
};
5027ad5e70a0 (svn r11832) -Codechange: get rid of (quite) some VARDEFs.
rubidium
parents: 8213
diff changeset
    35
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    36
/** Settings related to the GUI and other stuff that is not saved in the savegame. */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    37
struct GUISettings {
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    38
	bool   vehicle_speed;                    ///< show vehicle speed
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    39
	bool   sg_full_load_any;                 ///< new full load calculation, any cargo must be full read from pre v93 savegames
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    40
	bool   lost_train_warn;                  ///< if a train can't find its destination, show a warning
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    41
	uint8  order_review_system;              ///< perform order reviews on vehicles
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    42
	bool   train_income_warn;                ///< if train is generating little income, show a warning
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    43
	bool   status_long_date;                 ///< always show long date in status bar
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    44
	bool   show_finances;                    ///< show finances at end of year
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    45
	bool   sg_new_nonstop;                   ///< ttdpatch compatible nonstop handling read from pre v93 savegames
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    46
	bool   new_nonstop;                      ///< ttdpatch compatible nonstop handling
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    47
	bool   autoscroll;                       ///< scroll when moving mouse to the edge
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    48
	byte   errmsg_duration;                  ///< duration of error message
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    49
	bool   link_terraform_toolbar;           ///< display terraform toolbar when displaying rail, road, water and airport toolbars
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    50
	bool   reverse_scroll;                   ///< right-Click-Scrolling scrolls in the opposite direction
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    51
	bool   smooth_scroll;                    ///< smooth scroll viewports
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    52
	bool   measure_tooltip;                  ///< show a permanent tooltip when dragging tools
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    53
	byte   liveries;                         ///< options for displaying company liveries, 0=none, 1=self, 2=all
10207
c291a21b304e (svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
rubidium
parents: 9906
diff changeset
    54
	bool   prefer_teamchat;                  ///< choose the chat message target with <ENTER>, true=all clients, false=your team
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    55
	uint8  advanced_vehicle_list;            ///< use the "advanced" vehicle list
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    56
	uint8  loading_indicators;               ///< show loading indicators
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    57
	uint8  default_rail_type;                ///< the default rail type for the rail GUI
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    58
	uint8  toolbar_pos;                      ///< position of toolbars, 0=left, 1=center, 2=right
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    59
	uint8  window_snap_radius;               ///< windows snap at each other if closer than this
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    60
	bool   always_build_infrastructure;      ///< always allow building of infrastructure, even when you do not have the vehicles for it
9358
2e1e4d2f71dd (svn r13255) -Codechange: move _opt to _settings.
rubidium
parents: 9354
diff changeset
    61
	byte   autosave;                         ///< how often should we do autosaves?
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    62
	bool   keep_all_autosave;                ///< name the autosave in a different way
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    63
	bool   autosave_on_exit;                 ///< save an autosave when you quit the game, but do not ask "Do you really want to quit?"
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    64
	byte   max_num_autosaves;                ///< controls how many autosavegames are made before the game starts to overwrite (names them 0 to max_num_autosaves - 1)
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    65
	bool   population_in_label;              ///< show the population of a town in his label?
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    66
	uint8  right_mouse_btn_emulation;        ///< should we emulate right mouse clicking?
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    67
	uint8  scrollwheel_scrolling;            ///< scrolling using the scroll wheel?
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    68
	uint8  scrollwheel_multiplier;           ///< how much 'wheel' per incoming event from the OS?
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    69
	bool   pause_on_newgame;                 ///< whether to start new games paused or not
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    70
	bool   enable_signal_gui;                ///< show the signal GUI when the signal button is pressed
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    71
	Year   ending_year;                      ///< end of the game (just show highscore)
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    72
	Year   colored_news_year;                ///< when does newspaper become colored?
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    73
	bool   timetable_in_ticks;               ///< whether to show the timetable in ticks rather than days
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    74
	bool   bridge_pillars;                   ///< show bridge pillars for high bridges
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    75
	bool   auto_euro;                        ///< automatically switch to euro in 2002
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    76
	byte   drag_signals_density;             ///< many signals density
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    77
	Year   semaphore_build_before;           ///< build semaphore signals automatically before this year
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    78
	bool   autorenew;                        ///< should autorenew be enabled for new companies?
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    79
	int16  autorenew_months;                 ///< how many months from EOL of vehicles should autorenew trigger for new companies?
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    80
	int32  autorenew_money;                  ///< how much money before autorenewing for new companies?
9466
5a1d4eb2ae07 (svn r13386) -Fix: global currency/units setting being overriden when loading a savegame.
rubidium
parents: 9423
diff changeset
    81
	byte   news_message_timeout;             ///< how much longer than the news message "age" should we keep the message in the history
9785
2005c34d0811 (svn r13927) -Add [YAPP]: Draw reserved tracks darker, toggeld by a patch setting. (michi_cc)
rubidium
parents: 9466
diff changeset
    82
	bool   show_track_reservation;           ///< highlight reserved tracks.
9793
359d2460833b (svn r13935) -Codechange [YAPP]: PBS signals can now be built with the normal signal tools. (michi_cc)
rubidium
parents: 9785
diff changeset
    83
	uint8  default_signal_type;              ///< the signal type to build by default.
359d2460833b (svn r13935) -Codechange [YAPP]: PBS signals can now be built with the normal signal tools. (michi_cc)
rubidium
parents: 9785
diff changeset
    84
	uint8  cycle_signal_types;               ///< what signal types to cycle with the build signal tool.
9906
9c0a829bf58e (svn r14056) -Fix [FS#2192]: the console backlog is too small for list_patches. Now it'll only remove backlog items when there are more than a threshold and when they are there longer than (another) threshold.
rubidium
parents: 9902
diff changeset
    85
9c0a829bf58e (svn r14056) -Fix [FS#2192]: the console backlog is too small for list_patches. Now it'll only remove backlog items when there are more than a threshold and when they are there longer than (another) threshold.
rubidium
parents: 9902
diff changeset
    86
	uint16 console_backlog_timeout;          ///< the minimum amount of time items should be in the console backlog before they will be removed in ~3 seconds granularity.
9c0a829bf58e (svn r14056) -Fix [FS#2192]: the console backlog is too small for list_patches. Now it'll only remove backlog items when there are more than a threshold and when they are there longer than (another) threshold.
rubidium
parents: 9902
diff changeset
    87
	uint16 console_backlog_length;           ///< the minimum amount of items in the console backlog before items will be removed.
9902
035856ac432b (svn r14052) -Codechange: make the size of the chat message "box" configurable and increase the default size slightly so it can hold the longest chat messages.
rubidium
parents: 9810
diff changeset
    88
#ifdef ENABLE_NETWORK
035856ac432b (svn r14052) -Codechange: make the size of the chat message "box" configurable and increase the default size slightly so it can hold the longest chat messages.
rubidium
parents: 9810
diff changeset
    89
	uint16 network_chat_box_width;           ///< width of the chat box in pixels
035856ac432b (svn r14052) -Codechange: make the size of the chat message "box" configurable and increase the default size slightly so it can hold the longest chat messages.
rubidium
parents: 9810
diff changeset
    90
	uint8  network_chat_box_height;          ///< height of the chat box in lines
035856ac432b (svn r14052) -Codechange: make the size of the chat message "box" configurable and increase the default size slightly so it can hold the longest chat messages.
rubidium
parents: 9810
diff changeset
    91
#endif
9466
5a1d4eb2ae07 (svn r13386) -Fix: global currency/units setting being overriden when loading a savegame.
rubidium
parents: 9423
diff changeset
    92
};
5a1d4eb2ae07 (svn r13386) -Fix: global currency/units setting being overriden when loading a savegame.
rubidium
parents: 9423
diff changeset
    93
5a1d4eb2ae07 (svn r13386) -Fix: global currency/units setting being overriden when loading a savegame.
rubidium
parents: 9423
diff changeset
    94
/** Settings related to currency/unit systems. */
5a1d4eb2ae07 (svn r13386) -Fix: global currency/units setting being overriden when loading a savegame.
rubidium
parents: 9423
diff changeset
    95
struct LocaleSettings {
9358
2e1e4d2f71dd (svn r13255) -Codechange: move _opt to _settings.
rubidium
parents: 9354
diff changeset
    96
	byte   currency;                         ///< currency we currently use
2e1e4d2f71dd (svn r13255) -Codechange: move _opt to _settings.
rubidium
parents: 9354
diff changeset
    97
	byte   units;                            ///< unit system we show everything
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
    98
};
0
29654efe3188 (svn r1) Import of revision 975 of old (crashed) SVN
truelight
parents:
diff changeset
    99
9420
8a38703928e8 (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings.
rubidium
parents: 9413
diff changeset
   100
/** All settings related to the network. */
8a38703928e8 (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings.
rubidium
parents: 9413
diff changeset
   101
struct NetworkSettings {
8a38703928e8 (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings.
rubidium
parents: 9413
diff changeset
   102
#ifdef ENABLE_NETWORK
9423
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   103
	uint16 sync_freq;                                     ///< how often do we check whether we are still in-sync
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   104
	uint8  frame_freq;                                    ///< how often do we send commands to the clients
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   105
	uint16 max_join_time;                                 ///< maximum amount of time, in game ticks, a client may take to join
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   106
	bool   pause_on_join;                                 ///< pause the game when people join
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   107
	char   server_bind_ip[NETWORK_HOSTNAME_LENGTH];       ///< IP address the server binds to
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   108
	uint16 server_port;                                   ///< port the server listens on
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   109
	char   server_name[NETWORK_NAME_LENGTH];              ///< name of the server
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   110
	char   server_password[NETWORK_PASSWORD_LENGTH];      ///< passowrd for joining this server
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   111
	char   rcon_password[NETWORK_PASSWORD_LENGTH];        ///< passowrd for rconsole (server side)
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   112
	bool   server_advertise;                              ///< advertise the server to the masterserver
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   113
	uint8  lan_internet;                                  ///< search on the LAN or internet for servers
10207
c291a21b304e (svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
rubidium
parents: 9906
diff changeset
   114
	char   client_name[NETWORK_NAME_LENGTH];              ///< name of the player (as client)
9423
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   115
	char   default_company_pass[NETWORK_PASSWORD_LENGTH]; ///< default password for new companies in encrypted form
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   116
	char   connect_to_ip[NETWORK_HOSTNAME_LENGTH];        ///< default for the "Add server" query
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   117
	char   network_id[NETWORK_UNIQUE_ID_LENGTH];          ///< semi-unique ID of the client
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   118
	bool   autoclean_companies;                           ///< automatically remove companies that are not in use
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   119
	uint8  autoclean_unprotected;                         ///< remove passwordless companies after this many months
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   120
	uint8  autoclean_protected;                           ///< remove the password from passworded companies after this many months
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   121
	uint8  max_companies;                                 ///< maximum amount of companies
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   122
	uint8  max_clients;                                   ///< maximum amount of clients
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   123
	uint8  max_spectators;                                ///< maximum amount of spectators
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   124
	Year   restart_game_year;                             ///< year the server restarts
10207
c291a21b304e (svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
rubidium
parents: 9906
diff changeset
   125
	uint8  min_active_clients;                            ///< minimum amount of active clients to unpause the game
9423
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   126
	uint8  server_lang;                                   ///< language of the server
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   127
	bool   reload_cfg;                                    ///< reload the config file before restarting
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   128
	char   last_host[NETWORK_HOSTNAME_LENGTH];            ///< IP address of the last joined server
48fbefddabb3 (svn r13337) -Doc: add documentation to some variables in settings_type.h.
rubidium
parents: 9420
diff changeset
   129
	uint16 last_port;                                     ///< port of the last joined server
9420
8a38703928e8 (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings.
rubidium
parents: 9413
diff changeset
   130
#else /* ENABLE_NETWORK */
8a38703928e8 (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings.
rubidium
parents: 9413
diff changeset
   131
#endif
8a38703928e8 (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings.
rubidium
parents: 9413
diff changeset
   132
};
8a38703928e8 (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings.
rubidium
parents: 9413
diff changeset
   133
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   134
/** Settings related to the creation of games. */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   135
struct GameCreationSettings {
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   136
	uint32 generation_seed;                  ///< noise seed for world generation
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   137
	Year   starting_year;                    ///< starting date
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   138
	uint8  map_x;                            ///< X size of map
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   139
	uint8  map_y;                            ///< Y size of map
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   140
	byte   land_generator;                   ///< the landscape generator
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   141
	byte   oil_refinery_limit;               ///< distance oil refineries allowed from map edge
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   142
	byte   snow_line_height;                 ///< a number 0-15 that configured snow line height
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   143
	byte   tgen_smoothness;                  ///< how rough is the terrain from 0-3
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   144
	byte   tree_placer;                      ///< the tree placer algorithm
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   145
	byte   heightmap_rotation;               ///< rotation director for the heightmap
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   146
	byte   se_flat_world_height;             ///< land height a flat world gets in SE
9358
2e1e4d2f71dd (svn r13255) -Codechange: move _opt to _settings.
rubidium
parents: 9354
diff changeset
   147
	byte   town_name;                        ///< the town name generator used for town names
2e1e4d2f71dd (svn r13255) -Codechange: move _opt to _settings.
rubidium
parents: 9354
diff changeset
   148
	byte   landscape;                        ///< the landscape we're currently in
2e1e4d2f71dd (svn r13255) -Codechange: move _opt to _settings.
rubidium
parents: 9354
diff changeset
   149
	byte   snow_line;                        ///< the snowline level in this game
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   150
};
0
29654efe3188 (svn r1) Import of revision 975 of old (crashed) SVN
truelight
parents:
diff changeset
   151
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   152
/** Settings related to construction in-game */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   153
struct ConstructionSettings {
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   154
	bool   build_on_slopes;                  ///< allow building on slopes
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   155
	bool   autoslope;                        ///< allow terraforming under things
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   156
	bool   longbridges;                      ///< allow 100 tile long bridges
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   157
	bool   signal_side;                      ///< show signals on right side
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   158
	bool   extra_dynamite;                   ///< extra dynamite
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   159
	bool   road_stop_on_town_road;           ///< allow building of drive-through road stops on town owned roads
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   160
	uint8  raw_industry_construction;        ///< type of (raw) industry construction (none, "normal", prospecting)
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   161
};
8464
84733620d05e (svn r12034) -Codechange: A bit of code style cleaning, regarding comments.
belugas
parents: 8268
diff changeset
   162
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   163
/** Settings related to the AI. */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   164
struct AISettings {
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   165
	bool   ainew_active;                     ///< is the new AI active?
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   166
	bool   ai_in_multiplayer;                ///< so we allow AIs in multiplayer
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   167
	bool   ai_disable_veh_train;             ///< disable types for AI
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   168
	bool   ai_disable_veh_roadveh;           ///< disable types for AI
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   169
	bool   ai_disable_veh_aircraft;          ///< disable types for AI
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   170
	bool   ai_disable_veh_ship;              ///< disable types for AI
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   171
};
8464
84733620d05e (svn r12034) -Codechange: A bit of code style cleaning, regarding comments.
belugas
parents: 8268
diff changeset
   172
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   173
/** Settings related to the old pathfinder. */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   174
struct OPFSettings {
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   175
	uint16 pf_maxlength;                     ///< maximum length when searching for a train route for new pathfinder
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   176
	byte   pf_maxdepth;                      ///< maximum recursion depth when searching for a train route for new pathfinder
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   177
};
1218
c6a624956ac6 (svn r1722) -Feature: Bigger maps - anyone?
tron
parents: 1178
diff changeset
   178
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   179
/** Settings related to the new pathfinder. */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   180
struct NPFSettings {
1700
e1fe3446d013 (svn r2204) - Add: [NPF] NPF now has a maximum number of nodes it will search. The default value is 5000 for now, which is an educated guess. Probably needs some finetuning. Hopefully this "feature" can be removed later on, when more sophisticated means of limiting the pathfinder have been implemented. This should make ships and larger networks playable for now, though.
matthijs
parents: 1688
diff changeset
   181
	/**
4549
106ed18a7675 (svn r6381) -Cleanup: make the '/* */' comments that span multiple lines more uniform.
rubidium
parents: 4387
diff changeset
   182
	 * The maximum amount of search nodes a single NPF run should take. This
106ed18a7675 (svn r6381) -Cleanup: make the '/* */' comments that span multiple lines more uniform.
rubidium
parents: 4387
diff changeset
   183
	 * limit should make sure performance stays at acceptable levels at the cost
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   184
	 * of not being perfect anymore.
4549
106ed18a7675 (svn r6381) -Cleanup: make the '/* */' comments that span multiple lines more uniform.
rubidium
parents: 4387
diff changeset
   185
	 */
1700
e1fe3446d013 (svn r2204) - Add: [NPF] NPF now has a maximum number of nodes it will search. The default value is 5000 for now, which is an educated guess. Probably needs some finetuning. Hopefully this "feature" can be removed later on, when more sophisticated means of limiting the pathfinder have been implemented. This should make ships and larger networks playable for now, though.
matthijs
parents: 1688
diff changeset
   186
	uint32 npf_max_search_nodes;
e1fe3446d013 (svn r2204) - Add: [NPF] NPF now has a maximum number of nodes it will search. The default value is 5000 for now, which is an educated guess. Probably needs some finetuning. Hopefully this "feature" can be removed later on, when more sophisticated means of limiting the pathfinder have been implemented. This should make ships and larger networks playable for now, though.
matthijs
parents: 1688
diff changeset
   187
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   188
	uint32 npf_rail_firstred_penalty;        ///< the penalty for when the first signal is red (and it is not an exit or combo signal)
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   189
	uint32 npf_rail_firstred_exit_penalty;   ///< the penalty for when the first signal is red (and it is an exit or combo signal)
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   190
	uint32 npf_rail_lastred_penalty;         ///< the penalty for when the last signal is red
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   191
	uint32 npf_rail_station_penalty;         ///< the penalty for station tiles
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   192
	uint32 npf_rail_slope_penalty;           ///< the penalty for sloping upwards
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   193
	uint32 npf_rail_curve_penalty;           ///< the penalty for curves
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   194
	uint32 npf_rail_depot_reverse_penalty;   ///< the penalty for reversing in depots
9805
c6e69a451215 (svn r13947) -Codechange [YAPP]: Added YAPP-related penalties to NPF. (michi_cc)
rubidium
parents: 9801
diff changeset
   195
	uint32 npf_rail_pbs_cross_penalty;       ///< the penalty for crossing a reserved rail track
c6e69a451215 (svn r13947) -Codechange [YAPP]: Added YAPP-related penalties to NPF. (michi_cc)
rubidium
parents: 9801
diff changeset
   196
	uint32 npf_rail_pbs_signal_back_penalty; ///< the penalty for passing a pbs signal from the backside
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   197
	uint32 npf_buoy_penalty;                 ///< the penalty for going over (through) a buoy
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   198
	uint32 npf_water_curve_penalty;          ///< the penalty for curves
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   199
	uint32 npf_road_curve_penalty;           ///< the penalty for curves
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   200
	uint32 npf_crossing_penalty;             ///< the penalty for level crossings
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   201
	uint32 npf_road_drive_through_penalty;   ///< the penalty for going through a drive-through road stop
6248
e4a2ed7e5613 (svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};
rubidium
parents: 6091
diff changeset
   202
};
0
29654efe3188 (svn r1) Import of revision 975 of old (crashed) SVN
truelight
parents:
diff changeset
   203
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   204
/** Settings related to the yet another pathfinder. */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   205
struct YAPFSettings {
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   206
	bool   disable_node_optimization;        ///< whether to use exit-dir instead of trackdir in node key
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   207
	uint32 max_search_nodes;                 ///< stop path-finding when this number of nodes visited
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   208
	bool   ship_use_yapf;                    ///< use YAPF for ships
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   209
	bool   road_use_yapf;                    ///< use YAPF for road
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   210
	bool   rail_use_yapf;                    ///< use YAPF for rail
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   211
	uint32 road_slope_penalty;               ///< penalty for up-hill slope
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   212
	uint32 road_curve_penalty;               ///< penalty for curves
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   213
	uint32 road_crossing_penalty;            ///< penalty for level crossing
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   214
	uint32 road_stop_penalty;                ///< penalty for going through a drive-through road stop
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   215
	bool   rail_firstred_twoway_eol;         ///< treat first red two-way signal as dead end
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   216
	uint32 rail_firstred_penalty;            ///< penalty for first red signal
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   217
	uint32 rail_firstred_exit_penalty;       ///< penalty for first red exit signal
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   218
	uint32 rail_lastred_penalty;             ///< penalty for last red signal
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   219
	uint32 rail_lastred_exit_penalty;        ///< penalty for last red exit signal
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   220
	uint32 rail_station_penalty;             ///< penalty for non-target station tile
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   221
	uint32 rail_slope_penalty;               ///< penalty for up-hill slope
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   222
	uint32 rail_curve45_penalty;             ///< penalty for curve
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   223
	uint32 rail_curve90_penalty;             ///< penalty for 90-deg curve
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   224
	uint32 rail_depot_reverse_penalty;       ///< penalty for reversing in the depot
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   225
	uint32 rail_crossing_penalty;            ///< penalty for level crossing
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   226
	uint32 rail_look_ahead_max_signals;      ///< max. number of signals taken into consideration in look-ahead load balancer
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   227
	int32  rail_look_ahead_signal_p0;        ///< constant in polynomial penalty function
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   228
	int32  rail_look_ahead_signal_p1;        ///< constant in polynomial penalty function
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   229
	int32  rail_look_ahead_signal_p2;        ///< constant in polynomial penalty function
9799
c91afc4512fe (svn r13941) -Codechange [YAPP]: Added YAPP-related penalties to YAPF. (michi_cc)
rubidium
parents: 9793
diff changeset
   230
	uint32 rail_pbs_cross_penalty;           ///< penalty for crossing a reserved tile
9801
a6564ba05558 (svn r13943) -Codechange [YAPP]: Reserved station tiles can now be penalized more in YAPF. This should help with spread out stations. (michi_cc)
rubidium
parents: 9800
diff changeset
   231
	uint32 rail_pbs_station_penalty;         ///< penalty for crossing a reserved station tile
9799
c91afc4512fe (svn r13941) -Codechange [YAPP]: Added YAPP-related penalties to YAPF. (michi_cc)
rubidium
parents: 9793
diff changeset
   232
	uint32 rail_pbs_signal_back_penalty;     ///< penalty for passing a pbs signal from the backside
9800
a8cbb9206502 (svn r13942) -Codechange [YAPP]: Add a penalty for double slips to YAPF. (michi_cc)
rubidium
parents: 9799
diff changeset
   233
	uint32 rail_doubleslip_penalty;          ///< penalty for passing a double slip switch
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   234
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   235
	uint32 rail_longer_platform_penalty;           ///< penalty for longer  station platform than train
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   236
	uint32 rail_longer_platform_per_tile_penalty;  ///< penalty for longer  station platform than train (per tile)
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   237
	uint32 rail_shorter_platform_penalty;          ///< penalty for shorter station platform than train
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   238
	uint32 rail_shorter_platform_per_tile_penalty; ///< penalty for shorter station platform than train (per tile)
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   239
};
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   240
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   241
/** Settings related to all pathfinders. */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   242
struct PathfinderSettings {
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   243
	uint8  pathfinder_for_trains;            ///< the pathfinder to use for trains
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   244
	uint8  pathfinder_for_roadvehs;          ///< the pathfinder to use for roadvehicles
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   245
	uint8  pathfinder_for_ships;             ///< the pathfinder to use for ships
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   246
	bool   new_pathfinding_all;              ///< use the newest pathfinding algorithm for all
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   247
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   248
	bool   roadveh_queue;                    ///< buggy road vehicle queueing
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   249
	bool   forbid_90_deg;                    ///< forbid trains to make 90 deg turns
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   250
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   251
	byte   wait_oneway_signal;               ///< waitingtime in days before a oneway signal
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   252
	byte   wait_twoway_signal;               ///< waitingtime in days before a twoway signal
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   253
9810
c82ec2332a1b (svn r13952) -Add [YAPP]: Trains now reserve paths trough PBS signals. Bump savegame version. (michi_cc)
rubidium
parents: 9805
diff changeset
   254
	bool   reserve_paths;                    ///< always reserve paths regardless of signal type.
c82ec2332a1b (svn r13952) -Add [YAPP]: Trains now reserve paths trough PBS signals. Bump savegame version. (michi_cc)
rubidium
parents: 9805
diff changeset
   255
	byte   wait_for_pbs_path;                ///< how long to wait for a path reservation.
c82ec2332a1b (svn r13952) -Add [YAPP]: Trains now reserve paths trough PBS signals. Bump savegame version. (michi_cc)
rubidium
parents: 9805
diff changeset
   256
	byte   path_backoff_interval;            ///< ticks between checks for a free path.
c82ec2332a1b (svn r13952) -Add [YAPP]: Trains now reserve paths trough PBS signals. Bump savegame version. (michi_cc)
rubidium
parents: 9805
diff changeset
   257
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   258
	OPFSettings  opf;                        ///< pathfinder settings for the old pathfinder
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   259
	NPFSettings  npf;                        ///< pathfinder settings for the new pathfinder
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   260
	YAPFSettings yapf;                       ///< pathfinder settings for the yet another pathfinder
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   261
};
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   262
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   263
/** Settings related to orders. */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   264
struct OrderSettings {
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   265
	bool   improved_load;                    ///< improved loading algorithm
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   266
	bool   gradual_loading;                  ///< load vehicles gradually
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   267
	bool   selectgoods;                      ///< only send the goods to station if a train has been there
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   268
	bool   gotodepot;                        ///< allow goto depot in orders
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   269
	bool   no_servicing_if_no_breakdowns;    ///< dont send vehicles to depot when breakdowns are disabled
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   270
	bool   timetabling;                      ///< whether to allow timetabling
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   271
	bool   serviceathelipad;                 ///< service helicopters at helipads automatically (no need to send to depot)
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   272
};
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   273
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   274
/** Settings related to vehicles. */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   275
struct VehicleSettings {
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   276
	bool   mammoth_trains;                   ///< allow very long trains
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   277
	bool   realistic_acceleration;           ///< realistic acceleration for trains
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   278
	bool   wagon_speed_limits;               ///< enable wagon speed limits
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   279
	bool   disable_elrails;                  ///< when true, the elrails are disabled
10207
c291a21b304e (svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
rubidium
parents: 9906
diff changeset
   280
	UnitID max_trains;                       ///< max trains in game per company
c291a21b304e (svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
rubidium
parents: 9906
diff changeset
   281
	UnitID max_roadveh;                      ///< max trucks in game per company
c291a21b304e (svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
rubidium
parents: 9906
diff changeset
   282
	UnitID max_aircraft;                     ///< max planes in game per company
c291a21b304e (svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
rubidium
parents: 9906
diff changeset
   283
	UnitID max_ships;                        ///< max ships in game per company
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   284
	bool   servint_ispercent;                ///< service intervals are in percents
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   285
	uint16 servint_trains;                   ///< service interval for trains
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   286
	uint16 servint_roadveh;                  ///< service interval for road vehicles
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   287
	uint16 servint_aircraft;                 ///< service interval for aircraft
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   288
	uint16 servint_ships;                    ///< service interval for ships
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   289
	uint8  plane_speed;                      ///< divisor for speed of aircraft
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   290
	uint8  freight_trains;                   ///< value to multiply the weight of cargo by
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   291
	bool   dynamic_engines;                  ///< enable dynamic allocation of engine data
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   292
	bool   never_expire_vehicles;            ///< never expire vehicles
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   293
	byte   extend_vehicle_life;              ///< extend vehicle life by this many years
9358
2e1e4d2f71dd (svn r13255) -Codechange: move _opt to _settings.
rubidium
parents: 9354
diff changeset
   294
	byte   road_side;                        ///< the side of the road vehicles drive on
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   295
};
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   296
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   297
/** Settings related to the economy. */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   298
struct EconomySettings {
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   299
	bool   inflation;                        ///< disable inflation
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   300
	bool   bribe;                            ///< enable bribing the local authority
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   301
	bool   smooth_economy;                   ///< smooth economy
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   302
	bool   allow_shares;                     ///< allow the buying/selling of shares
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   303
	byte   dist_local_authority;             ///< distance for town local authority, default 20
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   304
	bool   exclusive_rights;                 ///< allow buying exclusive rights
10207
c291a21b304e (svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
rubidium
parents: 9906
diff changeset
   305
	bool   give_money;                       ///< allow giving other companies money
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   306
	bool   mod_road_rebuild;                 ///< roadworks remove unneccesary RoadBits
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   307
	bool   multiple_industry_per_town;       ///< allow many industries of the same type per town
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   308
	bool   same_industry_close;              ///< allow same type industries to be built close to each other
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   309
	uint8  town_growth_rate;                 ///< town growth rate
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   310
	uint8  larger_towns;                     ///< the number of cities to build. These start off larger and grow twice as fast
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   311
	uint8  initial_city_size;                ///< multiplier for the initial size of the cities compared to towns
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   312
	TownLayoutByte town_layout;              ///< select town layout
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   313
	bool   station_noise_level;              ///< build new airports when the town noise level is still within accepted limits
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   314
	uint16 town_noise_population[3];         ///< population to base decision on noise evaluation (@see town_council_tolerance)
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   315
};
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   316
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   317
/** Settings related to stations. */
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   318
struct StationSettings {
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   319
	bool   modified_catchment;               ///< different-size catchment areas
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   320
	bool   join_stations;                    ///< allow joining of train stations
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   321
	bool   nonuniform_stations;              ///< allow nonuniform train stations
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   322
	bool   adjacent_stations;                ///< allow stations to be built directly adjacent to other stations
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   323
	bool   always_small_airport;             ///< always allow small airports
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   324
	byte   station_spread;                   ///< amount a station may spread
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   325
};
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   326
9413
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   327
/** All settings together for the game. */
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   328
struct GameSettings {
9358
2e1e4d2f71dd (svn r13255) -Codechange: move _opt to _settings.
rubidium
parents: 9354
diff changeset
   329
	DifficultySettings   difficulty;         ///< settings related to the difficulty
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   330
	GameCreationSettings game_creation;      ///< settings used during the creation of a game (map)
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   331
	ConstructionSettings construction;       ///< construction of things in-game
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   332
	AISettings           ai;                 ///< what may the AI do?
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   333
	PathfinderSettings   pf;                 ///< settings for all pathfinders
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   334
	OrderSettings        order;              ///< settings related to orders
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   335
	VehicleSettings      vehicle;            ///< options for vehicles
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   336
	EconomySettings      economy;            ///< settings to change the economy
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   337
	StationSettings      station;            ///< settings related to station management
9466
5a1d4eb2ae07 (svn r13386) -Fix: global currency/units setting being overriden when loading a savegame.
rubidium
parents: 9423
diff changeset
   338
	LocaleSettings       locale;             ///< settings related to used currency/unit system in the current game
9354
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   339
};
845e07db4549 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
rubidium
parents: 9346
diff changeset
   340
9413
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   341
/** All settings that are only important for the local client. */
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   342
struct ClientSettings {
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   343
	GUISettings          gui;                ///< settings related to the GUI
9420
8a38703928e8 (svn r13334) -Codechange: move the network settings variables from network/network_internal to settings.
rubidium
parents: 9413
diff changeset
   344
	NetworkSettings      network;            ///< settings related to the network
9413
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   345
};
0
29654efe3188 (svn r1) Import of revision 975 of old (crashed) SVN
truelight
parents:
diff changeset
   346
9413
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   347
/** The current settings for this game. */
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   348
extern ClientSettings _settings_client;
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   349
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   350
/** The current settings for this game. */
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   351
extern GameSettings _settings_game;
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   352
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   353
/** The settings values that are used for new games and/or modified in config file. */
7042a8ec3fa8 (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
rubidium
parents: 9406
diff changeset
   354
extern GameSettings _settings_newgame;
0
29654efe3188 (svn r1) Import of revision 975 of old (crashed) SVN
truelight
parents:
diff changeset
   355
8208
3d0590aa2124 (svn r11771) -Codechange: split settings.h into better separated headers.
rubidium
parents: 8151
diff changeset
   356
#endif /* SETTINGS_TYPE_H */