LeviLamina
Loading...
Searching...
No Matches
ScriptPrimitiveShape.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Vec3.h"
7#include "mc/deps/scripting/lifetime_registry/StrongTypedObjectHandle.h"
8#include "mc/legacy/ActorUniqueID.h"
9#include "mc/network/NetworkIdentifierWithSubId.h"
10#include "mc/scripting/modules/minecraft/ScriptRGBA.h"
11#include "mc/scripting/modules/minecraft/primitiveshapes/ScriptPrimitiveShapeType.h"
12#include "mc/world/level/dimension/DimensionType.h"
13
14// auto generated forward declare list
15// clang-format off
17namespace ScriptModuleMinecraft { class ScriptActor; }
18namespace ScriptModuleMinecraft { class ScriptDimension; }
19namespace ScriptModuleMinecraft { class ScriptPlayer; }
20namespace ScriptModuleMinecraft { struct ScriptDimensionLocation; }
21namespace Scripting { struct ClassBinding; }
22// clang-format on
23
24namespace ScriptModuleMinecraft {
25
26class ScriptPrimitiveShape {
27public:
28 // ScriptPrimitiveShape inner types define
29 enum class Flags : uint {
30 Remove = 1,
31 New = 2,
32 UpdateLocation = 4,
33 UpdateScale = 8,
34 UpdateRotation = 16,
35 UpdateTimeleft = 32,
36 UpdateColor = 64,
37 UpdateText = 128,
38 UpdateBoxBound = 256,
39 UpdateLineEndLocation = 512,
40 UpdateArrowHeadLength = 1024,
41 UpdateArrowHeadRadius = 2048,
42 UpdateSegmentCount = 4096,
43 UpdateAttachedTo = 8192,
44 UpdateRenderDist = 16384,
45 SerializeAll = 4294967294,
46 };
47
48 using FlagsStorage = uint;
49
50public:
51 // member variables
52 // NOLINTBEGIN
53 ::ll::TypedStorage<1, 1, ::ScriptModuleMinecraft::ScriptPrimitiveShapeType> mShapeType;
54 ::ll::TypedStorage<8, 32, ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptDimension>>
55 mDimension;
56 ::ll::TypedStorage<4, 4, ::DimensionType> mDimensionId;
57 ::ll::TypedStorage<4, 12, ::Vec3> mLocation;
58 ::ll::TypedStorage<4, 12, ::Vec3> mRotation;
59 ::ll::TypedStorage<4, 4, float> mScale;
60 ::ll::TypedStorage<8, 24, ::ScriptModuleMinecraft::ScriptRGBA> mColor;
61 ::ll::TypedStorage<4, 8, ::std::optional<float>> mTimeLeftSec;
62 ::ll::TypedStorage<4, 8, ::std::optional<float>> mTimeLeftTotalSec;
63 ::ll::TypedStorage<4, 8, ::std::optional<float>> mMaxRenderDistance;
64 ::ll::
65 TypedStorage<8, 24, ::std::vector<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptPlayer>>>
66 mVisibleTo;
67 ::ll::TypedStorage<8, 16, ::std::set<::NetworkIdentifierWithSubId>> mVisibleToClients;
68 ::ll::TypedStorage<8, 16, ::std::set<::NetworkIdentifierWithSubId>> mSentToClients;
69 ::ll::TypedStorage<8, 8, uint64> mNetworkId;
70 ::ll::TypedStorage<4, 4, uint> mFlags;
71 ::ll::TypedStorage<1, 1, bool> mExistsInWorld;
72 ::ll::
73 TypedStorage<8, 40, ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptActor>>>
74 mAttachedTo;
75 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mAttachedToId;
76 ::ll::TypedStorage<1, 1, bool> mAttachedEntityWasUnloaded;
77 ::ll::TypedStorage<1, 1, bool> mIsDebugShape;
78 // NOLINTEND
79
80public:
81 // prevent constructor by default
82 ScriptPrimitiveShape();
83
84public:
85 // virtual functions
86 // NOLINTBEGIN
87 virtual ~ScriptPrimitiveShape();
88
89 virtual void populatePacketData(::PrimitiveShapeDataPayload& packet) const;
90
91 virtual void applyUpdatedData(::PrimitiveShapeDataPayload const& packet);
92 // NOLINTEND
93
94public:
95 // member functions
96 // NOLINTBEGIN
97 MCFOLD bool IsDebugShape() const;
98
99 MCAPI ScriptPrimitiveShape(::ScriptModuleMinecraft::ScriptPrimitiveShape const&);
100
101 MCAPI ScriptPrimitiveShape(::ScriptModuleMinecraft::ScriptPrimitiveShapeType shapeType, bool isDebugShape);
102
103 MCAPI ScriptPrimitiveShape(
104 ::ScriptModuleMinecraft::ScriptPrimitiveShapeType shapeType,
105 ::std::variant<::ScriptModuleMinecraft::ScriptDimensionLocation, ::Vec3> const& location,
106 bool isDebugShape
107 );
108
109 MCAPI void addToWorld();
110
111 MCFOLD bool existsInWorld() const;
112
113 MCFOLD ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptActor>> const&
114 getAttachedTo() const;
115
116#ifdef LL_PLAT_C
117 MCFOLD ::ActorUniqueID getAttachedToId() const;
118#endif
119
120 MCFOLD ::ScriptModuleMinecraft::ScriptRGBA const& getColor() const;
121
122 MCAPI ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptDimension> getDimension() const;
123
124#ifdef LL_PLAT_C
125 MCAPI ::DimensionType getDimensionId() const;
126#endif
127
128 MCFOLD uint getFlags() const;
129
130 MCAPI ::Vec3 getLocation() const;
131
132 MCFOLD ::std::optional<float> getMaxRenderDistance() const;
133
134 MCFOLD uint64 getNetworkId() const;
135
136 MCFOLD ::Vec3 const& getRotation() const;
137
138 MCFOLD float getScale() const;
139
140 MCFOLD ::std::set<::NetworkIdentifierWithSubId>& getSentToClients();
141
142#ifdef LL_PLAT_C
143 MCFOLD ::ScriptModuleMinecraft::ScriptPrimitiveShapeType getShapeType() const;
144#endif
145
146 MCAPI ::std::optional<float> getTimeLeftSec() const;
147
148 MCFOLD ::std::optional<float> getTotalTimeLeftSec() const;
149
150 MCFOLD ::std::vector<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptPlayer>> const&
151 getVisibleTo() const;
152
153 MCFOLD ::std::set<::NetworkIdentifierWithSubId> const& getVisibleToClients() const;
154
155 MCAPI bool hasDuration() const;
156
157 MCAPI bool isDirty() const;
158
159 MCAPI bool isFlaggedToRemove() const;
160
161 MCAPI bool isNewShape() const;
162
163 MCAPI void markAttachedEntityReloaded();
164
165 MCAPI ::ScriptModuleMinecraft::ScriptPrimitiveShape&
167
168 MCAPI void remove();
169
170 MCAPI void setAttachedEntityWasUnloaded(bool unloaded);
171
172 MCAPI void setAttachedTo(
174 );
175
176 MCAPI void setColor(::ScriptModuleMinecraft::ScriptRGBA const& color);
177
178 MCFOLD void setFlags(uint flags);
179
180 MCAPI void setLocation(::std::variant<::ScriptModuleMinecraft::ScriptDimensionLocation, ::Vec3> const& location);
181
182 MCAPI void setMaxRenderDistance(::std::optional<float> dist);
183
184 MCFOLD void setNetworkId(uint64 networkId);
185
186 MCAPI void setRotation(::Vec3 const& rotation);
187
188 MCAPI void setScale(float scale);
189
190 MCAPI void setTotalTimeLeft(::std::optional<float> timeSec);
191
192 MCAPI void setVisibleTo(
194 );
195
196 MCAPI void tickTimeLeft(float dt);
197
198 MCAPI void unDirty();
199
200 MCFOLD bool wasAttachedEntityUnloaded() const;
201 // NOLINTEND
202
203public:
204 // static functions
205 // NOLINTBEGIN
206 MCAPI static ::Scripting::ClassBinding bind();
207 // NOLINTEND
208
209public:
210 // constructor thunks
211 // NOLINTBEGIN
212 MCAPI void* $ctor(::ScriptModuleMinecraft::ScriptPrimitiveShape const&);
213
214 MCAPI void* $ctor(::ScriptModuleMinecraft::ScriptPrimitiveShapeType shapeType, bool isDebugShape);
215
216 MCAPI void* $ctor(
217 ::ScriptModuleMinecraft::ScriptPrimitiveShapeType shapeType,
218 ::std::variant<::ScriptModuleMinecraft::ScriptDimensionLocation, ::Vec3> const& location,
219 bool isDebugShape
220 );
221 // NOLINTEND
222
223public:
224 // destructor thunk
225 // NOLINTBEGIN
226 MCAPI void $dtor();
227 // NOLINTEND
228
229public:
230 // virtual function thunks
231 // NOLINTBEGIN
232 MCAPI void $populatePacketData(::PrimitiveShapeDataPayload& packet) const;
233
234 MCAPI void $applyUpdatedData(::PrimitiveShapeDataPayload const& packet);
235
236
237 // NOLINTEND
238
239public:
240 // vftables
241 // NOLINTBEGIN
242 MCNAPI static void** $vftable();
243 // NOLINTEND
244};
245
246} // namespace ScriptModuleMinecraft
Definition ScriptActor.h:69
Definition ScriptDimension.h:71
Definition ScriptPlayer.h:56
Definition ScriptPrimitiveShape.h:26
Definition ScriptRGBA.h:16
Definition StrongTypedObjectHandle.h:8
Definition Vec3.h:10
Definition PrimitiveShapeDataPayload.h:23
Definition ScriptDimensionLocation.h:18
Definition ClassBinding.h:19