Jonathan G Rennison
19835b51ee
Move StationCargoList and FlowStatMap out of GoodsEntry struct
...
Move them into a new GoodsEntryData struct referenced
using a std::unique_ptr from GoodsEntry.
The unique_ptr may be nullptr if the cargo list and flow stat map
are both empty (this is the case for unused cargoes).
This reduces GoodsEntry from 128 to 24 bytes,
and Station from 8680 to 2024 bytes,
(on Linux x86_64).
2023-08-19 21:24:29 +01:00
Jonathan G Rennison
25ed7c2b53
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/music.cpp
# src/script/api/script_company.cpp
# src/script/api/script_event_types.cpp
# src/script/api/script_group.cpp
# src/script/api/script_object.cpp
# src/script/api/script_road.cpp
2023-03-11 00:06:13 +00:00
Rubidium
8d443d1379
Add: company mode enforcement checks to functions with command or company access
...
Command functions are those that call ScriptObject::Command, and functions
with company access are any that call ScriptObject::GetCompany. This is a bit
over-protective, but having the check everywhere makes it easier to validate
that no check is missing automatically instead of by review.
2023-03-08 22:33:47 +01:00
Rubidium
534f2419ad
Add: precondition checks to functions that work with both valid company and deity
...
These are functions that either use ScriptObject::Command or ScriptObject::GetCompany.
This is a bit over-protective, but having the check everywhere makes it easier to
validate that no check is missing automatically instead of by review.
At this moment these checks will not do anything useful, as either IsValid or
IsDeity from ScriptCompanyMode returns true, but that will change later.
2023-03-08 22:33:47 +01:00
Jonathan G Rennison
d94e8d7b5c
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/script/api/script_object.cpp
# src/script/api/script_roadtypelist.cpp
2023-03-06 21:43:40 +00:00
Rubidium
83946ca31d
Codechange: use GSCompanyMode::IsValid, IsDeity, and the precondition helpers
...
Direct 1:1 replacements in the code, and comments now refer to either
GSCompanyMode::IsValid or GSCompanyMode::IsDeity instead of several variations
on "company mode active" or "no company mode active".
2023-03-06 22:34:09 +01:00
Jonathan G Rennison
faa77e2605
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/script/api/script_company.cpp
# src/script/api/script_date.cpp
# src/script/api/script_date.hpp
# src/script/api/script_gamesettings.cpp
# src/script/api/script_order.hpp
# src/script/api/script_town.cpp
# src/script/api/script_window.cpp
2023-03-06 01:05:43 +00:00
glx22
a9a55f2153
Codechange: Use SQInteger for generic numbers in script_station
2023-03-06 00:32:12 +01:00
Michael Lutz
6fe445e6c0
Codechange: Un-bitstuff station/depot/waypoint commands.
2021-12-16 22:28:32 +01:00
Michael Lutz
6691ee3b96
Codechange: Template script command calls.
2021-12-16 22:28:32 +01:00
Jonathan G Rennison
cbdd9f84d8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/console_gui.cpp
# src/lang/korean.txt
# src/video/sdl2_v.cpp
# src/video/sdl2_v.h
# src/window.cpp
# src/window_gui.h
2019-11-12 18:43:10 +00:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
Jonathan G Rennison
ba8ed880c1
Merge branch 'master' into jgrpp-nrt
...
Merge NRT feature
# Conflicts:
# docs/landscape.html
# docs/landscape_grid.html
# src/bridge_map.h
# src/build_vehicle_gui.cpp
# src/company_base.h
# src/company_cmd.cpp
# src/misc_gui.cpp
# src/newgrf.cpp
# src/newgrf_engine.cpp
# src/pathfinder/follow_track.hpp
# src/pathfinder/npf/npf.cpp
# src/road_cmd.cpp
# src/road_func.h
# src/road_gui.cpp
# src/road_map.h
# src/road_type.h
# src/roadveh_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/company_sl.cpp
# src/script/api/script_bridge.cpp
# src/table/newgrf_debug_data.h
# src/tile_cmd.h
# src/town_cmd.cpp
# src/tunnel_map.h
# src/tunnelbridge_cmd.cpp
2019-07-11 19:45:56 +01:00
peter1138
c02ef3e456
Feature: Add NotRoadTypes (NRT)
2019-05-01 21:36:27 +02:00
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
2019-04-11 18:14:13 +01:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
Jonathan G Rennison
37a58fd11d
Add setting to increase station catchment radius.
...
Update acceptance and refresh screen when catchment settings change.
2016-11-20 01:49:10 +00:00
rubidium
0c2f4bdc2b
(svn r27020) -Cleanup: some coding style consistency improvements (mostly spaces)
2014-10-15 18:31:37 +00:00
rubidium
d534c80e94
(svn r27020) -Cleanup: some coding style consistency improvements (mostly spaces)
2014-10-15 18:31:37 +00:00
fonsinchen
b6833fc6ef
(svn r26892) -Feature: Script API for retrieving planned flow
2014-09-21 16:20:14 +00:00
fonsinchen
73d273ffd6
(svn r26892) -Feature: Script API for retrieving planned flow
2014-09-21 16:20:14 +00:00
fonsinchen
38ee1c7b92
(svn r26563) -Fix (r26558): Don't pass explicit template arguments to std::make_pair.
2014-05-04 19:03:54 +00:00
fonsinchen
5fc2c3dcc8
(svn r26563) -Fix (r26558): Don't pass explicit template arguments to std::make_pair.
2014-05-04 19:03:54 +00:00
fonsinchen
cee5920fcc
(svn r26558) -Fix: be more explicit about the type of iterators in the waiting cargo API
2014-05-04 15:16:58 +00:00
fonsinchen
20f49ecf00
(svn r26558) -Fix: be more explicit about the type of iterators in the waiting cargo API
2014-05-04 15:16:58 +00:00
fonsinchen
7836470f60
(svn r26557) -Fix: clean up, test (somewhat), and complete the API for waiting cargo
2014-05-04 13:57:48 +00:00
fonsinchen
bb269661d4
(svn r26557) -Fix: clean up, test (somewhat), and complete the API for waiting cargo
2014-05-04 13:57:48 +00:00
rubidium
2be4215f43
(svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
2014-04-23 20:13:33 +00:00
rubidium
0463dbdc9e
(svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
2014-04-23 20:13:33 +00:00
zuu
886d3a06f7
(svn r26398) -Codechange/fix (26396): A tab that should be a space
2014-03-11 22:08:58 +00:00
zuu
e73cd7e81d
(svn r26398) -Codechange/fix (26396): A tab that should be a space
2014-03-11 22:08:58 +00:00
zuu
ad639258f8
(svn r26396) -Add: [script] AI/GS APIs to get cargo waiting from/via other station
2014-03-10 22:18:53 +00:00
zuu
ae23f519f7
(svn r26396) -Add: [script] AI/GS APIs to get cargo waiting from/via other station
2014-03-10 22:18:53 +00:00
frosch
c5d7445704
(svn r25185) -Fix [FS#5508]: Remove ambivalent functions CargoList::Empty() and Count(), and replace them with VehicleCargoList::StoredCount(), TotalCount(), StationCargoList::AvailableCount() and TotalCount(). (fonsinchen)
2013-04-13 13:42:08 +00:00
frosch
5eddbb338b
(svn r25185) -Fix [FS#5508]: Remove ambivalent functions CargoList::Empty() and Count(), and replace them with VehicleCargoList::StoredCount(), TotalCount(), StationCargoList::AvailableCount() and TotalCount(). (fonsinchen)
2013-04-13 13:42:08 +00:00
rubidium
25aed3423c
(svn r25150) -Fix [FS#5514]: [Script] The was no way to differentiate between a cargo-station combination with or without rating, so introduce [AI|GS]Station::HasRating and let GetRating return -1 when there is no rating
2013-04-06 12:36:33 +00:00
rubidium
7a3d549f2f
(svn r25150) -Fix [FS#5514]: [Script] The was no way to differentiate between a cargo-station combination with or without rating, so introduce [AI|GS]Station::HasRating and let GetRating return -1 when there is no rating
2013-04-06 12:36:33 +00:00
michi_cc
90fa700cc7
(svn r24127) -Feature [FS#1497]: Allow closing airports for incoming aircraft. (Based on patch by cirdan)
2012-04-17 19:43:18 +00:00
michi_cc
aa47d6c7f2
(svn r24127) -Feature [FS#1497]: Allow closing airports for incoming aircraft. (Based on patch by cirdan)
2012-04-17 19:43:18 +00:00
rubidium
d5eeab43b7
(svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files
2012-01-03 21:32:51 +00:00
rubidium
6d6be50ae0
(svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files
2012-01-03 21:32:51 +00:00
truebrain
95b199e313
(svn r23632) -Add: GSCompanyMode, to change company in GameScripts
2011-12-19 21:05:25 +00:00
truebrain
cc3f42794d
(svn r23632) -Add: GSCompanyMode, to change company in GameScripts
2011-12-19 21:05:25 +00:00
truebrain
10b0f4a879
(svn r23624) -Add: ScriptVehicle/ScriptStation/ScriptSign::GetOwner, to get the owner of those objects (GameScript only)
2011-12-19 21:00:40 +00:00
truebrain
d85a628dde
(svn r23624) -Add: ScriptVehicle/ScriptStation/ScriptSign::GetOwner, to get the owner of those objects (GameScript only)
2011-12-19 21:00:40 +00:00
truebrain
ae134dd2f6
(svn r23615) -Add: more API functions exposed to NoGo (part 2)
2011-12-19 20:57:34 +00:00
truebrain
9359c6fc47
(svn r23615) -Add: more API functions exposed to NoGo (part 2)
2011-12-19 20:57:34 +00:00
yexo
15dc9acb01
(svn r23453) -Add: [NoAI] AIStation.GetStationCoverageRadius(StationID)
2011-12-08 23:28:43 +00:00
yexo
b5d707b7a0
(svn r23453) -Add: [NoAI] AIStation.GetStationCoverageRadius(StationID)
2011-12-08 23:28:43 +00:00
yexo
4430cadfa1
(svn r23452) -Codechange: document instead of writing to stderr that ScriptStation::GetCoverageRadius doesn't work for STATION_AIRPORT
2011-12-08 23:28:02 +00:00