blob: 6c2aa4120548e520c8f5c0353ca9d5e317e83d86 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
#include "stdafx.h"
#include "StructureFeatureSavedData.h"
wstring StructureFeatureSavedData::TAG_FEATURES = L"Features";
StructureFeatureSavedData::StructureFeatureSavedData(const wstring &idName) : SavedData(idName)
{
this->pieceTags = new CompoundTag(TAG_FEATURES);
}
StructureFeatureSavedData::~StructureFeatureSavedData()
{
delete pieceTags;
}
void StructureFeatureSavedData::load(CompoundTag *tag)
{
this->pieceTags = tag->getCompound(TAG_FEATURES);
}
void StructureFeatureSavedData::save(CompoundTag *tag)
{
tag->put(TAG_FEATURES, pieceTags->copy() );
}
CompoundTag *StructureFeatureSavedData::getFeatureTag(int chunkX, int chunkZ)
{
return pieceTags->getCompound(createFeatureTagId(chunkX, chunkZ));
}
void StructureFeatureSavedData::putFeatureTag(CompoundTag *tag, int chunkX, int chunkZ)
{
wstring name = createFeatureTagId(chunkX, chunkZ);
tag->setName(name);
pieceTags->put(name, tag);
}
wstring StructureFeatureSavedData::createFeatureTagId(int chunkX, int chunkZ)
{
return L"[" + _toString<int>(chunkX) + L"," + _toString<int>(chunkZ) + L"]";
}
CompoundTag *StructureFeatureSavedData::getFullTag()
{
return pieceTags;
}
|