mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-11-10 02:08:20 +00:00
64 lines
2.0 KiB
C++
64 lines
2.0 KiB
C++
#pragma once
|
|
|
|
// Custom Classes
|
|
#include "CDTable.h"
|
|
|
|
/*!
|
|
\file CDSkillBehaviorTable.hpp
|
|
\brief Contains data for the SkillBehavior table
|
|
*/
|
|
|
|
//! ZoneTable Struct
|
|
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 (?)
|
|
};
|
|
|
|
//! SkillBehavior table
|
|
class CDSkillBehaviorTable : public CDTable {
|
|
private:
|
|
std::map<unsigned int, CDSkillBehavior> entries;
|
|
CDSkillBehavior m_empty;
|
|
|
|
public:
|
|
|
|
//! Constructor
|
|
CDSkillBehaviorTable(void);
|
|
|
|
//! Destructor
|
|
~CDSkillBehaviorTable(void);
|
|
|
|
//! Returns the table's name
|
|
/*!
|
|
\return The table name
|
|
*/
|
|
std::string GetName(void) const override;
|
|
|
|
//! Queries the table with a custom "where" clause
|
|
/*!
|
|
\param predicate The predicate
|
|
*/
|
|
std::vector<CDSkillBehavior> Query(std::function<bool(CDSkillBehavior)> predicate);
|
|
|
|
//! Gets an entry by ID
|
|
const CDSkillBehavior& GetSkillByID(unsigned int skillID);
|
|
};
|
|
|