mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-11-10 02:08:20 +00:00
8d37d9b681
* Organize dScripts whitespace Remove parent scope Remove parent scope from initial setter Remove debug Remove helper programs * Fix NtImagimeterVisibility script Co-authored-by: aronwk-aaron <aronwk.aaron@gmail.com>
25 lines
793 B
C++
25 lines
793 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;
|
|
};
|