Clone of PhatAC @ https://github.com/floaterxk/PhatAC

Monster.h 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #pragma once
  2. #include "attributes.h"
  3. #include "vitals.h"
  4. #include "skills.h"
  5. class CBaseMonster : public CPhysicsObj
  6. {
  7. public:
  8. CBaseMonster();
  9. ~CBaseMonster();
  10. void MonsterThink();
  11. virtual void Precache();
  12. virtual float GetBurdenPercent();
  13. virtual void CalculateSpeed();
  14. virtual BOOL IsMonster() { return TRUE; }
  15. virtual void PostSpawn();
  16. virtual DWORD GiveAttributeXP(eAttribute index, DWORD dwXP);
  17. virtual DWORD GiveVitalXP(eVital index, DWORD dwXP);
  18. virtual DWORD GiveSkillXP(eSkill index, DWORD dwXP);
  19. virtual ATTRIBUTE* GetAttributeData(eAttribute index);
  20. virtual VITAL* GetVitalData(eVital index);
  21. virtual SKILL* GetSkillData(eSkill index);
  22. virtual void Animation_Complete(animation_t *data);
  23. virtual void LaunchSpell(DWORD dwSpellID, DWORD dwTarget);
  24. virtual void Attack(DWORD dwTarget, DWORD dwHeight, float flPower);
  25. ATTRIBUTE m_attributes[6];
  26. VITAL m_vitals[6];
  27. SKILL m_skills[40];
  28. };
  29. class CBaelZharon : public CBaseMonster
  30. {
  31. public:
  32. CBaelZharon();
  33. BOOL CrazyThink();
  34. };
  35. class CTargetDrudge : public CBaseMonster
  36. {
  37. public:
  38. CTargetDrudge();
  39. };