LeviLamina
Loading...
Searching...
No Matches
AreaEffectCloud.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/legacy/ActorUniqueID.h"
7#include "mc/world/actor/Actor.h"
8#include "mc/world/actor/ActorInitializationMethod.h"
9#include "mc/world/effect/EffectDuration.h"
10#include "mc/world/effect/MobEffectInstance.h"
11
12// auto generated forward declare list
13// clang-format off
15class CompoundTag;
16class DataLoadHelper;
17class EntityContext;
20namespace mce { class Color; }
21// clang-format on
22
23class AreaEffectCloud : public ::Actor {
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mOwnerId;
28 ::ll::TypedStorage<1, 1, bool> mAffectOwner;
29 ::ll::TypedStorage<8, 8, int64> mSpawnTickClient;
30 ::ll::TypedStorage<4, 4, int> mReapplicationDelay;
31 ::ll::TypedStorage<4, 4, ::EffectDuration> mDurationOnUse;
32 ::ll::TypedStorage<4, 4, int> mLocalPickupCount;
33 ::ll::TypedStorage<4, 4, float> mRadiusOnUse;
34 ::ll::TypedStorage<8, 24, ::std::vector<::MobEffectInstance>> mMobAreaEffects;
35 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ActorUniqueID, int>> mVictims;
36 // NOLINTEND
37
38public:
39 // prevent constructor by default
40 AreaEffectCloud();
41
42public:
43 // virtual functions
44 // NOLINTBEGIN
45 virtual void reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params) /*override*/;
46
47 virtual void setOwner(::ActorUniqueID const ownerID) /*override*/;
48
49 virtual void normalTick() /*override*/;
50
51 virtual float getShadowRadius() const /*override*/;
52
53 virtual void addAdditionalSaveData(::CompoundTag& tag) const /*override*/;
54
55 virtual void readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
56 // NOLINTEND
57
58public:
59 // member functions
60 // NOLINTBEGIN
61 MCAPI AreaEffectCloud(
62 ::ActorDefinitionGroup* definitions,
63 ::ActorDefinitionIdentifier const& definitionName,
64 ::EntityContext& entityContext
65 );
66
67 MCAPI void addAreaEffect(::MobEffectInstance effect);
68
69 MCAPI void calculateAndSetRadiusPerTick();
70
71 MCAPI float getEffectiveRadius() const;
72
73 MCAPI void notifyPickup();
74
75 MCAPI void setDuration(::EffectDuration duration);
76
77 MCAPI void setInitialRadius(float radius);
78
79 MCAPI void setParticleColor(::mce::Color& c);
80 // NOLINTEND
81
82public:
83 // constructor thunks
84 // NOLINTBEGIN
85 MCAPI void* $ctor(
86 ::ActorDefinitionGroup* definitions,
87 ::ActorDefinitionIdentifier const& definitionName,
88 ::EntityContext& entityContext
89 );
90 // NOLINTEND
91
92public:
93 // virtual function thunks
94 // NOLINTBEGIN
95 MCAPI void $reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params);
96
97 MCAPI void $setOwner(::ActorUniqueID const ownerID);
98
99 MCAPI void $normalTick();
100
101 MCFOLD float $getShadowRadius() const;
102
103 MCAPI void $addAdditionalSaveData(::CompoundTag& tag) const;
104
105 MCAPI void $readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
106
107
108 // NOLINTEND
109};
Definition ActorDefinitionGroup.h:26
Definition CompoundTag.h:18
Definition DataLoadHelper.h:20
Definition EntityContext.h:15
Definition MobEffectInstance.h:16
Definition Color.h:13
Definition ActorDefinitionIdentifier.h:15
Definition ActorUniqueID.h:5
Definition EffectDuration.h:5
Definition VariantParameterList.h:14