summaryrefslogtreecommitdiffstats
path: root/src/WorldStorage
diff options
context:
space:
mode:
Diffstat (limited to 'src/WorldStorage')
-rw-r--r--src/WorldStorage/MapSerializer.cpp11
-rw-r--r--src/WorldStorage/MapSerializer.h7
2 files changed, 14 insertions, 4 deletions
diff --git a/src/WorldStorage/MapSerializer.cpp b/src/WorldStorage/MapSerializer.cpp
index 6dab19d4f..0bbe71a60 100644
--- a/src/WorldStorage/MapSerializer.cpp
+++ b/src/WorldStorage/MapSerializer.cpp
@@ -223,7 +223,11 @@ bool cIDCountSerializer::Load(void)
int CurrLine = NBT.FindChildByName(0, "map");
if (CurrLine >= 0)
{
- m_MapCount = (int)NBT.GetShort(CurrLine);
+ m_MapCount = (int)NBT.GetShort(CurrLine) + 1;
+ }
+ else
+ {
+ m_MapCount = 0;
}
return true;
@@ -237,7 +241,10 @@ bool cIDCountSerializer::Save(void)
{
cFastNBTWriter Writer;
- Writer.AddShort("map", m_MapCount);
+ if (m_MapCount > 0)
+ {
+ Writer.AddShort("map", m_MapCount - 1);
+ }
Writer.Finish();
diff --git a/src/WorldStorage/MapSerializer.h b/src/WorldStorage/MapSerializer.h
index d9da107bc..296cc92c8 100644
--- a/src/WorldStorage/MapSerializer.h
+++ b/src/WorldStorage/MapSerializer.h
@@ -27,10 +27,10 @@ public:
cMapSerializer(const AString& a_WorldName, cMap * a_Map);
- /// Try to load the scoreboard
+ /** Try to load the scoreboard */
bool Load(void);
- /// Try to save the scoreboard
+ /** Try to save the scoreboard */
bool Save(void);
@@ -56,8 +56,10 @@ public:
cIDCountSerializer(const AString & a_WorldName);
+ /** Try to load the ID counts */
bool Load(void);
+ /** Try to save the ID counts */
bool Save(void);
inline unsigned int GetMapCount(void) const { return m_MapCount; }
@@ -70,6 +72,7 @@ private:
AString m_Path;
unsigned int m_MapCount;
+
};