Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
70
GameTools/GLOBALSCRIPT/Skill/SkillMgr.h
Normal file
70
GameTools/GLOBALSCRIPT/Skill/SkillMgr.h
Normal file
@@ -0,0 +1,70 @@
|
||||
#ifndef _SKILL_MGR_H_
|
||||
#define _SKILL_MGR_H_
|
||||
|
||||
#define g_SkillMgr CSkillMgr::GetInstance()
|
||||
#include <limits>
|
||||
#include <Pattern/Singleton.h>
|
||||
#include "SkillStructure.h"
|
||||
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
class CDelimitedFile;
|
||||
|
||||
|
||||
class CSkillMgr : public CSingleton<CSkillMgr>
|
||||
{
|
||||
public:
|
||||
|
||||
enum _Const
|
||||
{
|
||||
MAX_SKILL_LOCKCOUNT = 5, // <20><>ų<EFBFBD><C5B3> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD> (<28><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŭ ProtoType<70><65> <20><><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>)
|
||||
MAX_SKILL_LEVEL = 7, // <20><>ų <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ѱ<EFBFBD>
|
||||
|
||||
PARTY_SPELL = 0x80, // <20><>Ƽ <20>ֹ<EFBFBD><D6B9><EFBFBD> <20><>Ʈ
|
||||
MAX_SKILL_PER_STATUS = 16, // æƮ<C3A6><C6AE> <20><>æƮ<C3A6><C6AE> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
NORMAL_SKILL = -1,
|
||||
MULTI_TARGET_SKILL = 1 // Ÿ<><C5B8> Ÿ<><C5B8> (<28><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ѹ<EFBFBD><D1B9><EFBFBD> MP<4D><50> <20>Ҹ<EFBFBD><D2B8>Ѵ<EFBFBD>)
|
||||
};
|
||||
|
||||
unsigned int GetRange(unsigned short usSkill_ID);
|
||||
|
||||
bool LoadSkillsFromFile(const char* szFileName = 0);
|
||||
bool LoadSkillsFromBinary(const char* szFileNameBinary = 0);
|
||||
bool SaveSkillsToBinary(const char* szFileNameBinary = 0, const char* szTrashFile = 0);
|
||||
|
||||
void ClearProtoType();
|
||||
|
||||
const Skill::ProtoType* GetSkillProtoType(unsigned short usSkill_ID);
|
||||
|
||||
/*
|
||||
// <20><>Ÿ <20>ҵ<DEBC>
|
||||
#ifndef _RYL_GAME_CLIENT_
|
||||
void ProcessSkillException(SKILL* pSkill, unsigned short cClass);
|
||||
#endif
|
||||
*/
|
||||
|
||||
~CSkillMgr();
|
||||
|
||||
private:
|
||||
|
||||
CSkillMgr();
|
||||
|
||||
struct ProtoTypeArray
|
||||
{
|
||||
Skill::ProtoType m_ProtoTypes[MAX_SKILL_LOCKCOUNT];
|
||||
inline bool operator < (ProtoTypeArray& rhs)
|
||||
{ return m_ProtoTypes[0].m_usSkill_ID < rhs.m_ProtoTypes[0].m_usSkill_ID; }
|
||||
};
|
||||
|
||||
static const char* ms_szSkillScriptFileName;
|
||||
static CSkillMgr ms_this;
|
||||
|
||||
ProtoTypeArray* m_ProtoTypeArray;
|
||||
size_t m_nSkillNum;
|
||||
|
||||
// <20><><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD>, <20>˸<EFBFBD><CBB8><EFBFBD> Ÿ<><C5B8> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>. <20><><EFBFBD>н<EFBFBD> nMaxType<70><65> <20><><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>.
|
||||
unsigned char ReadStringToTypeValue(CDelimitedFile& DelimitedFile, const char* szColumn,
|
||||
const CTypeName* TypeArray, const unsigned char nMaxType);
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user