LeviLamina
Loading...
Searching...
No Matches
LegacyStructureTemplate.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/BlockPos.h"
7#include "mc/world/level/levelgen/structure/ILegacyStructureTemplate.h"
8#include "mc/world/level/levelgen/structure/IStructureTemplate.h"
9#include "mc/world/level/levelgen/structure/LegacyStructureBlockPalette.h"
10
11// auto generated forward declare list
12// clang-format off
13class Block;
14class BlockSource;
15class CompoundTag;
20class Random;
21namespace br::worldgen { struct StructureTemplateBlockPalette; }
22// clang-format on
23
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<8, 32, ::std::string> mAuthor;
29 ::ll::TypedStorage<4, 12, ::BlockPos> mSize;
30 ::ll::TypedStorage<8, 64, ::LegacyStructureBlockPalette> mPalette;
31 ::ll::TypedStorage<8, 64, ::LegacyStructureBlockPalette> mExtraBlockPalette;
32 ::ll::TypedStorage<8, 24, ::std::vector<::LegacyStructureBlockInfo>> mBlockInfo;
33 ::ll::TypedStorage<8, 24, ::std::vector<::LegacyStructureActorInfo>> mEntityInfo;
34 // NOLINTEND
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 // vIndex: 0
40 virtual ~LegacyStructureTemplate() /*override*/;
41
42 // vIndex: 0
43 virtual ::std::unordered_map<::BlockPos, ::std::string>
44 getMarkers(::BlockPos const& position, ::LegacyStructureSettings& settings) const /*override*/;
45
46 // vIndex: 1
47 virtual void placeInWorld(
48 ::BlockSource& region,
49 ::BlockPos const& pos,
51 ::Random& random
52 ) const /*override*/;
53
54 // vIndex: 2
55 virtual ::BlockPos rawSize() const /*override*/;
56
57 // vIndex: 1
58 virtual ::br::worldgen::StructureTemplateBlockPalette randomPalette(::BlockPos) const /*override*/;
59 // NOLINTEND
60
61public:
62 // member functions
63 // NOLINTBEGIN
65
66 MCNAPI ::BlockPos calculateConnectedPosition(
67 ::LegacyStructureSettings const& settings1,
68 ::BlockPos const& connection1,
69 ::LegacyStructureSettings const& settings2,
70 ::BlockPos const& connection2
71 ) const;
72
73 MCNAPI ::std::vector<::JigsawStructureBlockInfo> getJigsawMarkers() const;
74
75 MCNAPI void load(::CompoundTag const& tag);
76 // NOLINTEND
77
78public:
79 // static functions
80 // NOLINTBEGIN
81 MCNAPI static void _fixItemStack(::CompoundTag& itemTag, int dataVersion);
82
83 MCNAPI static void _mapPropertiesToTags(::CompoundTag& originalTag, ::CompoundTag const& paletteTag);
84
85 MCNAPI static void _mapPropertyToTag(
86 ::CompoundTag& originalTag,
87 ::std::string const& propertyString,
88 ::std::string const& valueString
89 );
90
91 MCNAPI static ::std::unique_ptr<::CompoundTag> _mapTag(
92 ::std::unique_ptr<::CompoundTag> originalTag,
93 ::std::string const& javaBlockName,
94 int dataVersion,
95 ::Block const*& block
96 );
97
98 MCNAPI static ::Block const* _mapToBlock(::std::string const& blockName);
99
100 MCNAPI static ::Block const& _mapToData(::Block const& curr, ::LegacyStructureSettings const& settings);
101
102 MCNAPI static ::Block const*
103 _mapToProperty(::std::string const& propertyString, ::std::string const& valueString, ::Block const& block);
104 // NOLINTEND
105
106public:
107 // static variables
108 // NOLINTBEGIN
109 MCNAPI static ::std::string const& AUTHOR_TAG();
110
111 MCNAPI static ::std::string const& BLOCKS_TAG();
112
113 MCNAPI static ::std::string const& BLOCK_TAG_NBT();
114
115 MCNAPI static ::std::string const& BLOCK_TAG_POS();
116
117 MCNAPI static ::std::string const& BLOCK_TAG_STATE();
118
119 MCNAPI static ::std::string const& DATA_VERSION_TAG();
120
121 MCNAPI static ::std::string const& ENTITIES_TAG();
122
123 MCNAPI static ::std::string const& ENTITY_TAG_BLOCKPOS();
124
125 MCNAPI static ::std::string const& ENTITY_TAG_NBT();
126
127 MCNAPI static ::std::string const& ENTITY_TAG_POS();
128
129 MCNAPI static ::std::string const& MINECRAFT_PREFIX();
130
131 MCNAPI static ::std::string const& PALETTE_TAG();
132
133 MCNAPI static ::std::string const& SIZE_TAG();
134
135 MCNAPI static ::std::string const& VERSION_TAG();
136 // NOLINTEND
137
138public:
139 // constructor thunks
140 // NOLINTBEGIN
141 MCNAPI void* $ctor();
142 // NOLINTEND
143
144public:
145 // destructor thunk
146 // NOLINTBEGIN
147 MCNAPI void $dtor();
148 // NOLINTEND
149
150public:
151 // virtual function thunks
152 // NOLINTBEGIN
153 MCNAPI ::std::unordered_map<::BlockPos, ::std::string>
154 $getMarkers(::BlockPos const& position, ::LegacyStructureSettings& settings) const;
155
156 MCNAPI void $placeInWorld(
157 ::BlockSource& region,
158 ::BlockPos const& pos,
160 ::Random& random
161 ) const;
162
163 MCNAPI ::BlockPos $rawSize() const;
164
165 MCNAPI ::br::worldgen::StructureTemplateBlockPalette $randomPalette(::BlockPos) const;
166 // NOLINTEND
167
168public:
169 // vftables
170 // NOLINTBEGIN
172
173 MCNAPI static void** $vftableForIStructureTemplate();
174 // NOLINTEND
175};
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:38
Definition CompoundTag.h:13
Definition ILegacyStructureTemplate.h:13
Definition IStructureTemplate.h:11
Definition JigsawStructureBlockInfo.h:14
Definition LegacyStructureActorInfo.h:10
Definition LegacyStructureBlockInfo.h:14
Definition LegacyStructureSettings.h:22
Definition LegacyStructureTemplate.h:24
MCAPI void * $ctor()
MCAPI ::std::unordered_map<::BlockPos, ::std::string > $getMarkers(::BlockPos const &position, ::LegacyStructureSettings &settings) const
static MCAPI ::std::string const & ENTITY_TAG_POS()
static MCAPI ::std::string const & ENTITY_TAG_BLOCKPOS()
static MCAPI void _mapPropertyToTag(::CompoundTag &originalTag, ::std::string const &propertyString, ::std::string const &valueString)
static MCAPI ::std::string const & BLOCK_TAG_STATE()
static MCAPI void ** $vftableForIStructureTemplate()
static MCAPI ::std::string const & MINECRAFT_PREFIX()
static MCAPI ::std::string const & BLOCKS_TAG()
static MCAPI void ** $vftableForILegacyStructureTemplate()
static MCAPI ::std::string const & BLOCK_TAG_NBT()
MCAPI::BlockPos calculateConnectedPosition(::LegacyStructureSettings const &settings1, ::BlockPos const &connection1, ::LegacyStructureSettings const &settings2, ::BlockPos const &connection2) const
static MCAPI void _mapPropertiesToTags(::CompoundTag &originalTag, ::CompoundTag const &paletteTag)
MCAPI::BlockPos $rawSize() const
static MCAPI ::std::string const & ENTITIES_TAG()
MCAPI::br::worldgen::StructureTemplateBlockPalette $randomPalette(::BlockPos) const
static MCAPI ::std::string const & AUTHOR_TAG()
static MCAPI ::std::string const & BLOCK_TAG_POS()
static MCAPI ::std::unique_ptr<::CompoundTag > _mapTag(::std::unique_ptr<::CompoundTag > originalTag, ::std::string const &javaBlockName, int dataVersion, ::Block const *&block)
static MCAPI ::std::string const & DATA_VERSION_TAG()
static MCAPI ::std::string const & SIZE_TAG()
MCAPI void load(::CompoundTag const &tag)
static MCAPI ::std::string const & ENTITY_TAG_NBT()
MCAPI ::std::vector<::JigsawStructureBlockInfo > getJigsawMarkers() const
static MCAPI ::std::string const & VERSION_TAG()
static MCAPI ::Block const & _mapToData(::Block const &curr, ::LegacyStructureSettings const &settings)
MCAPI void $placeInWorld(::BlockSource &region, ::BlockPos const &pos, ::LegacyStructureSettings &settings, ::Random &random) const
static MCAPI ::Block const * _mapToProperty(::std::string const &propertyString, ::std::string const &valueString, ::Block const &block)
static MCAPI ::Block const * _mapToBlock(::std::string const &blockName)
static MCAPI void _fixItemStack(::CompoundTag &itemTag, int dataVersion)
static MCAPI ::std::string const & PALETTE_TAG()
Definition Random.h:11