16class StructureTemplateData {
20 ::ll::TypedStorage<4, 4, int> mFormatVersion;
21 ::ll::TypedStorage<4, 4, ::NeighborAwareBlockUpgradeVersionType> mNeighborAwareBlockUpgradeVersion;
22 ::ll::TypedStorage<4, 12, ::BlockPos> mSize;
23 ::ll::TypedStorage<4, 12, ::BlockPos> mStructureWorldOrigin;
24 ::ll::TypedStorage<8, 24, ::std::vector<int>> mBlockIndices;
25 ::ll::TypedStorage<8, 24, ::std::vector<int>> mExtraBlockIndices;
26 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::StructureBlockPalette>> mPalettes;
27 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::CompoundTag>>> mEntityData;
32 StructureTemplateData& operator=(StructureTemplateData
const&);
33 StructureTemplateData(StructureTemplateData
const&);
34 StructureTemplateData();
39 virtual ~StructureTemplateData();
45 MCAPI ::StructureLoadResult _parseBlockIndices(
::CompoundTag const& structureTag);
47 MCAPI ::StructureLoadResult _parseEntities(
::CompoundTag const& structureTag);
49 MCAPI ::StructureLoadResult _parseFormatVersion(
::CompoundTag const& tag);
51 MCAPI ::StructureLoadResult _parseNeighborAwareBlockUpgradeVersion(
::CompoundTag const& tag);
53 MCAPI ::StructureLoadResult _parsePalettes(
::CompoundTag const& structureTag);
55 MCAPI ::StructureLoadResult _parseSize(
::CompoundTag const& tag);
57 MCAPI ::CompoundTag
const* _parseStructureTag(
::CompoundTag const& tag);
59 MCAPI ::StructureLoadResult _parseStructureWorldOrigin(
::CompoundTag const& tag);
61 MCAPI
void _saveBlockIndices(
::CompoundTag& structureTag)
const;
71 MCAPI
void _saveStructureWorldOrigin(
::CompoundTag& tag)
const;
73 MCAPI ::StructureLoadResult _validateSizeAndBlockIndicesSize()
const;
79 MCFOLD ::std::unordered_map<::std::string, ::StructureBlockPalette>
const& getAllPalettes()
const;
81 MCFOLD ::std::vector<int>
const& getBlockIndices()
const;
83 MCFOLD ::std::vector<int>
const& getExtraBlockIndices()
const;
85 MCAPI ::StructureBlockPalette
const* getPalette(::std::string
const& name)
const;
87 MCFOLD ::BlockPos
const& getSize()
const;
89 MCFOLD ::BlockPos
const& getStructureWorldOrigin()
const;
93 MCAPI ::StructureTemplateData& operator=(::StructureTemplateData&&);
95 MCAPI
bool operator==(::StructureTemplateData
const& other)
const;
97 MCAPI ::std::unique_ptr<::CompoundTag> save()
const;
99 MCAPI
void setBlockIndices(::std::vector<int> blockIndices);
101 MCAPI
void setExtraBlockIndices(::std::vector<int> extraBlockIndices);
105 MCAPI
void setStructureWorldOrigin(
::BlockPos const& structureWorldOrigin);
111 MCAPI
static int const& CURRENT_FORMAT_VERSION();
113 MCAPI static ::std::string
const& DEFAULT_PALETTE_NAME();