LeviLamina
Loading...
Searching...
No Matches
Rope.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/world/phys/AABB.h"
8#include "mc/world/phys/rope/RopeParams.h"
9#include "mc/world/phys/rope/RopePoints.h"
10#include "mc/world/phys/rope/rope_details/AABBPred.h"
11
12// auto generated forward declare list
13// clang-format off
14struct AABBBucket;
15struct RopeNode;
16struct RopeWave;
17// clang-format on
18
19class Rope {
20public:
21 // Rope inner types declare
22 // clang-format off
23 struct IntermediateData;
24 // clang-format on
25
26 // Rope inner types define
28 public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 32, ::RopePoints> mQueuedRenderPoints;
32 ::ll::TypedStorage<4, 12, ::Vec3> mPrevStartPin;
33 ::ll::TypedStorage<4, 12, ::Vec3> mPrevEndPin;
34 ::ll::TypedStorage<4, 12, ::Vec3> mStartPin;
35 ::ll::TypedStorage<4, 12, ::Vec3> mEndPin;
36 ::ll::TypedStorage<8, 8, uint64> mToCutNode;
37 ::ll::TypedStorage<1, 1, bool> mAbandonCollision;
38 // NOLINTEND
39 };
40
41public:
42 // member variables
43 // NOLINTBEGIN
44 ::ll::TypedStorage<8, 96, ::Rope::IntermediateData> mIntermediateData;
45 ::ll::TypedStorage<8, 88, ::RopeParams> mParameters;
46 ::ll::TypedStorage<8, 32, ::RopePoints> mRenderPoints;
47 ::ll::TypedStorage<8, 24, ::std::vector<::RopeNode>> mNodes;
48 ::ll::TypedStorage<8, 24, ::std::vector<::AABBBucket>> mColliderBuckets;
49 ::ll::TypedStorage<8, 24, ::std::vector<::RopeWave>> mWaves;
50 ::ll::TypedStorage<8, 16, ::std::set<::AABB, ::RopeDetails::AABBPred>> mDenyListedColliders;
51 ::ll::TypedStorage<8, 8, uint64> mCutNode;
52 ::ll::TypedStorage<8, 8, uint64> mMinNodes;
53 // NOLINTEND
54
55public:
56 // member functions
57 // NOLINTBEGIN
58 MCAPI Rope();
59
60#ifdef LL_PLAT_C
61 MCAPI void _finalizeBucket(::AABBBucket& bucket);
62
63 MCAPI float _solveCollisions(bool const checkDenyList);
64#endif
65
66 MCAPI void initializePins(::std::optional<::RopeParams> parameters);
67
68 MCAPI ~Rope();
69 // NOLINTEND
70
71public:
72 // constructor thunks
73 // NOLINTBEGIN
74 MCAPI void* $ctor();
75 // NOLINTEND
76
77public:
78 // destructor thunk
79 // NOLINTBEGIN
80 MCAPI void $dtor();
81 // NOLINTEND
82};
Definition AABBBucket.h:13
Definition RopeNode.h:8
Definition RopeWave.h:5
Definition Rope.h:27