summaryrefslogtreecommitdiffstats
path: root/src/Entities/Pawn.h
diff options
context:
space:
mode:
authorMattes D <github@xoft.cz>2014-07-17 11:23:09 +0200
committerMattes D <github@xoft.cz>2014-07-17 11:23:09 +0200
commitec77cf1b06c3008a3c9046a6e0b6a85b0629dba4 (patch)
treee2a6e048422755b6a5b04c0fbe3afd0bfbf1c700 /src/Entities/Pawn.h
parentMerge pull request #1193 from mc-server/deathmessages (diff)
parentFixed 3 MSVC warnings in SplashPotionEntity. (diff)
downloadcuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar
cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar.gz
cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar.bz2
cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar.lz
cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar.xz
cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar.zst
cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.zip
Diffstat (limited to 'src/Entities/Pawn.h')
-rw-r--r--src/Entities/Pawn.h28
1 files changed, 27 insertions, 1 deletions
diff --git a/src/Entities/Pawn.h b/src/Entities/Pawn.h
index e76337d86..63c7cfbb6 100644
--- a/src/Entities/Pawn.h
+++ b/src/Entities/Pawn.h
@@ -2,6 +2,7 @@
#pragma once
#include "Entity.h"
+#include "EntityEffect.h"
@@ -18,9 +19,34 @@ public:
CLASS_PROTODEF(cPawn);
cPawn(eEntityType a_EntityType, double a_Width, double a_Height);
+
+ virtual void Tick(float a_Dt, cChunk & a_Chunk) override;
+ virtual void KilledBy(TakeDamageInfo & a_TDI) override;
+
+ // tolua_begin
+
+ /** Applies an entity effect
+ Checks with plugins if they allow the addition.
+ @param a_EffectType The entity effect to apply
+ @param a_EffectDurationTicks The duration of the effect
+ @param a_EffectIntensity The level of the effect (0 = Potion I, 1 = Potion II, etc)
+ @param a_DistanceModifier The scalar multiplied to the potion duration, only applies to splash potions)
+ */
+ void AddEntityEffect(cEntityEffect::eType a_EffectType, int a_EffectDurationTicks, short a_EffectIntensity, double a_DistanceModifier = 1);
+
+ /** Removes a currently applied entity effect
+ @param a_EffectType The entity effect to remove
+ */
+ void RemoveEntityEffect(cEntityEffect::eType a_EffectType);
+
+ /** Removes all currently applied entity effects (used when drinking milk) */
+ void ClearEntityEffects(void);
+
+ // tolua_end
protected:
- bool m_bBurnable;
+ typedef std::map<cEntityEffect::eType, cEntityEffect *> tEffectMap;
+ tEffectMap m_EntityEffects;
} ; // tolua_export