mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/4jcraft.git
synced 2026-05-28 15:35:57 +00:00
TU19: merge Minecraft.World/WorldGen
This commit is contained in:
38
Minecraft.World/WorldGen/StructureFeatureSavedData.cpp
Normal file
38
Minecraft.World/WorldGen/StructureFeatureSavedData.cpp
Normal file
@@ -0,0 +1,38 @@
|
||||
#include "../Platform/stdafx.h"
|
||||
|
||||
#include "StructureFeatureSavedData.h"
|
||||
|
||||
std::wstring StructureFeatureSavedData::TAG_FEATURES = L"Features";
|
||||
|
||||
StructureFeatureSavedData::StructureFeatureSavedData(const std::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) {
|
||||
std::wstring name = createFeatureTagId(chunkX, chunkZ);
|
||||
tag->setName(name);
|
||||
pieceTags->put(name, tag);
|
||||
}
|
||||
|
||||
std::wstring StructureFeatureSavedData::createFeatureTagId(int chunkX,
|
||||
int chunkZ) {
|
||||
return L"[" + _toString<int>(chunkX) + L"," + _toString<int>(chunkZ) + L"]";
|
||||
}
|
||||
|
||||
CompoundTag* StructureFeatureSavedData::getFullTag() { return pieceTags; }
|
||||
Reference in New Issue
Block a user