diff --git a/src/script/api/CMakeLists.txt b/src/script/api/CMakeLists.txt index 6a8cb66d9c..f41efd068c 100644 --- a/src/script/api/CMakeLists.txt +++ b/src/script/api/CMakeLists.txt @@ -151,7 +151,6 @@ add_files( script_basestation.hpp script_bridge.hpp script_bridgelist.hpp - script_timemode.hpp script_cargo.hpp script_cargolist.hpp script_cargomonitor.hpp @@ -226,7 +225,6 @@ add_files( script_basestation.cpp script_bridge.cpp script_bridgelist.cpp - script_timemode.cpp script_cargo.cpp script_cargolist.cpp script_cargomonitor.cpp diff --git a/src/script/api/ai_changelog.hpp b/src/script/api/ai_changelog.hpp index e6b524a857..39037efd06 100644 --- a/src/script/api/ai_changelog.hpp +++ b/src/script/api/ai_changelog.hpp @@ -20,7 +20,6 @@ * \b 14.0 * * API additions: - * \li AITimeMode * \li AITown::ROAD_LAYOUT_RANDOM * \li AIVehicle::IsPrimaryVehicle * \li AITileList_StationCoverage diff --git a/src/script/api/game_changelog.hpp b/src/script/api/game_changelog.hpp index 8ebf05310c..8963190e26 100644 --- a/src/script/api/game_changelog.hpp +++ b/src/script/api/game_changelog.hpp @@ -24,7 +24,6 @@ * \li GSAsyncMode * \li GSCompanyMode::IsValid * \li GSCompanyMode::IsDeity - * \li GSTimeMode * \li GSTown::ROAD_LAYOUT_RANDOM * \li GSVehicle::IsPrimaryVehicle * \li GSOrder::SetOrderJumpTo diff --git a/src/script/api/script_date.cpp b/src/script/api/script_date.cpp index 076f196cd4..4d3a3866cf 100644 --- a/src/script/api/script_date.cpp +++ b/src/script/api/script_date.cpp @@ -9,9 +9,7 @@ #include "../../stdafx.h" #include "script_date.hpp" -#include "script_timemode.hpp" #include "../../timer/timer_game_calendar.h" -#include "../../timer/timer_game_economy.h" #include @@ -24,21 +22,14 @@ /* static */ ScriptDate::Date ScriptDate::GetCurrentDate() { - if (ScriptTimeMode::IsCalendarMode()) return (ScriptDate::Date)TimerGameCalendar::date.base(); - - return (ScriptDate::Date)TimerGameEconomy::date.base(); + return (ScriptDate::Date)TimerGameCalendar::date.base(); } /* static */ SQInteger ScriptDate::GetYear(ScriptDate::Date date) { if (date < 0) return DATE_INVALID; - if (ScriptTimeMode::IsCalendarMode()) { - ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); - return ymd.year.base(); - } - - ::TimerGameEconomy::YearMonthDay ymd = ::TimerGameEconomy::ConvertDateToYMD(date); + ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); return ymd.year.base(); } @@ -46,12 +37,7 @@ { if (date < 0) return DATE_INVALID; - if (ScriptTimeMode::IsCalendarMode()) { - ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); - return ymd.month + 1; - } - - ::TimerGameEconomy::YearMonthDay ymd = ::TimerGameEconomy::ConvertDateToYMD(date); + ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); return ymd.month + 1; } @@ -59,12 +45,7 @@ { if (date < 0) return DATE_INVALID; - if (ScriptTimeMode::IsCalendarMode()) { - ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); - return ymd.day; - } - - ::TimerGameEconomy::YearMonthDay ymd = ::TimerGameEconomy::ConvertDateToYMD(date); + ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); return ymd.day; } @@ -74,9 +55,7 @@ if (day_of_month < 1 || day_of_month > 31) return DATE_INVALID; if (year < 0 || year > CalendarTime::MAX_YEAR) return DATE_INVALID; - if (ScriptTimeMode::IsCalendarMode()) return (ScriptDate::Date)::TimerGameCalendar::ConvertYMDToDate(year, month - 1, day_of_month).base(); - - return (ScriptDate::Date)::TimerGameEconomy::ConvertYMDToDate(year, month - 1, day_of_month).base(); + return (ScriptDate::Date)::TimerGameCalendar::ConvertYMDToDate(year, month - 1, day_of_month).base(); } /* static */ SQInteger ScriptDate::GetSystemTime() diff --git a/src/script/api/script_object.cpp b/src/script/api/script_object.cpp index 9b0f6bd259..8e3a684240 100644 --- a/src/script/api/script_object.cpp +++ b/src/script/api/script_object.cpp @@ -200,16 +200,6 @@ ScriptObject::ActiveInstance::~ActiveInstance() return GetStorage()->allow_do_command; } -/* static */ void ScriptObject::SetTimeMode(bool calendar) -{ - GetStorage()->time_mode = calendar; -} - -/* static */ bool ScriptObject::IsCalendarTimeMode() -{ - return GetStorage()->time_mode; -} - /* static */ void ScriptObject::SetCompany(CompanyID company) { if (GetStorage()->root_company == INVALID_OWNER) GetStorage()->root_company = company; diff --git a/src/script/api/script_object.hpp b/src/script/api/script_object.hpp index c9bf1a4fb4..28cac81d59 100644 --- a/src/script/api/script_object.hpp +++ b/src/script/api/script_object.hpp @@ -244,20 +244,6 @@ protected: */ static bool GetAllowDoCommand(); - /** - * Set if the script is running in calendar time or economy time mode. - * Calendar time is used by OpenTTD for technology like vehicle introductions and expiration, and variable snowline. It can be sped up or slowed down by the player. - * Economy time always runs at the same pace and handles things like cargo production, everything related to money, etc. - * @param Calendar Should we use calendar time mode? (Set to false for economy time mode.) - */ - static void SetTimeMode(bool calendar); - - /** - * Check if the script is operating in calendar time mode, or in economy time mode. See SetTimeMode() for more information. - * @return True if we are in calendar time mode, false if we are in economy time mode. - */ - static bool IsCalendarTimeMode(); - /** * Set the current company to execute commands for or request * information about. diff --git a/src/script/api/script_timemode.cpp b/src/script/api/script_timemode.cpp deleted file mode 100644 index f927368f8a..0000000000 --- a/src/script/api/script_timemode.cpp +++ /dev/null @@ -1,29 +0,0 @@ -/* - * This file is part of OpenTTD. - * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. - * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . - */ - -/** @file script_timemode.cpp Implementation of ScriptTimeMode. */ - -#include "../../stdafx.h" -#include "script_timemode.hpp" - -#include "../../safeguards.h" - -ScriptTimeMode::ScriptTimeMode(bool calendar) -{ - this->last_time_mode = ScriptObject::IsCalendarTimeMode(); - ScriptObject::SetTimeMode(calendar); -} - -ScriptTimeMode::~ScriptTimeMode() -{ - ScriptObject::SetTimeMode(this->last_time_mode); -} - -/* static */ bool ScriptTimeMode::IsCalendarMode() -{ - return ScriptObject::IsCalendarTimeMode(); -} diff --git a/src/script/api/script_timemode.hpp b/src/script/api/script_timemode.hpp deleted file mode 100644 index eb03b0b3f9..0000000000 --- a/src/script/api/script_timemode.hpp +++ /dev/null @@ -1,45 +0,0 @@ -/* - * This file is part of OpenTTD. - * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. - * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . - */ - -/** @file script_timemode.hpp Switch the time mode. */ - -#ifndef SCRIPT_TIMEMODE_HPP -#define SCRIPT_TIMEMODE_HPP - -#include "script_object.hpp" - -/** - * Class to switch the current time. - * If you create an instance of this class, the mode will be switched to either calendar time or economy time mode. - * @note Destroying this object will restore the previous time mode. - * @api ai game - */ -class ScriptTimeMode : public ScriptObject { -private: - bool last_time_mode; ///< The last time mode we were using. -public: - /** - * Creating an instance of this class switches the time mode used for queries and commands. - * Calendar time is used by OpenTTD for technology like vehicle introductions and expiration, and variable snowline. It can be sped up or slowed down by the player. - * Economy time always runs at the same pace and handles things like cargo production, everything related to money, etc. - * @param Calendar Should we use calendar time mode? (Set to false for economy time mode.) - */ - ScriptTimeMode(bool calendar); - - /** - * Destroying this instance resets the time mode to the mode it was in when the instance was created. - */ - ~ScriptTimeMode(); - - /** - * Check if the script is operating in calendar time mode, or in economy time mode. See ScriptTimeMode() for more information. - * @return True if we are in calendar time mode, false if we are in economy time mode. - */ - static bool IsCalendarMode(); -}; - -#endif /* SCRIPT_TIMEMODE_HPP */ diff --git a/src/script/script_storage.hpp b/src/script/script_storage.hpp index a2d7d91dc2..6f856908d5 100644 --- a/src/script/script_storage.hpp +++ b/src/script/script_storage.hpp @@ -41,7 +41,6 @@ private: class ScriptObject *mode_instance; ///< The instance belonging to the current build mode. ScriptAsyncModeProc *async_mode; ///< The current command async mode we are in. class ScriptObject *async_mode_instance; ///< The instance belonging to the current command async mode. - bool time_mode; ///< True if we in calendar time mode, or false (default) if we are in economy time mode. CompanyID root_company; ///< The root company, the company that the script really belongs to. CompanyID company; ///< The current company. @@ -71,7 +70,6 @@ public: mode_instance (nullptr), async_mode (nullptr), async_mode_instance (nullptr), - time_mode (false), root_company (INVALID_OWNER), company (INVALID_OWNER), delay (1),