1 /*
2  * This file is part of OpenTTD.
3  * 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.
4  * 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.
5  * 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 <http://www.gnu.org/licenses/>.
6  */
7 
8 /**
9  * @file game_changelog.hpp Lists all changes / additions to the API.
10  *
11  * Only new / renamed / deleted api functions will be listed here. A list of
12  * bug fixes can be found in the normal changelog. Note that removed API
13  * functions may still be available if you return an older API version
14  * in GetAPIVersion() in info.nut.
15  *
16  * \b 12.0
17  *
18  * API additions:
19  * \li GSNewGRF
20  * \li GSNewGRFList
21  * \li GSMarine::BT_LOCK
22  * \li GSMarine::BT_CANAL
23  * \li GSTile::IsSeaTile
24  * \li GSTile::IsRiverTile
25  * \li GSTile::BT_CLEAR_WATER
26  * \li GSObjectTypeList
27  * \li GSObjectType
28  *
29  * \b 1.11.0
30  *
31  * API additions:
32  * \li GSCargo::GetName
33  * \li GSEventStoryPageButtonClick
34  * \li GSEventStoryPageTileSelect
35  * \li GSEventStoryPageVehicleSelect
36  * \li GSIndustry::GetCargoLastAcceptedDate
37  * \li GSIndustry::GetControlFlags
38  * \li GSIndustry::GetExclusiveConsumer
39  * \li GSIndustry::GetExclusiveSupplier
40  * \li GSIndustry::GetLastProductionYear
41  * \li GSIndustry::SetControlFlags
42  * \li GSIndustry::SetExclusiveConsumer
43  * \li GSIndustry::SetExclusiveSupplier
44  * \li GSIndustry::SetText
45  * \li GSStoryPage::MakePushButtonReference
46  * \li GSStoryPage::MakeTileButtonReference
47  * \li GSStoryPage::MakeVehicleButtonReference
48  * \li GSPriorityQueue
49  *
50  * Other changes:
51  * \li GSCompany::ChangeBankBalance takes one extra parameter to refer to a location to show text effect on
52  * \li GSGoal::Question and GSGoal::QuestionClient no longer require to have any buttons except for the window type GSGoal.QT_QUESTION
53  *
54  * \b 1.10.0
55  *
56  * API additions:
57  * \li GSVehicle::BuildVehicleWithRefit
58  * \li GSVehicle::GetBuildWithRefitCapacity
59  * \li GSRoad::GetName
60  * \li GSRoad::RoadVehCanRunOnRoad
61  * \li GSRoad::RoadVehHasPowerOnRoad
62  * \li GSRoad::ConvertRoadType
63  * \li GSRoad::GetMaxSpeed
64  * \li GSEngine::EnableForCompany
65  * \li GSEngine::DisableForCompany
66  *
67  * \b 1.9.0
68  *
69  * API additions:
70  * \li GSAirport::GetMonthlyMaintenanceCost
71  * \li GSClient
72  * \li GSClientList
73  * \li GSClientList_Company
74  * \li GSViewport::ScrollEveryoneTo
75  * \li GSViewport::ScrollCompanyClientsTo
76  * \li GSViewport::ScrollClientTo
77  * \li GSGoal::QuestionClient
78  *
79  * Other changes:
80  * \li GSBridge::GetName takes one extra parameter to refer the vehicle type
81  *
82  * \b 1.8.0
83  *
84  * No changes
85  *
86  * API additions:
87  * \li GSRoad::ERR_ROADTYPE_DISALLOWS_CROSSING
88  *
89  * \b 1.7.0 - 1.7.2
90  *
91  * No changes
92  *
93  * \b 1.6.1 - 1.6.0
94  *
95  * No changes
96  *
97  * \b 1.5.3 - 1.5.1
98  *
99  * No changes
100  *
101  * \b 1.5.0
102  *
103  * API additions:
104  * \li GSList::SwapList
105  * \li GSStation::GetCargoPlanned
106  * \li GSStation::GetCargoPlannedFrom
107  * \li GSStation::GetCargoPlannedFromVia
108  * \li GSStation::GetCargoPlannedVia
109  * \li GSStation::GetCargoWaitingFromVia
110  * \li GSStationList_CargoPlannedByFrom
111  * \li GSStationList_CargoPlannedByVia
112  * \li GSStationList_CargoPlannedFromByVia
113  * \li GSStationList_CargoPlannedViaByFrom
114  * \li GSStationList_CargoWaitingByFrom
115  * \li GSStationList_CargoWaitingByVia
116  * \li GSStationList_CargoWaitingFromByVia
117  * \li GSStationList_CargoWaitingViaByFrom
118  *
119  * Other changes:
120  * \li GSNews::Create takes two extra parameters to refer to a location, station,
121  *     industry, or town. The user can click at the news message to jump to the
122  *     referred location.
123  *
124  * \b 1.4.4 - 1.4.3
125  *
126  * No changes
127  *
128  * \b 1.4.2
129  *
130  * Other changes:
131  * \li GSCargoMonitor delivery and pickup monitor functions have improved boundary checking for
132  *     their parameters, and return \c -1 if they are found out of bounds.
133  *
134  * \b 1.4.1
135  *
136  * No changes
137  *
138  * \b 1.4.0
139  *
140  * API additions:
141  * \li AICargo::GetDistributionType
142  * \li GSCompany::ChangeBankBalance
143  * \li GSDate::DATE_INVALID
144  * \li GSDate::IsValidDate
145  * \li GSGoal::GT_STORY_PAGE
146  * \li GSGoal::IsCompleted
147  * \li GSGoal::SetCompleted
148  * \li GSGoal::SetProgress
149  * \li GSGoal::SetText
150  * \li GSStation::HasCargoRating
151  * \li GSStation::GetCargoWaitingFrom
152  * \li GSStation::GetCargoWaitingVia
153  * \li GSStoryPage
154  * \li GSStoryPageList
155  * \li GSStoryPageElementList
156  * \li GSTile::GetTerrainType
157  * \li GSTown::FoundTown
158  * \li GSTown::GetFundBuildingsDuration
159  * \li GSTown::SetName
160  * \li GSTown::TOWN_GROWTH_NONE
161  * \li GSTown::TOWN_GROWTH_NORMAL
162  *
163  * Other changes:
164  * \li GSGoal::New can now create up to 64000 concurrent goals. The old limit was 256 goals.
165  * \li GSStation::GetCargoRating does return -1 for cargo-station combinations that
166  *     do not have a rating yet instead of returning 69.
167  *
168  * \b 1.3.3 - 1.3.2
169  *
170  * No changes
171  *
172  * \b 1.3.1
173  *
174  * API additions:
175  * \li GSTile::GetTerrainType
176  *
177  * \b 1.3.0
178  *
179  * API additions:
180  * \li GSCargoMonitor
181  * \li GSEngine::IsValidEngine and GSEngine::IsBuildable when outside GSCompanyMode scope
182  * \li GSEventExclusiveTransportRights
183  * \li GSEventRoadReconstruction
184  * \li GSNews::NT_ACCIDENT, GSNews::NT_COMPANY_INFO, GSNews::NT_ADVICE, GSNews::NT_ACCEPTANCE
185  * \li GSIndustryType::IsProcessingIndustry
186  * \li GSStation::IsAirportClosed
187  * \li GSStation::OpenCloseAirport
188  * \li GSController::Break
189  * \li GSIndustryType::BuildIndustry, GSIndustryType::CanBuildIndustry, GSIndustryType::ProspectIndustry and GSIndustryType::CanProspectIndustry when outside GSCompanyMode scope
190  *
191  * Other changes:
192  * \li Company specific goals are now removed when a company goes bankrupt or is taken over.
193  *
194  * \b 1.2.3 - 1.2.1
195  *
196  * No changes
197  *
198  * \b 1.2.0
199  * \li First stable release with the NoGo framework.
200  */
201