📄 gameresourcestruct.h
字号:
#ifndef __GAMERESOURCESTRUCT_H__
#define __GAMERESOURCESTRUCT_H__
class ITEM_MIX_INFO;
class ITEM_MIX_RES;
class ITEM_MIX_MATERIAL;
class CSkillInfo;
//-----------------------------------------------------------------------
// 流诀喊 扁夯 器牢飘 荐摹客 饭骇诀矫 器牢磐 啊吝摹
//-----------------------------------------------------------------------
struct CharBasicStats
{
WORD wGenGol; // 辟榜
WORD wMinChub; // 刮酶
WORD wCheRyuk; // 眉仿
WORD wSimMek; // 缴钙
//货肺款 扁裙 荐沥栏肺 绝绢咙
//BYTE BonusPoint; // 焊呈胶 器牢飘 general-15
};
class RECALLINFO
{
public:
DWORD RecallType;
DWORD RecallID;
DWORD RecallMonsterNum;
DWORD RecallRange;
};
class ATTACKPATTERNINFO
{
public:
WORD AttackPatternNum;
WORD * AttackPattern; // 0->1->2->2->1->....
};
class CAttackPatternInfo
{
public:
ATTACKPATTERNINFO * pAttackPatternInfo;
virtual ~CAttackPatternInfo()
{
delete [] pAttackPatternInfo;
}
void Init(WORD wTotalNum)
{
MaxAttackNum = wTotalNum;
pAttackPatternInfo = new ATTACKPATTERNINFO[MaxAttackNum];
memset(pAttackPatternInfo, 0, sizeof(ATTACKPATTERNINFO)*MaxAttackNum);
}
void InitPattern(WORD PNum, WORD wTotalNum)
{
pAttackPatternInfo[PNum].AttackPatternNum = wTotalNum;
pAttackPatternInfo[PNum].AttackPattern = new WORD[wTotalNum];
memset(pAttackPatternInfo[PNum].AttackPattern, 0, sizeof(WORD)*wTotalNum);
}
void SetVal(WORD PNum, WORD PIdx, WORD PVal)
{
pAttackPatternInfo[PNum].AttackPattern[PIdx] = PVal;
}
WORD MaxAttackNum;
};
class CRecallInfo
{
public:
RECALLINFO * pRecallInfo;
CRecallInfo(){ memset(this, 0, sizeof(CRecallInfo)); }
virtual ~CRecallInfo()
{
if(pRecallInfo)
delete [] pRecallInfo;
}
void Init(DWORD nRecall)
{
MaxRecallNum = nRecall;
pRecallInfo = new RECALLINFO[MaxRecallNum];
memset(pRecallInfo, 0, sizeof(RECALLINFO)*MaxRecallNum);
}
RECALLINFO * GetRecallInfo(DWORD dwIdx)
{
ASSERT(dwIdx < MaxRecallNum);
return &pRecallInfo[dwIdx];
}
void SetRecallType(DWORD dwIdx, DWORD dwType)
{
pRecallInfo[dwIdx].RecallType = dwType;
}
void SetRecallID(DWORD dwIdx, DWORD dwID)
{
pRecallInfo[dwIdx].RecallID = dwID;
}
void SetRecallMonsterNum(DWORD dwIdx, DWORD dwNum)
{
pRecallInfo[dwIdx].RecallMonsterNum = dwNum;
}
void SetRecallRange(DWORD dwIdx, DWORD dwRange)
{
pRecallInfo[dwIdx].RecallRange = dwRange;
}
protected:
DWORD MaxRecallNum;
};
//-----------------------------------------------------------------------
// 阁胶磐 府胶飘 沥焊
//-----------------------------------------------------------------------
class BASE_MONSTER_LIST
{
public:
WORD MonsterKind; // 锅龋
char Name[17]; // 阁胶磐捞抚
char EngName[17]; // 康绢捞抚
LEVELTYPE Level; // 阁胶磐饭骇
int MoveDramaNum; // 捞悼楷免 锅龋
DWORD MotionID;
char ChxName[32]; // 阁胶磐 CHX_Index
float Scale; // 阁胶磐 农扁
DWORD Gravity; // 阁胶磐 厚吝
float Weight; // 阁胶磐 公霸
DWORD MonsterRadius;
DWORD Life; // 积疙仿
DWORD Shield; // 龋脚碍扁
EXPTYPE ExpPoint; // 版氰摹
WORD Tall; // 虐
WORD AttackPhysicalMin;// 傍拜 弥家拱府 傍拜仿
WORD AttackPhysicalMax;// 傍拜 弥措拱府 傍拜仿
WORD CriticalPercent;// 农府萍拿 欺季飘
WORD PhysicalDefense;// 拱府 规绢仿
ATTRIBUTEREGIST AttribResist; // 加己历亲仿
WORD WalkMove;// 阁胶磐叭扁捞悼仿
WORD RunMove;// 阁胶磐顿扁捞悼仿
WORD RunawayMove;// 阁胶磐档噶捞悼仿
int Damage1DramaNum;// 嘎澜 1 楷免 锅龋
int Die1DramaNum;// 磷澜 1 楷免 锅龋
int Die2DramaNum;// 磷澜 2 楷免 锅龋
DWORD StandTime;
BYTE StandRate;
BYTE WalkRate;
BYTE RunRate;
DWORD DomainRange; // 康开 裹困 : 馆瘤抚
DWORD PursuitForgiveTime;
// DWORD PursuitForgiveStartTime; //not inclue in txt list
DWORD PursuitForgiveDistance;
BOOL bForeAttack; // 急傍拜
DWORD SearchPeriodicTime; // 沤祸 林扁
WORD TargetSelect; // 鸥百 急琶 : FIND_CLOSE, FIND_FIRST
DWORD SearchRange;
DWORD SearchAngle;
WORD TargetChange;
WORD AttackKind;
DWORD AttackNum;
DWORD * AttackIndex;
DWORD * AttackRate;
CSkillInfo ** SkillInfo;
WORD InitHelpType; // 0 : no request, 1~~
BOOL bHearing;
DWORD HearingDistance;
};
class SMONSTER_LIST : public BASE_MONSTER_LIST
{
public:
/*
virtual ~SMONSTER_LIST()
{
for(int i = 0 ; i < MaxAttackNum ; ++i )
delete [] AttackNumPattern[i];
delete [] AttackNumPattern;
delete [] MaxAttackIndexNum;
}
WORD MaxAttackNum;
WORD * MaxAttackIndexNum;
WORD ** AttackNumPattern;
*/
CAttackPatternInfo AttackPatternClass;
CRecallInfo RecallInfoClass;
};
class MONSTEREX_LIST : public BASE_MONSTER_LIST
{
public:
MONEYTYPE MinDropMoney; // 弥家捣 咀荐
MONEYTYPE MaxDropMoney; // 弥措 捣 咀荐
WORD DropRate[eDROPITEMKIND_MAX];
// 辑滚俊辑 荤侩
// 檬扁拳啊 鞘夸!!
WORD CurDropRate[eDROPITEMKIND_MAX];
WORD ItemListNum1; // 秦寸酒捞袍1府胶飘钎锅龋
WORD ItemListNum2; // 秦寸酒捞袍2府胶飘钎锅龋 - 眠啊
WORD ItemListNum3; // 秦寸酒捞袍3府胶飘钎锅龋 - 眠啊
BYTE MaxDropItemNum; // 弥措酒捞袍 肮荐
float fRunawayLifeRate; // 积疙仿 犬伏 0~100
WORD RunawayRate; // 档噶 犬伏
WORD RunawayHelpRate; // 档噶 档框犬伏
WORD RunawayDistance; // 档噶 芭府
WORD Talk1; // 措荤 1
WORD Talk2;
WORD Talk3;
WORD HelpRequestCondition;
WORD HelpRequestDistance;
WORD HelpRequestTargetNum;
WORD RecallCondition;
WORD RecallObjectID;
WORD RecallObjectNum;
};
//////////////////////////////////////////////////////////////////////////
// 阁胶磐 chx 颇老狼 府胶飘
//////////////////////////////////////////////////////////////////////////
typedef struct _CHXLIST
{
StaticString FileName;
}CHXLIST;
//-----------------------------------------------------------------------
// 甘傈券 谅钎扁撅 备炼眉
//-----------------------------------------------------------------------
typedef struct _MAPCHANGE_INFO
{
WORD Kind;
char CurMapName[MAX_NAME_LENGTH];
char ObjectName[MAX_NAME_LENGTH];
WORD CurMapNum;
WORD MoveMapNum;
VECTOR3 CurPoint;
VECTOR3 MovePoint;
WORD chx_num;
// 规氢汲沥
}MAPCHANGE_INFO;
//-----------------------------------------------------------------------
// LogIn 谅钎扁撅 备炼眉
//-----------------------------------------------------------------------
typedef struct _LOGINPOINT_INFO
{
WORD Kind;
char MapName[MAX_NAME_LENGTH];
WORD MapNum;
BYTE Map_SubKind;
VECTOR3 CurPoint;
WORD chx_num;
// 规氢汲沥
}LOGINPOINT_INFO;
//-----------------------------------------------------------------------
// NPC 沥焊
//-----------------------------------------------------------------------
typedef struct _NPC_LIST
{
WORD NpcKind; // Npc 辆幅
char Name[17]; // Npc 捞抚
WORD ModelNum; // MonsterChxList俊辑狼 锅龋
WORD JobKind; // 流诀辆幅喊备盒
}NPC_LIST;
//-----------------------------------------------------------------------
// NPC 府哩
//-----------------------------------------------------------------------
typedef struct _NPC_REGEN
{
_NPC_REGEN():dwObjectID(0),NpcKind(0)
{
Pos.x = Pos.y = Pos.z = 0;
}
DWORD dwObjectID; // 脚痹 眠啊 taiyo
MAPTYPE MapNum; // Map锅龋
WORD NpcKind; // NpcKind
char Name[17]; // Npc 捞抚
WORD NpcIndex; // NpcIndex(绊蜡锅龋肺 荤侩)
VECTOR3 Pos; // 阁胶磐 困摹
float Angle; // 阁胶磐 阿档
}NPC_REGEN;
//-----------------------------------------------------------------------
// MOD 府胶飘
//-----------------------------------------------------------------------
typedef struct _MOD_LIST
{
_MOD_LIST()
{
MaxModFile = 0;
ModFile = NULL;
}
~_MOD_LIST()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -