📄 npc_pattern.h
字号:
#if !defined(AFX_NPC_PATTERN_H__562FB52A_67CE_44B8_82E6_8CCA090DFDA2__INCLUDED_)
#define AFX_NPC_PATTERN_H__562FB52A_67CE_44B8_82E6_8CCA090DFDA2__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define NPC_PATTERN_NO_MOVE_ 0 // 啊父洒 乐绰促.
#define NPC_PATTERN_HOSTILE_ 10 // 利措利栏肺 官诧促.
#define NPC_PATTERN_PEACE_ 20 // 乞拳利栏肺 官诧促.
#define NPC_PATTERN_FIND_CLOSE_PC_ 30 // 啊鳖款 pc甫 茫绰促.(弊率阑 官扼夯促. )
#define NPC_PATTERN_FIND_WEAK_PC_ 40 // 距茄 pc甫 茫绰促.(弊率阑 官扼夯促. )
#define NPC_PATTERN_FIND_STRONG_PC_ 50 // 碍茄 pc甫 茫绰促.(弊率阑 官扼夯促. )
#define NPC_PATTERN_ACCESS_PC_ 60 // 茫篮 PC俊 利辟茄促. ( Hostile老版快 傍拜裹困俊 乐栏搁 傍拜茄促. peace老版快 立辟秦档 啊父洒 立辟窍绰仇阑 官扼夯促.
#define NPC_PATTERN_ACCESS_PC_ATTACKED_ 70 // 唱甫 傍拜茄 Pc俊 立辟茄促.
#define NPC_PATTERN_ATTACK_PC_ 71
#define NPC_PATTERN_WANDER_RANGE_1_ 80 // 硅雀茄促. ( 1锅 硅雀裹困啊 1捞促. )
#define NPC_PATTERN_WANDER_RANGE_2_ 90 // 硅拳茄促. ( 1锅 硅雀裹困啊 2捞促. )
#define NPC_PATTERN_WANDER_RANGE_3_ 100 // 硅拳茄促. ( 1锅 硅雀裹困啊 3捞促. )
#define NPC_PATTERN_ESCAPE_PC_ 110 // 茫篮 PC肺 何磐 档噶埃促.
#define NPC_PATTERN_ESCAPE_BATTLE_PC_ 120 // 辟贸俊 傍拜 PC啊 乐栏搁 钢府 档噶埃促.
#define NPC_PATTERN_RETURN_ 130 // patterntype阑 0栏肺 Setting茄促.
#define NPC_PATTERN_BACKDRAW_ 140 // 傍拜窍妨绰 仇第肺 3鸥老 狐柳促.
#define NPC_PATTERN_IAM_BOSS_8_ 150
#define NPC_PATTERN_TOBOSS_8_ 160
#define NPC_PATTERN_WANDER_8_ 170
#define NPC_PATTERN_MURI_8_ 180
#define NPC_PATTERN_ACCESS_PC_8_ 190
#define NPC_PATTERN_ATTACK_PC_8_ 200
#define NPC_PATTERN_BACKDRAW_8_ 210
#define NPC_PATTERN_IAM_BOSS_28_ 220
#define NPC_PATTERN_TOBOSS_28_ 230
#define NPC_PATTERN_WANDER_28_ 240
#define NPC_PATTERN_MURI_28_ 250
#define NPC_PATTERN_BACKDRAW_PC_28_ 260
#define NPC_PATTERN_ACCESS_PC_38_ 270
#define NPC_PATTERN_ATTACK_PC_38_ 280
#define NPC_PATTERN_WANDER_38_ 290
#define NPC_PATTERN_MURI_38_ 300
#define NPC_PATTERN_BACKDRAW_PC_38_ 310
#define NPC_PATTERN_IAM_BOSS_18_ 320
#define NPC_PATTERN_TOBOSS_18_ 330
#define NPC_PATTERN_WANDER_18_ 340
#define NPC_PATTERN_MURI_18_ 350
#define NPC_PATTERN_ACCESS_PC_18_ 360
#define NPC_PATTERN_ATTACK_PC_18_ 370
#define NPC_PATTERN_BACKDRAW_18_ 380
#define NPC_PATTERN_TAME_ 390
#define NPC_PATTERN_IAM_BOSS_GUARD_ 400
#define NPC_PATTERN_TOBOSS_GUARD_ 410
#define NPC_PATTERN_WANDER_GUARD_ 420
#define NPC_PATTERN_MURI_GUARD_ 430
#define NPC_PATTERN_ACCESS_PC_GUARD_ 440
#define NPC_PATTERN_ATTACK_PC_GUARD_ 450
#define NPC_PATTERN_BACKDRAW_PC_GUARD_ 460
#define NPC_PATTERN_EVENTING_MAUL_ 470
#define NPC_PATTERN_WANDER_MAUL_ 480
#define NPC_PATTERN_ATTACK_MAUL_ 490
#define NPC_PATTERN_BACKDRAW_MAUL_ 500
#define NPC_PATTERN_ACCESS_PC_MAUL_ 510
#define NPC_PATTERN_SEALSTONE_NO_OPERATE_ 520
#define NPC_PATTERN_SEALSTONE_ATTACK_ 530
#define NPC_PATTERN_ACCESS_PC_48_ 540 // LTS AI
#define NPC_PATTERN_ATTACK_PC_48_ 550 // LTS AI
#define NPC_PATTERN_WANDER_48_ 560 // LTS AI
#define NPC_PATTERN_MURI_48_ 570 // LTS AI
#define NPC_PATTERN_BACKDRAW_PC_48_ 580 // LTS AI
#define NPC_PATTERN_WANDER 601
#define NPC_PATTERN_ACCESS 602
#define NPC_PATTERN_ATTACK 603
#define NPC_PATTERN_ATTACKED 604
#define NPC_PATTERN_MOVING 605 // LTS AI2
#define NPC_PATTERN_BOSS_WANDER 606 // LTS NEW AI
#define NPC_PATTERN_BOSS_ACCESS 607 // LTS NEW AI
#define NPC_PATTERN_BOSS_ATTACK 608 // LTS NEW AI
#define NPC_PATTERN_BOSS_ATTACKED 609 // LTS NEW AI
#define NPC_PATTERN_BOSS_MOVING 610 // LTS NEW AI
#define NPC_PATTERN_BOSS_BACKDRAW 611 // LTS NEW AI
#define NPC_PATTERN_BOSS_WAIT 612 // LTS NEW AI
#define NPC_PATTERN_BOSS_AVOID 613 // LTS NEW AI
// Client俊辑 函拳等 NPC 颇扼皋磐甫 Server肺 焊郴霖促.
#define NPC_PARAMETER_TARGETID 0
#define NPC_PARAMETER_TARGETNAME 1
#define NPC_PARAMETER_BOSSID 2
#define NPC_PARAMETER_HOSTID 3
#define NPC_PARAMETER_TAME_CMD 4
#define NPC_PARAMETER_PATTERNTYPE 5
#define NPC_PARAMETER_OLDPATTERNTYPE 6
#define MAX_GENERATE_POSITION_ 1000
// 010129 KHS
#define GT_SKB_FILE 0
#define GT_SCRIPT 1
#define GT_SKILL_SUMMON 2
#define GT_EVENT_MONSTER 4 // LTS AI2
#define GT_SCENARIO_MONSTER 5 // 020701 YGI
#define GT_EVENT_NPC 6 // 扁埃 捞亥飘甫 烹秦 殿厘窍绰 NPC甸 //021030 YGI
#define GT_HUNT_MONSTER 7 // CSD-030408 : hunt monster
#define GT_TREASUER_GUARD 8 // 焊拱 瘤糯捞 // 040105 YGI 焊拱
// 盔玫利牢 加己阑 狼固茄促
#define ELEMENT_FIRE 1
#define ELEMENT_WATER 2
#define ELEMENT_AIR 3
#define ELEMENT_ICE 4
#define ELEMENT_LIGHT 5
#define ELEMENT_EARTH 6
typedef struct tNPCgeneratePosition
{
short int curnpc;
short int npcindex;
short int eventno;
short int x, y;
short int maxno;
}sNPCgeneratePosition;
extern int NpcPatternTable[20];
extern sNPCgeneratePosition NPCgeneratePosition[ MAX_GENERATE_POSITION_];
extern int NPCgeneratePositionMax;
extern bool CharMovingThreadStart0;
extern bool CharMovingThreadStart1;
extern bool CharMovingThreadStart2;
extern void InitMoveDelayTable( void );
extern DWORD Get_MoveDelayTime( CHARLIST *ch );
extern int InDistance( CHARLIST *s, CHARLIST *d, int dis );
extern int NPC_NearCh( CHARLIST *n, CHARLIST *ch, int *x, int *y );
extern int NPC_NearBackCh( CHARLIST *n, CHARLIST *ch, int *x, int *y, int dist );
extern int NPC_GetDir( int sx, int sy, int ex, int ey );
extern int NPC_MakePath( CHARLIST *n, int tx, int ty, int how );
extern int NPC_MakePathBumn( CHARLIST *n, int tx, int ty, int how );
extern int NPC_IsMoving( CHARLIST *n );
extern int NPC_IsWhoNearPC( CHARLIST *npc, int tilerange );
extern CHARLIST* NPC_ReturnCharListPoint( const int id );
extern CHARLIST* ReturnCharListPoint( char *name );
extern void RecvTameCommand( int cn, t_tame_command *p );
extern void SendTameResult( int cn, int result );
extern void SendHostName( int cn, CHARLIST *n );
extern void SendToAllHostName( int cn, CHARLIST *n );
extern void CheckNPCTammingTimeElapsed( CHARLIST *n );
extern DWORD ReturnDestTime( LPCHARLIST ch );
extern void SaveMoveDelayTable( void );
extern void InitMoveDelayTable( void );
extern void NPCAddBasicData( int i, t_server_npc_add *p );
extern void NPCGeneratePosition( int npcindex, int x, int y, int eventno, int maxno );
extern int GetDeleteAbleNPC();//030211 lsw
extern int NPC_Create( int Num, int npcindex, int x, int y, int eventno, int gen_pos, int gen_type = 0,int GroupNo=0,int isBoss=0); // LTS AI2
extern int NPC_AdjustPosition( int sprno, int *x, int *y );
extern void NPC_AutoCreationProc( void );
extern void NPC_AutoCreationProc2( void ); // LTS AI2
extern void NPC_CheckRemove( void );
extern void NPC_AutoCreate(); // LTS AI2
extern void RecvCMD_MODIFY_POSITION( int cn, t_client_modify_position *p );
extern void SendReadyMoveDate( int cn );
extern void RecvSmileFace( int cn, int smileno );
extern void SendNPCControlData( int cn, int npc );
extern int ManageNPC( int );
extern void SendNPC_Parameter( int id, int type, int data );
extern void SendNPC_StringParameter( int id, int type, char *data );
extern void RecvNPC_Parameter( int id, int type, int data );
extern void RecvNPC_StringParameter( int id, int type, char *data );
extern void Recv_JustAni( t_packet *p );
extern int initNPCGenerationTable(void);
extern void MovingCharacter();
extern void MovingNPC();
extern bool SetTileOccupied(short int &iX, short int &iY, const bool bOccupiedState);
extern void RecvCMD_MOVE(const int cn, t_packet *packet);
#endif //AFX_NPC_PATTERN_H__562FB52A_67CE_44B8_82E6_8CCA090DFDA2__INCLUDED_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -