LeviLamina
Loading...
Searching...
No Matches
RopeSystem.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/legacy/ActorUniqueID.h"
7
8// auto generated forward declare list
9// clang-format off
10class BlockSource;
11class Rope;
12class Vec3;
13struct RopeParams;
14struct RopeWave;
15// clang-format on
16
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<1, 1, bool> mWaveApplied;
22 ::ll::TypedStorage<8, 24, ::std::vector<::Rope>> mRopes;
23 ::ll::TypedStorage<8, 8, uint64> mCutRenderNode;
24 ::ll::TypedStorage<8, 8, uint64> mCutTicks;
25 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mEndPinEntity;
26 ::ll::TypedStorage<4, 4, ::std::atomic_flag> mTicking;
27 ::ll::TypedStorage<8, 8, ::std::shared_mutex> mRopeMutex;
28 // NOLINTEND
29
30public:
31 // member functions
32 // NOLINTBEGIN
33#ifdef LL_PLAT_C
34 MCAPI void addWave(uint64 index, ::RopeWave&& wave);
35#endif
36
37 MCAPI void initialize(::RopeParams const& params, uint64 initialRopeCount);
38
39 MCAPI void initializePins(::Vec3 const& startPin, ::Vec3 const& endPin);
40
41 MCAPI void queueTick(::BlockSource& region, ::std::shared_ptr<::RopeSystem>& self);
42
43#ifdef LL_PLAT_C
44 MCAPI void setRopeCount(uint64 ropeCount);
45#endif
46 // NOLINTEND
47
48public:
49 // static variables
50 // NOLINTBEGIN
51#ifdef LL_PLAT_C
52 MCAPI static bool& sEnabled();
53#endif
54 // NOLINTEND
55};
Definition BlockSource.h:71
Definition RopeSystem.h:17
Definition Rope.h:19
Definition Vec3.h:10
Definition RopeParams.h:8
Definition RopeWave.h:5