DarkflameServer/dScripts/02_server/Pets/DamagingPets.h
Aaron Kimbrell 6aa90ad5b2
Breakout rest of the enums from dCommonVars and clean it up (#1061)
* Breakout rest of the enums from dcommonvars
so we don't have to deal with merge conflicts
ePlayerFlags is not a scoped enum, yet, due to it's complexity

* address feedback

* make player flag types consistent

* fix typo
2023-05-02 17:39:21 -05:00

25 lines
802 B
C++

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