📄 objectmonster.h
字号:
#define _MONSTER_SANDMOB 3 // 籍厘牢
#define _MONSTER_ROCKMAN 4 // 荤鲍
#define _MONSTER_RON 9 // 沸
#define _MONSTER_MINORNUMA 18 // 穿付
#define _ANIMAL_DEER 21 // 荤娇
#define _MONSTER_OMA 23 // 坷付
#define _MONSTER_OMAKNIGHT 25 // 坷付傈荤
#define _MONSTER_OMAWARRIOR 27 // 坷付侩荤
#define _MONSTER_SPITSPIDER 30 // 魔芭固
#define _MONSTER_STICK 39 // 侥牢檬
#define _MONSTER_DUALAXE 42 // 街档尝秦榜
#define _MONSTER_THONEDARK 74 // 促农
#define _MONSTER_LIGHTZOMBI 78 // 扼捞飘醋 粱厚
#define _MONSTER_WHITESKELETON 94 // 归榜
#define _MONSTER_BEEQUEEN 124 // 厚阜盔面
#define _MONSTER_BEE 125 // 厚阜面
#define _MONSTER_MAGUNGSA 143 // 付泵荤
#define _MONSTER_SCULTURE1 145 // 林付脚厘
#define _MONSTER_SCULTURE2 148 // 林付脚厘
#define _MONSTER_SCULTUREKING 152 // 林付空
#define _MONSTER_ELFMONSTER 161 // 脚荐
#define _MONSTER_ELFWARRIOR 162 // 脚荐 函脚饶
#define LA_UNDEAD 1
class CHolySeizeInfo
{
public:
CEvent* Event[8];
CWHList<CCharObject*> SeizeList;
DWORD dwOpenTime;
DWORD dwSeizeTime;
};
class CMonsterObject : public CNPCObject
{
public:
int m_nRace;
DWORD m_dwNextWalkTime;
DWORD m_dwHitTime;
DWORD m_dwNextHitTime;
DWORD m_dwThinkTime;
DWORD m_dwSearchEnemyTime;
int m_nTargetX;
int m_nTargetY;
BYTE m_btTargetDir;
DWORD m_dwRunAwayTime;
DWORD m_dwRunAwayStart;
DWORD m_dwExpHitTime;
DWORD m_dwLastHitTime;
DWORD m_nFindPathTime;
BOOL m_fDupMode;
BOOL m_fRunAwayMode;
BOOL m_fNoAttackMode;
BOOL m_fHasMission;
int m_nMissionX;
int m_nMissionY;
int m_nFightExp;
WORD m_wEscape;
BYTE m_btLifeAttrib;
BOOL m_fBoHolySeize;
DWORD m_dwHolySeizeStart;
DWORD m_dwHolySeizeTime;
DWORD m_dwGold;
CWHList<_LPTGENERALITEMRCD> m_xTGenItemRcd;
CWHList<_LPTUSERITEMRCD> m_xTItemRcd;
public:
CMonsterObject();
BOOL Think();
BOOL Attack();
BOOL IsFrontObject(CCharObject* pCharObject);
void Struck(CCharObject* pHitter);
void SetLastHiter(CCharObject* pHitter);
void GotoTargetXY();
BOOL TargetInAttackRange();
BOOL TargetInSpitRange(int& nTargetDir);
void Wondering();
void MonsterNormalAttack();
CMonsterObject* MakeClone(int nMonRace);
void MakeHolySeize(DWORD dwHTime);
void BreakHolySeize();
void ComeOut();
void ComeDown();
BOOL CheckComeOut(int nValue);
void Initialize();
void InheritedRun();
void KickException();
void Die();
void ScatterBagItems();
void MakeGenItem(_LPTGENERALITEMRCD lptGenItemRcd);
void MonGetRandomItems();
virtual BOOL IsProperTarget(CCharObject* pCharObject);
virtual void Operate();
virtual BOOL AttackTarget();
virtual BOOL WalkTo(int nDir);
virtual void SearchViewRange();
virtual void Run();
virtual WORD GetThisCharColor();
virtual void GetCharName(char *pszCharName);
};
class CGenneralMonObject : public CMonsterObject
{
public:
virtual void Run();
};
class CAnimalObject : public CMonsterObject
{
public:
BOOL m_fSkeleton;
int m_nMeatQuality;
int m_nBodyLeathery;
};
// 催
class CChickenObject : public CAnimalObject
{
public:
CChickenObject();
virtual void Run();
};
// 林付脚厘, 林付龋过
class CScultureObject : public CMonsterObject
{
public:
CScultureObject();
void MeltStone();
void MeltStoneAll();
virtual void Run();
};
// 林付空
class CScultureKingObject : public CMonsterObject
{
protected:
CWHList<CMonsterObject*> m_SlaveObjectList;
int m_nDangerLevel;
public:
CScultureKingObject();
void MeltStone();
void CallSlave();
virtual void Run();
};
// 厚阜盔面
class CBeeQueen : public CMonsterObject
{
protected:
CWHList<CMonsterObject*> m_SlaveObjectList;
public:
CBeeQueen();
void CallSlave();
void MakeChildBee();
virtual void Operate();
virtual void Run();
};
// 街档尝秦榜, 付泵荤
class CDualAxeObject : public CMonsterObject
{
protected:
int m_nChainShot;
int m_nChainShotCount;
public:
CDualAxeObject(int nChainShotCount = 2);
void FlyAxeAttack(CCharObject* pTargetObject);
virtual BOOL AttackTarget();
virtual void Run();
};
// 扼捞飘葫 粱厚
class CLightingZombiObject : public CMonsterObject
{
public:
CLightingZombiObject()
{
m_dwSearchTick = 1500 + rand() % 1500;
}
void LightingAttack(int nDir);
virtual void Run();
};
// 沸
class CRonObject : public CGenneralMonObject
{
public:
void AroundAttack();
virtual void Run();
};
// 窍鞭 穿付
class CMinorNumaObject : public CMonsterObject
{
public:
virtual void Run();
};
// 坷付 矫府令
class COmaObject : public CMonsterObject
{
public:
virtual void Run();
};
// 侥牢檬
class CStickObject : public CMonsterObject
{
public:
CStickObject();
virtual void Run();
};
// 葛贰 鲍拱 (荤鲍)
class CSandMobObject : public CMonsterObject
{
public:
DWORD m_dwAppearStart;
CSandMobObject();
virtual void Run();
};
// 籍厘牢
class CRockManObject : public CMonsterObject
{
public:
CRockManObject();
virtual void Run();
};
// 归榜
class CWhiteSkeleton : public CGenneralMonObject
{
protected:
BOOL m_fIsFirst;
public:
CWhiteSkeleton();
void ResetSkeleton();
virtual void Run();
};
// 魔芭固
class CSpitSpiderMonster : public CGenneralMonObject
{
public:
CSpitSpiderMonster();
void SpitAttack(int nDir);
virtual BOOL AttackTarget();
};
// 脚荐 函脚傈
class CElfMonster : public CMonsterObject
{
protected:
BOOL m_fIsFirst;
public:
CElfMonster();
void AppearNow();
void ResetElfMon();
virtual void Run();
};
// 脚荐 函脚饶
class CElfWarriorMonster : public CSpitSpiderMonster
{
protected:
BOOL m_fIsFirst;
public:
CElfWarriorMonster();
void AppearNow();
void ResetElfMon();
virtual void Run();
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -