LeviLamina
Loading...
Searching...
No Matches
HangingActor.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/Actor.h"
7#include "mc/world/actor/ActorInitializationMethod.h"
8
9// auto generated forward declare list
10// clang-format off
13class BlockPos;
14class BlockSource;
15class ChunkPos;
16class CompoundTag;
17class DataLoadHelper;
18class EntityContext;
22// clang-format on
23
24class HangingActor : public ::Actor {
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<4, 4, int> mDirection;
29 ::ll::TypedStorage<4, 4, int> mTicksToWouldSurviveCheck;
30 ::ll::TypedStorage<4, 4, int> mWouldSurviveCheckCooldown;
31 // NOLINTEND
32
33public:
34 // prevent constructor by default
35 HangingActor();
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual void normalTick() /*override*/;
41
42 virtual int getWidth() const = 0;
43
44 virtual int getHeight() const = 0;
45
46 virtual void dropItem() = 0;
47
48 virtual float getBrightness(float a, ::IConstBlockSource const& region) const /*override*/;
49
50 virtual bool placeHangingEntity(::BlockSource&, int);
51
52 virtual bool wouldSurvive(::BlockSource& region);
53
54 virtual bool isInvulnerableTo(::ActorDamageSource const& source) const /*override*/;
55
56 virtual void reloadHardcoded(::ActorInitializationMethod, ::VariantParameterList const&) /*override*/;
57
58 virtual void reloadHardcodedClient(::ActorInitializationMethod method) /*override*/;
59
60 virtual bool _hurt(::ActorDamageSource const& source, float, bool, bool) /*override*/;
61
62 virtual void addAdditionalSaveData(::CompoundTag& tag) const /*override*/;
63
64 virtual void readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
65
66 virtual ~HangingActor() /*override*/;
67 // NOLINTEND
68
69public:
70 // member functions
71 // NOLINTBEGIN
72 MCAPI HangingActor(
73 ::ActorDefinitionGroup* definitions,
74 ::ActorDefinitionIdentifier const& definitionName,
75 ::EntityContext& entityContext,
76 int wouldSurviveCheckCooldown
77 );
78
79 MCAPI bool _blockIsObstruction(::BlockSource const& region, ::BlockPos const& blockPos) const;
80
81 MCAPI void _calculateAABB();
82
83 MCAPI void _calculateActorPositionFromPlacementPosition(::BlockPos const& blockPos);
84
85 MCAPI bool _canSurviveOnBlock(::BlockSource const& region, ::BlockPos const& blockPos, bool beingPlaced) const;
86
87 MCAPI bool _chunksLoaded3x3(::ChunkPos const& center);
88
89 MCAPI bool _wouldSurvive(::BlockSource& region, ::BlockPos const& blockPos, bool beingPlaced);
90
91 MCAPI void doNormalTick();
92 // NOLINTEND
93
94public:
95 // constructor thunks
96 // NOLINTBEGIN
97 MCAPI void* $ctor(
98 ::ActorDefinitionGroup* definitions,
99 ::ActorDefinitionIdentifier const& definitionName,
100 ::EntityContext& entityContext,
101 int wouldSurviveCheckCooldown
102 );
103 // NOLINTEND
104
105public:
106 // destructor thunk
107 // NOLINTBEGIN
108 MCFOLD void $dtor();
109 // NOLINTEND
110
111public:
112 // virtual function thunks
113 // NOLINTBEGIN
114 MCAPI void $normalTick();
115
116 MCAPI float $getBrightness(float a, ::IConstBlockSource const& region) const;
117
118 MCFOLD bool $placeHangingEntity(::BlockSource&, int);
119
120 MCAPI bool $wouldSurvive(::BlockSource& region);
121
122 MCFOLD bool $isInvulnerableTo(::ActorDamageSource const& source) const;
123
124 MCAPI void $reloadHardcoded(::ActorInitializationMethod, ::VariantParameterList const&);
125
126 MCAPI void $reloadHardcodedClient(::ActorInitializationMethod method);
127
128 MCAPI bool $_hurt(::ActorDamageSource const& source, float, bool, bool);
129
130 MCAPI void $addAdditionalSaveData(::CompoundTag& tag) const;
131
132 MCAPI void $readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
133
134
135 // NOLINTEND
136
137public:
138 // vftables
139 // NOLINTBEGIN
140 MCAPI static void** $vftable();
141 // NOLINTEND
142};
Definition ActorDamageSource.h:18
Definition ActorDefinitionGroup.h:35
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition ChunkPos.h:11
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition EntityContext.h:16
Definition IConstBlockSource.h:25
Definition ActorDefinitionIdentifier.h:15
Definition VariantParameterList.h:13