mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2025-08-04 01:34:07 +00:00
.github
cmake
dAuthServer
dChatFilter
dChatServer
dCommon
dDatabase
dGame
dMasterServer
dNavigation
dNet
dPhysics
dScripts
02_server
DLU
Enemy
Equipment
Map
Minigame
Objects
Pets
CMakeLists.txt
DamagingPets.cpp
DamagingPets.h
PetFromDigServer.cpp
PetFromDigServer.h
PetFromObjectServer.cpp
PetFromObjectServer.h
CMakeLists.txt
EquipmentScripts
EquipmentTriggers
ai
client
zone
ActivityManager.cpp
ActivityManager.h
BaseConsoleTeleportServer.cpp
BaseConsoleTeleportServer.h
BasePropertyServer.cpp
BasePropertyServer.h
BaseRandomServer.cpp
BaseRandomServer.h
BaseSurvivalServer.cpp
BaseSurvivalServer.h
BaseWavesGenericEnemy.cpp
BaseWavesGenericEnemy.h
BaseWavesServer.cpp
BaseWavesServer.h
CMakeLists.txt
ChooseYourDestinationNsToNt.cpp
ChooseYourDestinationNsToNt.h
CppScripts.cpp
CppScripts.h
Darkitect.cpp
Darkitect.h
InvalidScript.cpp
InvalidScript.h
NPCAddRemoveItem.cpp
NPCAddRemoveItem.h
NtFactionSpyServer.cpp
NtFactionSpyServer.h
ScriptComponent.cpp
ScriptComponent.h
ScriptedPowerupSpawner.cpp
ScriptedPowerupSpawner.h
SpawnPetBaseServer.cpp
SpawnPetBaseServer.h
dServer
dWorldServer
dZoneManager
docs
migrations
resources
tests
thirdparty
vanity
.dockerignore
.editorconfig
.env.example
.git-blame-ignore-revs
.gitattributes
.gitignore
.gitmodules
CMakeLists.txt
CMakePresets.json
CMakeVariables.txt
CONTRIBUTING.md
Dockerfile
LICENSE
README.md
SECURITY.md
build.sh
docker-compose.yml
entrypoint.sh
logo.png
systemd.example
versions.txt

* 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;
|
|
};
|