diff options
author | Mattes D <github@xoft.cz> | 2014-07-17 11:23:09 +0200 |
---|---|---|
committer | Mattes D <github@xoft.cz> | 2014-07-17 11:23:09 +0200 |
commit | ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4 (patch) | |
tree | e2a6e048422755b6a5b04c0fbe3afd0bfbf1c700 /src/Entities/Pawn.h | |
parent | Merge pull request #1193 from mc-server/deathmessages (diff) | |
parent | Fixed 3 MSVC warnings in SplashPotionEntity. (diff) | |
download | cuberite-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.h | 28 |
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 |