diff options
| author | Stanislaw Halik <sthalik@misaki.pl> | 2023-04-08 22:20:20 +0200 |
|---|---|---|
| committer | Stanislaw Halik <sthalik@misaki.pl> | 2023-04-08 22:20:20 +0200 |
| commit | e301c700764f2eca2498c5e95e5cc44dab2f5b5c (patch) | |
| tree | c0ae2582392799f294745933cb2858e6121c3bd4 /serialize/world-reader.cpp | |
| parent | 9cca30206a8de348bde4bddfa8ae10bd35ea8b66 (diff) | |
serialize/save: add RLE for empty tiles
Diffstat (limited to 'serialize/world-reader.cpp')
| -rw-r--r-- | serialize/world-reader.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/serialize/world-reader.cpp b/serialize/world-reader.cpp index 05add388..90b040f3 100644 --- a/serialize/world-reader.cpp +++ b/serialize/world-reader.cpp @@ -184,6 +184,15 @@ void reader_state::read_chunks(reader_t& s) { SET_CHUNK_SIZE(); const tilemeta flags = s.read<tilemeta>(); + + if (PROTO >= 11) [[likely]] + if (flags & meta_rle) + { + auto j = flags & 0x7fuz; + i += j; + continue; + } + tile_ref t = c[i]; using uchar = uint8_t; const auto make_atlas = [&]() -> tile_image_proto { |
