summaryrefslogtreecommitdiff
path: root/src/saveload/depot_sl.cpp
AgeCommit message (Collapse)Author
2021-07-06Cleanup: Remove now unneeded ChunkHandler membersglx22
2021-07-06Codechange: Use ChunkHandlers sub-classesglx22
2021-07-06Codechange: Use static array of references to ChunkHandlerglx22
2021-07-02Add: store headers for most savegame chunksPatric Stout
When a header is added, the chunk changes from CH_ARRAY type to CH_TABLE type.
2021-07-02Feature: framework to make savegames self-descriptivePatric Stout
We won't be able to make it fully self-descriptive (looking at you MAP-chunks), but anything else can. With this framework, we can add headers for each chunk explaining how each chunk looks like in detail. They also will all be tables, making it a lot easier to read in external tooling, and opening the way to consider a database (like SQLite) to use as savegame format. Lastly, with the headers in the savegame, you can freely add fields without needing a savegame version bump; older versions of OpenTTD will simply ignore the new field. This also means we can remove all the SLE_CONDNULL, as they are irrelevant. The next few commits will start using this framework.
2021-06-06Codechange: Remove FOR_ALL_CHUNK_HANDLERSglx22
Co-Authored-By: Patric Stout <truebrain@openttd.org>
2021-05-31Codechange: C++-ify lists for SaveLoad (#9323)Patric Stout
Basically, this changes "SaveLoad *" to either: 1) "SaveLoadTable" if a list of SaveLoads was meant 2) "SaveLoad &" if a single entry was meant As added bonus, this removes SL_END / SLE_END / SLEG_END. This also adds core/span.hpp, a "std::span"-lite.
2020-05-21Codechange: Use std::string for most of the user-settable custom names.Michael Lutz
2019-12-21Codechange: Replace FOR_ALL_DEPOTS with range-based for loopsglx
2019-11-10Cleanup: Removed SVN headersS. D. Cloudt
2019-04-10Codechange: Use null pointer literal instead of the NULL macroHenry Wilson
2019-02-02Codechange: Convert saveload numbers to enum values.Peter Nelson
(This was mostly achieved with a few in-place regexes)
2019-02-02Codechange: Make saveload version upper bound exclusive, i.e. version object ↵Peter Nelson
was removed instead of version object last appeared.
2014-04-23(svn r26482) -Codechange: add an include that allows us to undefine/redefine ↵rubidium
"unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
2010-11-21(svn r21284) -Codechange: Rename CheckSavegameVersion() to ↵alberth
IsSavegameVersionBefore().
2010-06-20(svn r20003) -Feature [FS#3886]: [NewGRF] var 43 depot build date for railtypesyexo
2010-06-13(svn r19973) -Codechange: Add another procedure to chunk handlers for ↵frosch
checking savegames (empty for now).
2010-05-13(svn r19806) -Codechange: silence one warningsmatz
2010-05-12(svn r19799) -Change: give depots an unique name in the same manner buoys ↵rubidium
and waypoints are named
2009-08-21(svn r17248) -Fix: add GPL license notice where appropriaterubidium
2009-05-17(svn r16338) -Codechange: split loading of references to two phasessmatz
In the first phase, indexes are stored. In the second phase, indexes are checked for validity and converted to pointers
2009-01-04(svn r14828) -Codechange: move most of save/load-specific code to separate filessmatz