20class MobEffectInstance {
24 ::ll::TypedStorage<4, 4, uint> mId;
25 ::ll::TypedStorage<4, 4, ::EffectDuration> mDuration;
26 ::ll::TypedStorage<4, 8, ::std::optional<::EffectDuration>> mDurationEasy;
27 ::ll::TypedStorage<4, 8, ::std::optional<::EffectDuration>> mDurationNormal;
28 ::ll::TypedStorage<4, 8, ::std::optional<::EffectDuration>> mDurationHard;
29 ::ll::TypedStorage<4, 4, int> mAmplifier;
30 ::ll::TypedStorage<1, 1, bool> mDisplayOnScreenTextureAnimation;
31 ::ll::TypedStorage<1, 1, bool> mIsCounterPausedThisTick;
32 ::ll::TypedStorage<1, 1, bool> mAmbient;
33 ::ll::TypedStorage<1, 1, bool> mEffectVisible;
34 ::ll::TypedStorage<8, 96, ::MobEffect::FactorCalculationData> mFactorCalculationData;
44 MCAPI
explicit MobEffectInstance(uint
id);
50 MCAPI MobEffectInstance(
59 MCAPI
void applyEffects(
::Actor& mob)
const;
65 MCFOLD
bool displaysOnScreenTextureAnimation()
const;
67 MCFOLD
int getAmplifier()
const;
69 MCAPI ::HashedString
const& getComponentName()
const;
71 MCAPI ::std::string
const& getDescriptionId()
const;
73 MCAPI ::EffectDuration getDifficultyDuration(::SharedTypes::Legacy::Difficulty difficulty)
const;
75 MCAPI ::std::string getDisplayName()
const;
77 MCAPI ::EffectDuration getDuration()
const;
79 MCFOLD uint getId()
const;
81 MCAPI ::EffectDuration getLingerDuration()
const;
83 MCAPI ::std::string
const& getResourceName()
const;
85 MCAPI ::EffectDuration getSplashDuration()
const;
87 MCAPI ::MobEffectInstance getSplashEffect()
const;
89 MCAPI
bool isAmbient()
const;
91 MCAPI
bool isEffectVisible()
const;
93 MCAPI
void onActorDied(
::Actor& mob)
const;
97 MCAPI
void onEffectsExpired(
::Actor& mob)
const;
99 MCAPI
bool operator!=(::MobEffectInstance
const& obj)
const;
102 MCFOLD
bool operator==(::MobEffectInstance
const& obj)
const;
105 MCAPI
void pauseCounterThisTick();
109 MCAPI ::std::unique_ptr<::CompoundTag> save()
const;
111 MCAPI
void setDifficultyDuration(::SharedTypes::Legacy::Difficulty difficulty,
::EffectDuration duration);
115 MCAPI
void splitDurations(
int splitValue);
119 MCAPI
void tryInitializeMobEffectData();
121 MCAPI
void update(::MobEffectInstance
const& takeOver);
123 MCAPI
void updateEffects(
::Actor& mob)
const;
133 MCAPI static ::mce::Color getAverageColorValue(::std::vector<::MobEffectInstance>
const& effects);
135 MCAPI static ::MobEffectInstance load(
::CompoundTag const& tag);
141 MCAPI static ::MobEffectInstance
const& NO_EFFECT();
143 MCAPI
static float& splashDurationMultiplier();
149 MCAPI
void* $ctor(uint
id);
156 $ctor(uint
id,
::EffectDuration duration,
int amplifier,
bool ambient,
bool effectVisible,
bool displayAnimation);