DarkflameServer/dScripts/02_server/Pets/DamagingPets.h

25 lines
802 B
C
Raw Normal View History

#pragma once
#include "CppScripts.h"
/**
* Information about pets regarding which effect to play when a skill is cast
*/
struct PetInfo {
2022-07-28 13:39:57 +00:00
const std::vector<uint32_t> effect;
const std::string skill;
};
class DamagingPets : public CppScripts::Script {
public:
2022-07-28 13:39:57 +00:00
void OnStartup(Entity* self) override;
void OnTimerDone(Entity* self, std::string message) override;
void OnNotifyPetTamingMinigame(Entity* self, Entity* tamer, ePetTamingNotifyType type) override;
2022-07-28 13:39:57 +00:00
void OnSkillEventFired(Entity* self, Entity* target, const std::string& message) override;
void OnPlayerLoaded(Entity* self, Entity* player) override;
private:
2022-07-28 13:39:57 +00:00
static void MakeUntamable(Entity* self);
static PetInfo GetPetInfo(Entity* self);
static void ClearEffects(Entity* self);
static const std::map<LOT, PetInfo> petInfo;
};