diff options
author | smatz <smatz@openttd.org> | 2009-01-04 15:32:25 +0000 |
---|---|---|
committer | smatz <smatz@openttd.org> | 2009-01-04 15:32:25 +0000 |
commit | 7368c740a646c958797b5dff90d6c5b51236e2a4 (patch) | |
tree | 56e0ff1f4048e467cf123e92ca788c3c4bbc0f94 /src/animated_tile.cpp | |
parent | c9e8fd307e36b3d35f5bf7d01cffe64b1e75b846 (diff) | |
download | openttd-7368c740a646c958797b5dff90d6c5b51236e2a4.tar.xz |
(svn r14828) -Codechange: move most of save/load-specific code to separate files
Diffstat (limited to 'src/animated_tile.cpp')
-rw-r--r-- | src/animated_tile.cpp | 46 |
1 files changed, 1 insertions, 45 deletions
diff --git a/src/animated_tile.cpp b/src/animated_tile.cpp index a66225ae6..fd3fc12f8 100644 --- a/src/animated_tile.cpp +++ b/src/animated_tile.cpp @@ -4,7 +4,6 @@ #include "stdafx.h" #include "openttd.h" -#include "saveload.h" #include "landscape.h" #include "core/alloc_func.hpp" #include "functions.h" @@ -14,7 +13,7 @@ TileIndex *_animated_tile_list = NULL; /** The number of animated tiles in the current state. */ uint _animated_tile_count = 0; /** The number of slots for animated tiles allocated currently. */ -static uint _animated_tile_allocated = 0; +uint _animated_tile_allocated = 0; /** * Removes the given tile from the animated tile table. @@ -90,46 +89,3 @@ void InitializeAnimatedTiles() _animated_tile_count = 0; _animated_tile_allocated = 256; } - -/** - * Save the ANIT chunk. - */ -static void Save_ANIT() -{ - SlSetLength(_animated_tile_count * sizeof(*_animated_tile_list)); - SlArray(_animated_tile_list, _animated_tile_count, SLE_UINT32); -} - -/** - * Load the ANIT chunk; the chunk containing the animated tiles. - */ -static void Load_ANIT() -{ - /* Before version 80 we did NOT have a variable length animated tile table */ - if (CheckSavegameVersion(80)) { - /* In pre version 6, we has 16bit per tile, now we have 32bit per tile, convert it ;) */ - SlArray(_animated_tile_list, 256, CheckSavegameVersion(6) ? (SLE_FILE_U16 | SLE_VAR_U32) : SLE_UINT32); - - for (_animated_tile_count = 0; _animated_tile_count < 256; _animated_tile_count++) { - if (_animated_tile_list[_animated_tile_count] == 0) break; - } - return; - } - - _animated_tile_count = (uint)SlGetFieldLength() / sizeof(*_animated_tile_list); - - /* Determine a nice rounded size for the amount of allocated tiles */ - _animated_tile_allocated = 256; - while (_animated_tile_allocated < _animated_tile_count) _animated_tile_allocated *= 2; - - _animated_tile_list = ReallocT<TileIndex>(_animated_tile_list, _animated_tile_allocated); - SlArray(_animated_tile_list, _animated_tile_count, SLE_UINT32); -} - -/** - * "Definition" imported by the saveload code to be able to load and save - * the animated tile table. - */ -extern const ChunkHandler _animated_tile_chunk_handlers[] = { - { 'ANIT', Save_ANIT, Load_ANIT, CH_RIFF | CH_LAST}, -}; |