Changeset - r17208:161dac8c9172
[Not reviewed]
master
0 8 0
rubidium - 13 years ago 2011-02-04 15:13:20
rubidium@openttd.org
(svn r21957) -Cleanup: gotodepot and timetabling settings are more or less useless; just don't use depot orders or timetabling if you don't want to use it
8 files changed with 5 insertions and 29 deletions:
0 comments (0 inline, 0 general)
src/economy.cpp
Show inline comments
 
@@ -1331,13 +1331,13 @@ static void LoadUnloadVehicle(Vehicle *v
 

	
 
			unloading_time = gradual_loading_wait_time[v->type];
 
		}
 
		/* We loaded less cargo than possible for all cargo types and it's not full
 
		 * load and we're not supposed to wait any longer: stop loading. */
 
		if (!anything_unloaded && full_load_amount == 0 && !(v->current_order.GetLoadType() & OLFB_FULL_LOAD) &&
 
				(!_settings_game.order.timetabling || v->current_order_time >= (uint)max(v->current_order.wait_time - v->lateness_counter, 0))) {
 
				v->current_order_time >= (uint)max(v->current_order.wait_time - v->lateness_counter, 0)) {
 
			SetBit(v->vehicle_flags, VF_STOP_LOADING);
 
		}
 
	} else {
 
		bool finished_loading = true;
 
		if (v->current_order.GetLoadType() & OLFB_FULL_LOAD) {
 
			if (v->current_order.GetLoadType() == OLF_FULL_LOAD_ANY) {
src/lang/english.txt
Show inline comments
 
@@ -1112,13 +1112,12 @@ STR_CONFIG_SETTING_JOINSTATIONS         
 
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS                        :{LTBLUE}Allow to join stations not directly adjacent: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_IMPROVEDLOAD                                 :{LTBLUE}Use improved loading algorithm: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_GRADUAL_LOADING                              :{LTBLUE}Load vehicles gradually: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_INFLATION                                    :{LTBLUE}Inflation: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_SELECTGOODS                                  :{LTBLUE}Deliver cargo to a station only when there is a demand: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_LONGBRIDGES                                  :{LTBLUE}Allow building very long bridges: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_GOTODEPOT                                    :{LTBLUE}Allow goto depot orders: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD             :{LTBLUE}Manual primary industry construction method: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE        :none
 
STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL      :as other industries
 
STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :prospecting
 
STR_CONFIG_SETTING_INDUSTRY_PLATFORM                            :{LTBLUE}Flat area around industries: {ORANGE}{STRING1} tile{P 0:1 "" s}
 
STR_CONFIG_SETTING_MULTIPINDTOWN                                :{LTBLUE}Allow multiple similar industries per town: {ORANGE}{STRING1}
 
@@ -1229,13 +1228,12 @@ STR_CONFIG_SETTING_ADVANCED_VEHICLE_LIST
 
STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_OWN                   :Own company
 
STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_ALL                   :All companies
 
STR_CONFIG_SETTING_LOADING_INDICATORS                           :{LTBLUE}Use loading indicators: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_LOADING_INDICATORS_OFF                       :Off
 
STR_CONFIG_SETTING_LOADING_INDICATORS_OWN                       :Own company
 
STR_CONFIG_SETTING_LOADING_INDICATORS_ALL                       :All companies
 
STR_CONFIG_SETTING_TIMETABLE_ALLOW                              :{LTBLUE}Enable timetabling for vehicles: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_TIMETABLE_IN_TICKS                           :{LTBLUE}Show timetable in ticks rather than days: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE             :{LTBLUE}Show arrival and departure in timetables: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_QUICKGOTO                                    :{LTBLUE}Quick creation of vehicle orders: {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE                            :{LTBLUE}Default rail type (after new game/game load): {ORANGE}{STRING1}
 
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST                      :First available
 
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_LAST                       :Last available
src/order_gui.cpp
Show inline comments
 
@@ -322,13 +322,12 @@ static Order GetOrderCmdFromTile(const V
 
{
 
	Order order;
 
	order.next  = NULL;
 
	order.index = 0;
 

	
 
	/* check depot first */
 
	if (_settings_game.order.gotodepot) {
 
		switch (GetTileType(tile)) {
 
			case MP_RAILWAY:
 
				if (v->type == VEH_TRAIN && IsTileOwner(tile, _local_company)) {
 
					if (IsRailDepot(tile)) {
 
						order.MakeGoToDepot(GetDepotIndex(tile), ODTFB_PART_OF_ORDERS,
 
								_settings_client.gui.new_nonstop ? ONSF_NO_STOP_AT_INTERMEDIATE_STATIONS : ONSF_STOP_EVERYWHERE);
 
@@ -365,13 +364,12 @@ static Order GetOrderCmdFromTile(const V
 
				}
 
				break;
 

	
 
			default:
 
				break;
 
		}
 
	}
 

	
 
	/* check waypoint */
 
	if (IsRailWaypointTile(tile) &&
 
			v->type == VEH_TRAIN &&
 
			IsTileOwner(tile, _local_company)) {
 
		order.MakeGoToWaypoint(Waypoint::GetByTile(tile)->index);
 
@@ -775,16 +773,12 @@ public:
 
		this->OnInvalidateData(-2);
 
	}
 

	
 
	virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize)
 
	{
 
		switch (widget) {
 
			case ORDER_WIDGET_TIMETABLE_VIEW:
 
				if (!_settings_game.order.timetabling) size->width = 0;
 
				break;
 

	
 
			case ORDER_WIDGET_ORDER_LIST:
 
				resize->height = FONT_HEIGHT_NORMAL;
 
				size->height = 6 * resize->height + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
 
				break;
 

	
 
			case ORDER_WIDGET_COND_VARIABLE: {
src/settings_gui.cpp
Show inline comments
 
@@ -1260,14 +1260,12 @@ uint SettingsPage::Draw(GameSettings *se
 
	}
 
	return cur_row;
 
}
 

	
 

	
 
static SettingEntry _settings_ui_display[] = {
 
	SettingEntry("gui.vehicle_speed"),
 
	SettingEntry("gui.status_long_date"),
 
	SettingEntry("gui.date_format_in_default_names"),
 
	SettingEntry("gui.population_in_label"),
 
	SettingEntry("gui.measure_tooltip"),
 
	SettingEntry("gui.loading_indicators"),
 
	SettingEntry("gui.liveries"),
 
	SettingEntry("gui.show_track_reservation"),
 
@@ -1464,25 +1462,23 @@ static SettingsPage _settings_vehicles_t
 

	
 
static SettingEntry _settings_vehicles[] = {
 
	SettingEntry(&_settings_vehicles_routing_page, STR_CONFIG_SETTING_VEHICLES_ROUTING),
 
	SettingEntry(&_settings_vehicles_autorenew_page, STR_CONFIG_SETTING_VEHICLES_AUTORENEW),
 
	SettingEntry(&_settings_vehicles_servicing_page, STR_CONFIG_SETTING_VEHICLES_SERVICING),
 
	SettingEntry(&_settings_vehicles_trains_page, STR_CONFIG_SETTING_VEHICLES_TRAINS),
 
	SettingEntry("order.gotodepot"),
 
	SettingEntry("gui.new_nonstop"),
 
	SettingEntry("gui.order_review_system"),
 
	SettingEntry("gui.vehicle_income_warn"),
 
	SettingEntry("gui.lost_vehicle_warn"),
 
	SettingEntry("vehicle.never_expire_vehicles"),
 
	SettingEntry("vehicle.max_trains"),
 
	SettingEntry("vehicle.max_roadveh"),
 
	SettingEntry("vehicle.max_aircraft"),
 
	SettingEntry("vehicle.max_ships"),
 
	SettingEntry("vehicle.plane_speed"),
 
	SettingEntry("vehicle.plane_crashes"),
 
	SettingEntry("order.timetabling"),
 
	SettingEntry("vehicle.dynamic_engines"),
 
	SettingEntry("vehicle.roadveh_acceleration_model"),
 
	SettingEntry("vehicle.roadveh_slope_steepness"),
 
	SettingEntry("vehicle.smoke_amount"),
 
};
 
/** Vehicles sub-page */
src/settings_type.h
Show inline comments
 
@@ -326,15 +326,13 @@ struct PathfinderSettings {
 

	
 
/** Settings related to orders. */
 
struct OrderSettings {
 
	bool   improved_load;                    ///< improved loading algorithm
 
	bool   gradual_loading;                  ///< load vehicles gradually
 
	bool   selectgoods;                      ///< only send the goods to station if a train has been there
 
	bool   gotodepot;                        ///< allow goto depot in orders
 
	bool   no_servicing_if_no_breakdowns;    ///< dont send vehicles to depot when breakdowns are disabled
 
	bool   timetabling;                      ///< whether to allow timetabling
 
	bool   serviceathelipad;                 ///< service helicopters at helipads automatically (no need to send to depot)
 
};
 

	
 
/** Settings related to vehicles. */
 
struct VehicleSettings {
 
	bool   mammoth_trains;                   ///< allow very long trains
src/table/settings.h
Show inline comments
 
@@ -390,13 +390,13 @@ const SettingDesc _settings[] = {
 
	 SDT_CONDVAR(GameSettings, vehicle.roadveh_acceleration_model,   SLE_UINT8,139, SL_MAX_VERSION, 0,MS,     0,     0,       1, 1, STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL, RoadVehAccelerationModelChanged),
 
	 SDT_CONDVAR(GameSettings, vehicle.train_slope_steepness,        SLE_UINT8,133, SL_MAX_VERSION, 0, 0,     3,     0,      10, 1, STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS,  TrainSlopeSteepnessChanged),
 
	 SDT_CONDVAR(GameSettings, vehicle.roadveh_slope_steepness,      SLE_UINT8,139, SL_MAX_VERSION, 0, 0,     7,     0,      10, 1, STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS,  RoadVehSlopeSteepnessChanged),
 
	    SDT_BOOL(GameSettings, pf.forbid_90_deg,                                                    0, 0, false,                    STR_CONFIG_SETTING_FORBID_90_DEG,          NULL),
 
	    SDT_BOOL(GameSettings, vehicle.mammoth_trains,                                              0,NN,  true,                    STR_CONFIG_SETTING_MAMMOTHTRAINS,          NULL),
 
	 SDT_CONDVAR(GameSettings, vehicle.smoke_amount,                 SLE_UINT8,145, SL_MAX_VERSION, 0,MS,     1,     0,       2, 0, STR_CONFIG_SETTING_SMOKE_AMOUNT,           NULL),
 
	    SDT_BOOL(GameSettings, order.gotodepot,                                                     0, 0,  true,                    STR_CONFIG_SETTING_GOTODEPOT,              NULL),
 
	SDT_CONDNULL(                                                            1,  0, 158), // order.gotodepot
 
	    SDT_BOOL(GameSettings, pf.roadveh_queue,                                                    0, 0,  true,                    STR_CONFIG_SETTING_ROAD_VEHICLE_QUEUEING,  NULL),
 

	
 
	SDT_CONDBOOL(GameSettings, pf.new_pathfinding_all,                           0,             86, 0, 0, false,                    STR_NULL,                                  NULL),
 
	SDT_CONDBOOL(GameSettings, pf.yapf.ship_use_yapf,                           28,             86, 0, 0, false,                    STR_NULL,                                  NULL),
 
	SDT_CONDBOOL(GameSettings, pf.yapf.road_use_yapf,                           28,             86, 0, 0,  true,                    STR_NULL,                                  NULL),
 
	SDT_CONDBOOL(GameSettings, pf.yapf.rail_use_yapf,                           28,             86, 0, 0,  true,                    STR_NULL,                                  NULL),
 
@@ -416,13 +416,13 @@ const SettingDesc _settings[] = {
 
	SDTG_CONDVAR(NULL,  SLE_UINT16, 0, D0, _old_vds.servint_ships,       360, 5, 800, 0, STR_NULL, NULL, 0, 119),
 
	SDTG_CONDVAR(NULL,  SLE_UINT16, 0, D0, _old_vds.servint_aircraft,    150, 5, 800, 0, STR_NULL, NULL, 0, 119),
 
	    SDT_BOOL(GameSettings, order.no_servicing_if_no_breakdowns,                                 0, 0,  true,                    STR_CONFIG_SETTING_NOSERVICE,              NULL),
 
	    SDT_BOOL(GameSettings, vehicle.wagon_speed_limits,                                          0,NN,  true,                    STR_CONFIG_SETTING_WAGONSPEEDLIMITS,       UpdateConsists),
 
	SDT_CONDBOOL(GameSettings, vehicle.disable_elrails,                         38, SL_MAX_VERSION, 0,NN, false,                    STR_CONFIG_SETTING_DISABLE_ELRAILS,        SettingsDisableElrail),
 
	 SDT_CONDVAR(GameSettings, vehicle.freight_trains,               SLE_UINT8, 39, SL_MAX_VERSION, 0,NN,     1,     1,     255, 1, STR_CONFIG_SETTING_FREIGHT_TRAINS,         NULL),
 
	SDT_CONDBOOL(GameSettings, order.timetabling,                               67, SL_MAX_VERSION, 0, 0,  true,                    STR_CONFIG_SETTING_TIMETABLE_ALLOW,        NULL),
 
	SDT_CONDNULL(                                                            1, 67, 158), // order.timetabling
 
	 SDT_CONDVAR(GameSettings, vehicle.plane_speed,                  SLE_UINT8, 90, SL_MAX_VERSION, 0,NN,     4,     1,       4, 0, STR_CONFIG_SETTING_PLANE_SPEED,            NULL),
 
	SDT_CONDBOOL(GameSettings, vehicle.dynamic_engines,                         95, SL_MAX_VERSION, 0,NN,  true,                    STR_CONFIG_SETTING_DYNAMIC_ENGINES,        ChangeDynamicEngines),
 
	 SDT_CONDVAR(GameSettings, vehicle.plane_crashes,                SLE_UINT8,138, SL_MAX_VERSION, 0,MS,     2,     0,       2, 1, STR_CONFIG_SETTING_PLANE_CRASHES,          NULL),
 

	
 
	    SDT_BOOL(GameSettings, station.join_stations,                                               0, 0,  true,                    STR_CONFIG_SETTING_JOINSTATIONS,           NULL),
 
	SDTC_CONDBOOL(             gui.sg_full_load_any,                            22,             92, 0, 0,  true,                    STR_NULL,                                  NULL),
src/timetable_cmd.cpp
Show inline comments
 
@@ -57,14 +57,12 @@ static void ChangeTimetable(Vehicle *v, 
 
 * - p2 = (bit  0-15) - Waiting or travelling time as specified by p1 bit 28
 
 * @param text unused
 
 * @return the cost of this operation or an error
 
 */
 
CommandCost CmdChangeTimetable(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const char *text)
 
{
 
	if (!_settings_game.order.timetabling) return CMD_ERROR;
 

	
 
	VehicleID veh = GB(p1, 0, 20);
 

	
 
	Vehicle *v = Vehicle::GetIfValid(veh);
 
	if (v == NULL || !v->IsPrimaryVehicle()) return CMD_ERROR;
 

	
 
	CommandCost ret = CheckOwnership(v->owner);
 
@@ -116,14 +114,12 @@ CommandCost CmdChangeTimetable(TileIndex
 
 * @param p2 unused
 
 * @param text unused
 
 * @return the cost of this operation or an error
 
 */
 
CommandCost CmdSetVehicleOnTime(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const char *text)
 
{
 
	if (!_settings_game.order.timetabling) return CMD_ERROR;
 

	
 
	VehicleID veh = GB(p1, 0, 20);
 

	
 
	Vehicle *v = Vehicle::GetIfValid(veh);
 
	if (v == NULL || !v->IsPrimaryVehicle()) return CMD_ERROR;
 

	
 
	CommandCost ret = CheckOwnership(v->owner);
 
@@ -145,14 +141,12 @@ CommandCost CmdSetVehicleOnTime(TileInde
 
 * @param p2 The timetable start date.
 
 * @param text Not used.
 
 * @return The error or cost of the operation.
 
 */
 
CommandCost CmdSetTimetableStart(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const char *text)
 
{
 
	if (!_settings_game.order.timetabling) return CMD_ERROR;
 

	
 
	Vehicle *v = Vehicle::GetIfValid(GB(p1, 0, 20));
 
	if (v == NULL || !v->IsPrimaryVehicle()) return CMD_ERROR;
 

	
 
	CommandCost ret = CheckOwnership(v->owner);
 
	if (ret.Failed()) return ret;
 

	
 
@@ -186,14 +180,12 @@ CommandCost CmdSetTimetableStart(TileInd
 
 * - p2 = (bit 1) - Set to 1 to preserve waiting times in non-destructive mode
 
 * @param text unused
 
 * @return the cost of this operation or an error
 
 */
 
CommandCost CmdAutofillTimetable(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const char *text)
 
{
 
	if (!_settings_game.order.timetabling) return CMD_ERROR;
 

	
 
	VehicleID veh = GB(p1, 0, 20);
 

	
 
	Vehicle *v = Vehicle::GetIfValid(veh);
 
	if (v == NULL || !v->IsPrimaryVehicle()) return CMD_ERROR;
 

	
 
	CommandCost ret = CheckOwnership(v->owner);
 
@@ -234,13 +226,12 @@ void UpdateVehicleTimetable(Vehicle *v, 
 
{
 
	uint timetabled = travelling ? v->current_order.travel_time : v->current_order.wait_time;
 
	uint time_taken = v->current_order_time;
 

	
 
	v->current_order_time = 0;
 

	
 
	if (!_settings_game.order.timetabling) return;
 
	if (v->current_order.IsType(OT_AUTOMATIC)) return; // no timetabling of auto orders
 

	
 
	VehicleOrderID first_manual_order = 0;
 
	for (Order *o = v->GetFirstOrder(); o != NULL && o->IsType(OT_AUTOMATIC); o = o->next) {
 
		++first_manual_order;
 
	}
src/vehicle.cpp
Show inline comments
 
@@ -165,13 +165,13 @@ bool Vehicle::NeedsServicing() const
 
 * Checks if the current order should be interupted for a service-in-depot-order.
 
 * @see NeedsServicing()
 
 * @return true if the current order should be interupted.
 
 */
 
bool Vehicle::NeedsAutomaticServicing() const
 
{
 
	if (_settings_game.order.gotodepot && this->HasDepotOrder()) return false;
 
	if (this->HasDepotOrder()) return false;
 
	if (this->current_order.IsType(OT_LOADING)) return false;
 
	if (this->current_order.IsType(OT_GOTO_DEPOT) && this->current_order.GetDepotOrderType() != ODTFB_SERVICE) return false;
 
	return NeedsServicing();
 
}
 

	
 
uint Vehicle::Crash(bool flooded)
 
@@ -1909,14 +1909,13 @@ void Vehicle::HandleLoading(bool mode)
 
{
 
	switch (this->current_order.GetType()) {
 
		case OT_LOADING: {
 
			uint wait_time = max(this->current_order.wait_time - this->lateness_counter, 0);
 

	
 
			/* Not the first call for this tick, or still loading */
 
			if (mode || !HasBit(this->vehicle_flags, VF_LOADING_FINISHED) ||
 
					(_settings_game.order.timetabling && this->current_order_time < wait_time)) return;
 
			if (mode || !HasBit(this->vehicle_flags, VF_LOADING_FINISHED) || this->current_order_time < wait_time) return;
 

	
 
			this->PlayLeaveStationSound();
 

	
 
			this->LeaveStation();
 

	
 
			break;
0 comments (0 inline, 0 general)