mirror of
https://github.com/DarkflameUniverse/DarkflameServer
synced 2024-08-30 18:43:58 +00:00
6aa90ad5b2
* 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
25 lines
802 B
C++
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;
|
|
};
|