LeviLamina
Loading...
Searching...
No Matches
FallingBlockActor.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/actor/ActorInitializationMethod.h"
8#include "mc/world/actor/projectile/PredictableProjectile.h"
9#include "mc/world/level/block/NewBlockID.h"
10
11// auto generated forward declare list
12// clang-format off
15class ActorHurtResult;
16class Block;
17class BlockPos;
18class BlockSource;
19class CompoundTag;
20class DataLoadHelper;
21class EntityContext;
22class ITickDelegate;
25// clang-format on
26
27class FallingBlockActor : public ::PredictableProjectile {
28public:
29 // FallingBlockActor inner types define
30 enum class State : int {
31 Falling = 0,
32 WaitRemoval = 1,
33 };
34
35public:
36 // member variables
37 // NOLINTBEGIN
38 ::ll::TypedStorage<1, 1, bool> mCreative;
39 ::ll::TypedStorage<4, 4, ::FallingBlockActor::State> mState;
40 ::ll::TypedStorage<4, 4, int> mWaitTicks;
41 ::ll::TypedStorage<4, 4, int> mTime;
42 ::ll::TypedStorage<1, 1, bool> mCancelDrop;
43 ::ll::TypedStorage<1, 1, bool> mHurtEntities;
44 ::ll::TypedStorage<4, 4, int> mFallDamageMax;
45 ::ll::TypedStorage<4, 4, float> mFallDamageAmount;
46 ::ll::TypedStorage<4, 12, ::Vec3> mRenderOffset;
47 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::CompoundTag>> mFallingBlockSerId;
48 ::ll::TypedStorage<2, 2, ::NewBlockID> mFallingBlockId;
49 ::ll::TypedStorage<2, 2, ushort> mFallingBlockData;
50 // NOLINTEND
51
52public:
53 // prevent constructor by default
54 FallingBlockActor();
55
56public:
57 // virtual functions
58 // NOLINTBEGIN
59 virtual void reloadHardcoded(::ActorInitializationMethod, ::VariantParameterList const&) /*override*/;
60
61 virtual void normalTick() /*override*/;
62
63 virtual float getShadowRadius() const /*override*/;
64
65 virtual float causeFallDamageToActor(float distance, float multiplier, ::ActorDamageSource source) /*override*/;
66
67 virtual void teleportTo(
68 ::Vec3 const& pos,
69 bool shouldStopRiding,
70 int cause,
71 int sourceEntityType,
72 bool keepVelocity
73 ) /*override*/;
74
75 virtual bool canChangeDimensionsUsingPortal() const /*override*/;
76
77 virtual void onSynchedDataUpdate(int dataId) /*override*/;
78
79 virtual ::ActorHurtResult _hurt(::ActorDamageSource const&, float, bool, bool) /*override*/;
80
81 virtual void addAdditionalSaveData(::CompoundTag& tag) const /*override*/;
82
83 virtual void readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
84 // NOLINTEND
85
86public:
87 // member functions
88 // NOLINTBEGIN
89 MCAPI FallingBlockActor(
90 ::ActorDefinitionGroup* definitions,
91 ::ActorDefinitionIdentifier const& definitionName,
92 ::EntityContext& entityContext
93 );
94
95 MCAPI bool _isBeingPushedUp(::Block const& pushingBlock, ::BlockSource& region, ::BlockPos blockPos) const;
96
97 MCAPI void breakBlock();
98
99 MCAPI void doNormalTick(::ITickDelegate& tickDelegate);
100
101 MCAPI ::Block const& getFallingBlock() const;
102
103 MCAPI void setFallDamageAmount(float amount);
104
105 MCAPI void setFallingBlock(::Block const& block, bool creative);
106 // NOLINTEND
107
108public:
109 // constructor thunks
110 // NOLINTBEGIN
111 MCAPI void* $ctor(
112 ::ActorDefinitionGroup* definitions,
113 ::ActorDefinitionIdentifier const& definitionName,
114 ::EntityContext& entityContext
115 );
116 // NOLINTEND
117
118public:
119 // virtual function thunks
120 // NOLINTBEGIN
121 MCAPI void $reloadHardcoded(::ActorInitializationMethod, ::VariantParameterList const&);
122
123 MCAPI void $normalTick();
124
125 MCFOLD float $getShadowRadius() const;
126
127 MCAPI float $causeFallDamageToActor(float distance, float multiplier, ::ActorDamageSource source);
128
129 MCFOLD void
130 $teleportTo(::Vec3 const& pos, bool shouldStopRiding, int cause, int sourceEntityType, bool keepVelocity);
131
132 MCAPI bool $canChangeDimensionsUsingPortal() const;
133
134 MCAPI void $onSynchedDataUpdate(int dataId);
135
136 MCAPI ::ActorHurtResult $_hurt(::ActorDamageSource const&, float, bool, bool);
137
138 MCAPI void $addAdditionalSaveData(::CompoundTag& tag) const;
139
140 MCAPI void $readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
141
142
143 // NOLINTEND
144
145public:
146 // vftables
147 // NOLINTBEGIN
148 MCAPI static void** $vftable();
149 // NOLINTEND
150};
Definition ActorDamageSource.h:18
Definition ActorDefinitionGroup.h:37
Definition ActorHurtResult.h:5
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition EntityContext.h:17
Definition ITickDelegate.h:13
Definition Vec3.h:10
Definition ActorDefinitionIdentifier.h:15
Definition VariantParameterList.h:14