LeviLamina
Loading...
Searching...
No Matches
StructureDataLoadHelper.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/dataloadhelper/DataLoadHelper.h"
7#include "mc/dataloadhelper/DataLoadHelperType.h"
8#include "mc/deps/core/math/Vec3.h"
9#include "mc/legacy/ActorUniqueID.h"
10#include "mc/util/Mirror.h"
11#include "mc/util/Rotation.h"
12#include "mc/world/Direction.h"
13#include "mc/world/actor/InternalComponentRegistry.h"
14#include "mc/world/level/BlockPos.h"
15
16// auto generated forward declare list
17// clang-format off
18class HashedString;
19class Level;
20// clang-format on
21
22class StructureDataLoadHelper : public ::DataLoadHelper {
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<4, 12, ::BlockPos> mStructurePlacementLocation;
27 ::ll::TypedStorage<4, 12, ::BlockPos> mStructureWorldOrigin;
28 ::ll::TypedStorage<4, 12, ::Vec3> mPivot;
29 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mOwner;
30 ::ll::TypedStorage<1, 1, ::Rotation> mRotation;
31 ::ll::TypedStorage<1, 1, ::Mirror> mMirror;
32 ::ll::TypedStorage<8, 8, ::Level*> mLevel;
33 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ActorUniqueID, ::ActorUniqueID>> mOldIDToNewID;
34 // NOLINTEND
35
36public:
37 // prevent constructor by default
38 StructureDataLoadHelper();
39
40public:
41 // virtual functions
42 // NOLINTBEGIN
43 virtual ::Vec3 loadPosition(::Vec3 const& position) /*override*/;
44
45 virtual ::BlockPos loadBlockPosition(::BlockPos const& blockPos) /*override*/;
46
47 virtual ::BlockPos loadBlockPositionOffset(::BlockPos const& blockPosOffset) /*override*/;
48
49 virtual float loadRotationDegreesX(float x) /*override*/;
50
51 virtual float loadRotationDegreesY(float y) /*override*/;
52
53 virtual float loadRotationRadiansX(float x) /*override*/;
54
55 virtual float loadRotationRadiansY(float y) /*override*/;
56
57 virtual uchar loadFacingID(uchar facing) /*override*/;
58
59 virtual ::Vec3 loadDirection(::Vec3 const& direction) /*override*/;
60
61 virtual ::Direction::Type loadDirection(::Direction::Type direction) /*override*/;
62
63 virtual ::Rotation loadRotation(::Rotation rotation) /*override*/;
64
65 virtual ::Mirror loadMirror(::Mirror mirror) /*override*/;
66
67 virtual ::ActorUniqueID loadActorUniqueID(::ActorUniqueID id) /*override*/;
68
69 virtual ::ActorUniqueID loadOwnerID(::ActorUniqueID id) /*override*/;
70
71 virtual ::InternalComponentRegistry::ComponentInfo const* loadActorInternalComponentInfo(
72 ::std::unordered_map<::HashedString, ::InternalComponentRegistry::ComponentInfo> const& registry,
73 ::std::string const& componentName
74 ) /*override*/;
75
76 virtual bool shouldResetTime() /*override*/;
77
78 virtual ::DataLoadHelperType getType() const /*override*/;
79
80 virtual ::ActorUniqueID _generateNewID();
81 // NOLINTEND
82
83public:
84 // member functions
85 // NOLINTBEGIN
86 MCAPI StructureDataLoadHelper(
87 ::BlockPos const& structurePlacementLocation,
88 ::BlockPos const& structureWorldOrigin,
89 ::Vec3 const& rotationPivot,
90 ::ActorUniqueID ownerID,
91 ::Rotation rotation,
92 ::Mirror mirror,
93 ::Level& level
94 );
95 // NOLINTEND
96
97public:
98 // constructor thunks
99 // NOLINTBEGIN
100 MCAPI void* $ctor(
101 ::BlockPos const& structurePlacementLocation,
102 ::BlockPos const& structureWorldOrigin,
103 ::Vec3 const& rotationPivot,
104 ::ActorUniqueID ownerID,
105 ::Rotation rotation,
106 ::Mirror mirror,
107 ::Level& level
108 );
109 // NOLINTEND
110
111public:
112 // virtual function thunks
113 // NOLINTBEGIN
114 MCAPI ::Vec3 $loadPosition(::Vec3 const& position);
115
116 MCAPI ::BlockPos $loadBlockPosition(::BlockPos const& blockPos);
117
118 MCAPI ::BlockPos $loadBlockPositionOffset(::BlockPos const& blockPosOffset);
119
120 MCFOLD float $loadRotationDegreesX(float x);
121
122 MCAPI float $loadRotationDegreesY(float y);
123
124 MCFOLD float $loadRotationRadiansX(float x);
125
126 MCAPI float $loadRotationRadiansY(float y);
127
128 MCAPI uchar $loadFacingID(uchar facing);
129
130 MCAPI ::Vec3 $loadDirection(::Vec3 const& direction);
131
132 MCAPI ::Direction::Type $loadDirection(::Direction::Type direction);
133
134 MCAPI ::Rotation $loadRotation(::Rotation rotation);
135
136 MCAPI ::Mirror $loadMirror(::Mirror mirror);
137
138 MCAPI ::ActorUniqueID $loadActorUniqueID(::ActorUniqueID id);
139
140 MCAPI ::ActorUniqueID $loadOwnerID(::ActorUniqueID id);
141
142 MCFOLD ::InternalComponentRegistry::ComponentInfo const* $loadActorInternalComponentInfo(
143 ::std::unordered_map<::HashedString, ::InternalComponentRegistry::ComponentInfo> const& registry,
144 ::std::string const& componentName
145 );
146
147 MCFOLD bool $shouldResetTime();
148
149 MCFOLD ::DataLoadHelperType $getType() const;
150
151 MCAPI ::ActorUniqueID $_generateNewID();
152
153
154 // NOLINTEND
155
156public:
157 // vftables
158 // NOLINTBEGIN
159 MCNAPI static void** $vftable();
160 // NOLINTEND
161};
Definition BlockPos.h:21
Definition DataLoadHelper.h:20
Definition HashedString.h:5
Definition Level.h:255
static MCAPI void ** $vftable()
Definition Vec3.h:10
Definition ActorUniqueID.h:10