mirror of
https://github.com/DarkflameUniverse/DarkflameServer
synced 2024-08-30 18:43:58 +00:00
26 lines
827 B
C
26 lines
827 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, eNotifyType 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;
|
||
|
};
|