mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-12-25 23:13:35 +00:00
42 lines
1.7 KiB
C++
42 lines
1.7 KiB
C++
#pragma once
|
|
|
|
// Custom Classes
|
|
#include "CDTable.h"
|
|
|
|
struct CDSkillBehavior {
|
|
unsigned int skillID; //!< The Skill ID of the skill
|
|
UNUSED(unsigned int locStatus); //!< ??
|
|
unsigned int behaviorID; //!< The Behavior ID of the skill
|
|
unsigned int imaginationcost; //!< The imagination cost of the skill
|
|
unsigned int cooldowngroup; //!< The cooldown group ID of the skill
|
|
float cooldown; //!< The cooldown time of the skill
|
|
UNUSED(bool isNpcEditor); //!< ???
|
|
UNUSED(unsigned int skillIcon); //!< The Skill Icon ID
|
|
UNUSED(std::string oomSkillID); //!< ???
|
|
UNUSED(unsigned int oomBehaviorEffectID); //!< ???
|
|
UNUSED(unsigned int castTypeDesc); //!< The cast type description(?)
|
|
UNUSED(unsigned int imBonusUI); //!< The imagination bonus of the skill
|
|
UNUSED(nsigned int lifeBonusUI); //!< The life bonus of the skill
|
|
UNUSED(unsigned int armorBonusUI); //!< The armor bonus of the skill
|
|
UNUSED(unsigned int damageUI); //!< ???
|
|
UNUSED(bool hideIcon); //!< Whether or not to show the icon
|
|
UNUSED(bool localize); //!< ???
|
|
UNUSED(std::string gate_version); //!< ???
|
|
UNUSED(unsigned int cancelType); //!< The cancel type (?)
|
|
};
|
|
|
|
class CDSkillBehaviorTable : public CDTable<CDSkillBehaviorTable> {
|
|
private:
|
|
std::map<unsigned int, CDSkillBehavior> entries;
|
|
CDSkillBehavior m_empty;
|
|
|
|
public:
|
|
CDSkillBehaviorTable();
|
|
// Queries the table with a custom "where" clause
|
|
std::vector<CDSkillBehavior> Query(std::function<bool(CDSkillBehavior)> predicate);
|
|
|
|
// Gets an entry by skillID
|
|
const CDSkillBehavior& GetSkillByID(unsigned int skillID);
|
|
};
|
|
|