From 79eb4c3aed59edce58d2529bf9c6334f7fe6fbad Mon Sep 17 00:00:00 2001 From: peterbell10 Date: Tue, 1 Aug 2017 18:51:43 +0100 Subject: Implement invisibility effect --- src/Entities/EntityEffect.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/Entities/EntityEffect.h') diff --git a/src/Entities/EntityEffect.h b/src/Entities/EntityEffect.h index aa18b500e..dd126c20d 100644 --- a/src/Entities/EntityEffect.h +++ b/src/Entities/EntityEffect.h @@ -81,7 +81,7 @@ public: @param a_Duration How long this effect will last, in ticks @param a_Intensity How strong the effect will be applied @param a_DistanceModifier The distance modifier for affecting potency, defaults to 1 */ - static cEntityEffect * CreateEntityEffect(cEntityEffect::eType a_EffectType, int a_Duration, short a_Intensity, double a_DistanceModifier); + static std::unique_ptr CreateEntityEffect(cEntityEffect::eType a_EffectType, int a_Duration, short a_Intensity, double a_DistanceModifier); /** Returns how many ticks this effect has been active for */ int GetTicks(void) const { return m_Ticks; } @@ -346,6 +346,12 @@ public: super(a_Duration, a_Intensity, a_DistanceModifier) { } + + virtual void OnActivate (cPawn & a_Target) override { BroadcastMetadata(a_Target); } + virtual void OnDeactivate(cPawn & a_Target) override { BroadcastMetadata(a_Target); } + +private: + static void BroadcastMetadata(cPawn & a_Target); }; -- cgit v1.2.3