diff options
Diffstat (limited to 'src/Mobs/Old Mobs/PassiveAggressiveMonster.cpp')
-rw-r--r-- | src/Mobs/Old Mobs/PassiveAggressiveMonster.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/Mobs/Old Mobs/PassiveAggressiveMonster.cpp b/src/Mobs/Old Mobs/PassiveAggressiveMonster.cpp new file mode 100644 index 000000000..24501b1ba --- /dev/null +++ b/src/Mobs/Old Mobs/PassiveAggressiveMonster.cpp @@ -0,0 +1,41 @@ + +#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules + +#include "PassiveAggressiveMonster.h" + +#include "../Entities/Player.h" + + + + + +cPassiveAggressiveMonster::cPassiveAggressiveMonster(const AString & a_ConfigName, eType a_MobType, const AString & a_SoundHurt, const AString & a_SoundDeath, double a_Width, double a_Height) : + super(a_ConfigName, a_MobType, a_SoundHurt, a_SoundDeath, a_Width, a_Height) +{ + m_EMPersonality = PASSIVE; +} + + + + + +bool cPassiveAggressiveMonster::DoTakeDamage(TakeDamageInfo & a_TDI) +{ + if (!super::DoTakeDamage(a_TDI)) + { + return false; + } + + if ((m_Target != NULL) && (m_Target->IsPlayer())) + { + if (!((cPlayer *)m_Target)->IsGameModeCreative()) + { + m_EMState = CHASING; + } + } + return true; +} + + + + |