66 cEntityEffect(
int a_Duration,
short a_Intensity,
double a_DistanceModifier = 1);
139 Super(a_Duration, a_Intensity, a_DistanceModifier)
160 Super(a_Duration, a_Intensity, a_DistanceModifier)
181 Super(a_Duration, a_Intensity, a_DistanceModifier)
198 Super(a_Duration, a_Intensity, a_DistanceModifier)
215 Super(a_Duration, a_Intensity, a_DistanceModifier)
232 Super(a_Duration, a_Intensity, a_DistanceModifier)
251 Super(a_Duration, a_Intensity, a_DistanceModifier)
270 Super(a_Duration, a_Intensity, a_DistanceModifier)
287 Super(a_Duration, a_Intensity, a_DistanceModifier)
304 Super(a_Duration, a_Intensity, a_DistanceModifier)
323 Super(a_Duration, a_Intensity, a_DistanceModifier)
340 Super(a_Duration, a_Intensity, a_DistanceModifier)
357 Super(a_Duration, a_Intensity, a_DistanceModifier)
374 Super(a_Duration, a_Intensity, a_DistanceModifier)
397 Super(a_Duration, a_Intensity, a_DistanceModifier)
414 Super(a_Duration, a_Intensity, a_DistanceModifier)
431 Super(a_Duration, a_Intensity, a_DistanceModifier)
451 Super(a_Duration, a_Intensity, a_DistanceModifier)
471 Super(a_Duration, a_Intensity, a_DistanceModifier)
491 Super(a_Duration, a_Intensity, a_DistanceModifier)
511 Super(a_Duration, a_Intensity, a_DistanceModifier)
528 Super(a_Duration, a_Intensity, a_DistanceModifier)
545 Super(a_Duration, a_Intensity, a_DistanceModifier)
virtual void OnDeactivate(cPawn &a_Target)
Called when the effect is removed from an entity.
virtual ~cEntityEffect(void)=default
static int GetPotionEffectDuration(short a_ItemDamage)
Returns the effect duration, in ticks, based on the potion's damage value.
double m_DistanceModifier
The distance modifier for affecting potency.
static int GetPotionColor(short a_ItemDamage)
Returns the potion color (used by the client for visuals), based on the potion's damage value.
short GetIntensity(void) const
Returns how strong the effect will be applied.
int m_Duration
How long this effect will last, in ticks.
void SetDistanceModifier(double a_DistanceModifier)
eType
All types of entity effects (numbers correspond to protocol / storage types)
int GetDuration(void) const
Returns the duration of the effect.
cEntityEffect(void)
Creates an empty entity effect.
void SetDuration(int a_Duration)
virtual void OnActivate(cPawn &a_Target)
Called when the effect is first added to an entity.
void SetTicks(int a_Ticks)
int m_Ticks
How many ticks this effect has been active for.
int GetTicks(void) const
Returns how many ticks this effect has been active for.
short m_Intensity
How strong the effect will be applied.
static std::unique_ptr< cEntityEffect > CreateEntityEffect(cEntityEffect::eType a_EffectType, int a_Duration, short a_Intensity, double a_DistanceModifier)
Creates a pointer to the proper entity effect from the effect type.
void SetIntensity(short a_Intensity)
static bool IsPotionDrinkable(short a_ItemDamage)
Returns true if the potion with the given damage is drinkable.
virtual void OnTick(cPawn &a_Target)
Called on each tick.
cEntityEffect & operator=(cEntityEffect a_OtherEffect)
Creates an entity effect by copying another.
double GetDistanceModifier(void) const
Returns the distance modifier for affecting potency.
static short GetPotionEffectIntensity(short a_ItemDamage)
Retrieves the intensity level from the potion's damage value.
static cEntityEffect::eType GetPotionEffectType(short a_ItemDamage)
Translates the potion's damage value into the entity effect that the potion gives.
cEntityEffectSpeed(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
virtual void OnDeactivate(cPawn &a_Target) override
Called when the effect is removed from an entity.
virtual void OnActivate(cPawn &a_Target) override
Called when the effect is first added to an entity.
virtual void OnDeactivate(cPawn &a_Target) override
Called when the effect is removed from an entity.
cEntityEffectSlowness(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
virtual void OnActivate(cPawn &a_Target) override
Called when the effect is first added to an entity.
cEntityEffectHaste(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectMiningFatigue(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectStrength(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectInstantHealth(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
virtual void OnActivate(cPawn &a_Target) override
Called when the effect is first added to an entity.
virtual void OnActivate(cPawn &a_Target) override
Called when the effect is first added to an entity.
cEntityEffectInstantDamage(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectJumpBoost(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectNausea(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
virtual void OnTick(cPawn &a_Target) override
Called on each tick.
cEntityEffectRegeneration(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectResistance(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectFireResistance(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectWaterBreathing(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
virtual void OnActivate(cPawn &a_Target) override
Called when the effect is first added to an entity.
cEntityEffectInvisibility(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
static void BroadcastMetadata(cPawn &a_Target)
virtual void OnDeactivate(cPawn &a_Target) override
Called when the effect is removed from an entity.
cEntityEffectBlindness(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectNightVision(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
virtual void OnTick(cPawn &a_Target) override
Called on each tick.
cEntityEffectHunger(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectWeakness(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
virtual void OnTick(cPawn &a_Target) override
Called on each tick.
virtual void OnTick(cPawn &a_Target) override
Called on each tick.
cEntityEffectPoison(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
virtual void OnTick(cPawn &a_Target) override
Called on each tick.
cEntityEffectWither(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectHealthBoost(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectAbsorption(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
cEntityEffectSaturation(int a_Duration, short a_Intensity, double a_DistanceModifier=1)
virtual void OnTick(cPawn &a_Target) override
Called on each tick.