亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? npc.h

?? 決戰(zhàn)Server2.0源碼,自己研究研究吧
?? H
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
// Npc.h: interface for the CNpc class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_NPC_H__600048EF_818F_40E9_AC07_0681F5D27D32__INCLUDED_)
#define AFX_NPC_H__600048EF_818F_40E9_AC07_0681F5D27D32__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "COM.h"
#include "Map.h"

#include "Packet.h"
#include "PathFind.h"
#include "Store.h"
#include "GuildFortress.h"
#include "EventItemNew.h"

#define CHANGE_PATH_STEP	2
#define CHANGE_PATH_RANGE	2
#define RANDOM_MOVE_LENGTH	10
#define	NPC_ITEM_BAND		2000

#define NPCTYPE_MONSTER		0
#define NPCTYPE_NPC			1
#define NPCTYPE_DOOR		2
#define NPCTYPE_GUARD		3			// 嘿冠撈屈 版厚捍
#define MPCTYPE_GUARD_MOVE	4			// 倒酒促聰綽 版厚捍
#define NPCTYPE_GUILD_NPC	5			// 老館 鞘靛俊輯 拱扒闌 芭貳竅綽 NPC 
#define NPCTYPE_GUILD_GUARD	6			// 老館 鞘靛俊輯 惑痢林函闌 焊齲竅綽 版厚捍
#define NPCTYPE_GUILD_MARK	7			// 阿 辨靛竅快膠俊 樂綽 辨靛付農(nóng) NPC
#define NPCTYPE_GUILD_DOOR	8			// 傍己傈俊輯 靜撈綽 鞏

#define GUILD_REPAIR_NPC_BAND	20000	// 頰惑登絹 薦府啊 鞘夸茄 NPC
#define GUILD_FORTRESS_NPC_BAND	25000	// 己闌 痢飛竅綽單 鞘夸茄 NPC

#define MAX_MAP_SIZE		10000		//@@@@@@@@@@@@@@@@@@@@@@@@@@@22
#define MAX_PATH_SIZE		100

#define NPC_ITEM_NUM		5

#define NPC_ATTACK_SHOUT	0
#define NPC_SUBTYPE_LONG_MON 1

#define NPC_TRACING_STEP	100

#define NPC_HAVE_USER_LIST	10

#define NPC_QUEST_MOP		 10000		// 涅膠飄儈 各( 1 ~ 10000 )欄肺 葷儈 
#define NPC_EVENT_MOP		 31000		// 撈亥飄 各 鍋齲
#define NPC_EVENT_GREATE_MOP 30000		// 漂 撈亥飄 閣膠磐 鍋齲
#define NPC_MAGIC_ITEM		 1500	// 1~10000鍋闌 扁霖
#define NPC_RARE_ITEM		 1720  //
#define NPC_EVENT_CHANCE	40			// 撈亥飄 各老版快 概流犬伏苞 飯絹 犬伏匡 棵妨霖促. X 40 

/*
#define NPC_EVENT_MOON		620			// 焊撫崔 靛酚犬啦
#define NPC_EVENT_SONGPEON	920			// 價(jià)祈/巋捍 靛肺犬啦
#define NPC_EVENT_BOX		1420		// 急拱惑磊 靛酚犬啦

#define EVENTITEM_SID_MOON			862	// 焊撫崔	Sid
#define EVENTITEM_SID_SONGPEON_01	863	// 價(jià)祈		Sid
#define EVENTITEM_SID_SONGPEON_11	864	//
#define EVENTITEM_SID_SONGPEON_31	865	//
#define EVENTITEM_SID_SONGPEON_51	866	//
#define EVENTITEM_SID_SONGPEON_71	867	//
#define EVENTITEM_SID_BOX			868 // 急拱惑磊 Sid
*/

// 眠籍 撈亥飄甫 農(nóng)府膠付膠 撈亥飄肺 函屈竅咯 柳青竅扁 困秦 犁瀝狼 竊
#define NPC_EVENT_MOON		620			// 魂鷗牢屈靛酚犬啦 5%
#define NPC_EVENT_SONGPEON	1120		// 阜措葷帕 靛肺犬啦 5%
#define NPC_EVENT_BOX		1420		// 農(nóng)府膠付膠 劇富 靛酚犬啦 3%

#define EVENTITEM_SID_MOON			873	// 魂鷗牢屈	Sid
#define EVENTITEM_SID_SONGPEON_01	872	// 阜措葷帕	Sid
#define EVENTITEM_SID_SONGPEON_11	864	//
#define EVENTITEM_SID_SONGPEON_31	865	//
#define EVENTITEM_SID_SONGPEON_51	866	//
#define EVENTITEM_SID_SONGPEON_71	867	//
#define EVENTITEM_SID_BOX			871 // 農(nóng)府膠付膠 劇富 Sid

#define NPC_GUILDHOUSE_BAND	10000		// 辨靛竅快膠俊 包訪等 NPC
//#define NPC_STORE_BAND			
#define FORTRESS_BAND	1000			// 夸貨俊 加竅綽 NPC

#define NPC_EVENT_B_ITEM	57			// 裹儈雀汗力B 撈亥飄甫 困茄 烙矯 瀝狼
#define NPC_EVENT_ITEM		634			// 撈亥飄甫 困茄 烙矯 瀝狼
#define NPC_EVENT_INIT_STAT	756			// 必距 酒撈袍
#define NPC_EVENT_FLOWER	773			// 各撈 凍絹哆府綽 采官備聰 背券鼻
#define NPC_EVENT_LOTTO		796			// 捧膠墨聰 撈亥飄

// 傍己傈俊 靜烙
										// 辨靛傈矯 薦府且 鞘夸己 撈 樂欄擱
#define NPC_NON_REPAIR_STATE	0		// 0 : 彌絆 惑怕		
#define NPC_NEED_REPAIR_STATE	1		// 1 : 頰惑登絹 薦府 且 鞘夸啊 樂綽 惑怕
#define NPC_DEAD_REPAIR_STATE	2		// 2 : 肯傈灑 噶啊柳 惑怕

#define NPC_NCIRCLE_DEF_STATE	1
#define NPC_NCIRCLE_ATT_STATE	2

struct  DynamicMapList
{
	POINT map[NPC_MAP_SIZE];
};

struct  NpcSkillList
{
	short	sSid;
	BYTE	tLevel;
	BYTE	tOnOff;
};

struct	ExpUserList
{
	TCHAR	strUserID[CHAR_NAME_LENGTH + 1];			// 酒撈叼(某腐磐 撈撫)
	int		iUid;		
	int		nDamage;								// 鷗拜摹 欽
	BOOL	bIs;
};

struct	TargetUser
{
	int		iUid;
	int		sHP;
	int		sMaxHP;
};

struct ItemUserRightlist
{
	short uid;
	int nDamage;
};

//typedef CTypedPtrArray <CPtrArray, ExpUserList*>		arUserList;
typedef CArray <CPoint, CPoint> RandMoveArray;		// 8規(guī)氫 RandomMove竅扁 困茄 Array

class CNpc  
{
public:
	CNpc();
	virtual ~CNpc();

	BOOL SetLive(COM* pCom);
	BOOL FindEnemy(COM* pCom);
	BOOL GetTargetPath(COM* pCom);
	BOOL IsCloseTarget(COM* pCom, int nRange = 1);
	BOOL IsCloseTarget(USER *pUser, int nRange = 1);
	BOOL IsMovingEnd();
	BOOL IsChangePath(COM* pCom, int nStep = CHANGE_PATH_STEP);
	USER* GetUser(COM* pCom, int uid);
	BOOL ResetPath(COM* pCom);
	BOOL GetTargetPos(COM* pCom, CPoint& pt);
	BOOL StepMove(COM* pCom, int nStep);
	BOOL GetLastPoint(int sx, int sy, int& ex, int& ey);

protected:
	void ClearPathFindData(void);
	void InitSkill();
	
public:	
	void SendNpcInfoBySummon(COM* pCom);
	BOOL CheckUserForNpc_Live(int x, int y);
	DWORD GetItemThrowTime();
	void UserListSort();
	CPoint FindNearRandomPointForItem(int x, int y);
	BOOL UpdateEventItemNewRemain(CEventItemNew* pEventItem);
	void GiveItemToMap(COM* pCom, ItemList* pItem);
	void GiveEventItemNewToUser(USER* pUser);
	void SetISerialToItem(ItemList *pItem, int iEventItemSid);
	int AreaAttack(COM* pCom);
	void GetWideRangeAttack(COM* pCom, int x, int y, int damage, int except_uid);
	int PsiAttack(COM* pCom);
	void TestCode(COM *pCom, USER *pUser);
	void SendFortressInsight(COM *pCom, TCHAR *pBuf, int nLength);
	void SetMapAfterGuildWar();
	void SetMapTypeBeforeGuildWar(COM *pCom);
	void SendFortressNCircleColor(COM *pCom);
	//void SetDoorDamagedInFortressWar(int nDamage, TCHAR *id, int uuid, COM *pCom);
	void SetDoorDamagedInFortressWar(int nDamage, USER *pUser);
	//void SetDamagedInFortressWar(int nDamage, TCHAR *id, int uuid, COM *pCom);
	void SetDamagedInFortressWar(int nDamage, USER *pUser);
	void SetFortressState();
	BOOL UpdateEventItem(int sid);
	int GetEventItemNum(COM *pCom);
	void GiveEventItemToUser(USER *pUser);
	void Send(USER* pUser, TCHAR* pBuf, int nLength);
	int GetCityNumForVirtualRoom(int zone);
	//void SetDamagedInGuildWar(int nDamage, TCHAR *id, int uuid, COM *pCom);
	void SetDamagedInGuildWar(int nDamage, USER *pUser);
	void SetGuildType(COM *pCom);
	void EventNpcInit(int x, int y);
	int IsMagicItem(COM* pCom, ItemList *pItem, int iTable);
	int IsTransformedItem(int sid);
	void ToTargetMove(COM* pCom, USER* pUser);
	void NpcTrace(TCHAR* pMsg);
	CPoint ConvertToServer(int x, int y);
	void Init();
	BOOL IsStepEnd();
	BOOL PathFind(CPoint start, CPoint end);
	void InitTarget(void);
	void SendToRange(COM* pCom, char* temp_send, int index, int min_x, int min_y, int max_x, int max_y);
	CPoint ConvertToClient(int x, int y);
	void FillNpcInfo(char* temp_send, int& index, BYTE flag);
	void SendUserInfoBySightChange(int dir_x, int dir_y, int prex, int prey, COM* pCom);
	int GetFinalDamage(USER* pUser, int type = 1);
	void DeleteNPC();
	void SetFireDamage();
	BOOL CheckClassItem(int artable, int armagic);
	void ChangeSpeed(COM *pCom, int delayTime);
	CNpc* GetNpc(int nid);
	void InitUserList();
	BOOL GetBackPoint(int &x, int &y);
	void GetBackDirection(int sx, int sy, int ex, int ey);
	void NpcBack(COM *pCom);
	BOOL IsDamagedUserList(USER *pUser);
	void FindFriend();
	void NpcStrategy(BYTE type);
	void NpcTypeParser();
	void NpcFighting(COM *pCom);
	void NpcTracing(COM *pCom);
	void NpcAttacking(COM *pCom);
	void NpcMoving(COM *pCom);
	void NpcStanding(COM *pCom);
	void NpcLive(COM *pCom);
	void ChangeTarget(USER *pUser, COM* pCom);
	BOOL IsSurround(int targetx, int targety);
	BOOL CheckNpcRegenCount();
	void IsUserInSight(COM *pCom);
	void SendExpToUserList(COM *pCom);
	BOOL SetDamage(int nDamage, int uid, COM *pCom);
	void SetColdDamage(void);
	CPoint FindNearRandomPoint(int xpos, int ypos);
	BOOL IsMovable(int x, int y);
	void GiveNpcHaveItem(COM *pCom);
	int GetCriticalInitDamage(BOOL* bSuccessSkill);
	int GetNormalInitDamage();
	void SendAttackMiss(COM* pCom, int tuid);
	void IsSkillSuccess(BOOL *bSuccess);
	BYTE GetWeaponClass();
	//yskang 0.3 void SendAttackSuccess(COM *pCom, int tuid, CByteArray &arAction1, CByteArray &arAction2, short sHP, short sMaxHP);
	void SendAttackSuccess(COM *pCom, int tuid,BOOL bIsCritical, short sHP, short sMaxHP);//yskang 0.3
	void GiveItemToMap(COM *pCom, int iItemNum, BOOL bItem, int iEventNum = 0);
	BOOL GetDistance(int xpos, int ypos, int dist);
	void SendInsight(COM* pCom, TCHAR *pBuf, int nLength);
	void SendExactScreen(COM* pCom, TCHAR* pBuf, int nLength);

	void SightRecalc(COM* pCom);

	BOOL IsInRange();
	BOOL RandomMove(COM* pCom);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99精品视频一区二区三区| 91福利社在线观看| 亚洲视频一区在线| 欧美一卡二卡三卡四卡| 91在线精品秘密一区二区| 久久 天天综合| 亚洲一区二区免费视频| 国产欧美一区二区精品婷婷| 欧美在线免费观看亚洲| 成人免费福利片| 老司机精品视频在线| 亚洲一区二区三区美女| 91精品国产91久久久久久最新毛片| 国产电影精品久久禁18| 午夜激情一区二区| 亚洲欧美日韩国产手机在线| 2020国产精品久久精品美国| 欧美老肥妇做.爰bbww视频| 99久久精品国产一区二区三区 | 欧美在线一区二区三区| 国产九色精品成人porny| 男人的j进女人的j一区| 亚洲国产精品麻豆| 玉米视频成人免费看| 中文字幕一区二区5566日韩| 久久久九九九九| 欧美变态口味重另类| 91精品国产一区二区三区| 欧美少妇bbb| 欧美日韩国产不卡| 欧洲av一区二区嗯嗯嗯啊| 99vv1com这只有精品| www.亚洲免费av| 成人自拍视频在线观看| 国产精品自在在线| 国产精品一区免费视频| 国产一区激情在线| 国产激情一区二区三区四区| 国产乱码一区二区三区| 国产精品69毛片高清亚洲| 国产一区在线观看麻豆| 国产一区中文字幕| 国产精品自拍av| 成人综合婷婷国产精品久久蜜臀| 国产凹凸在线观看一区二区| 国产成人精品亚洲777人妖| 成人午夜视频在线| 风间由美性色一区二区三区| 岛国一区二区在线观看| 91在线精品一区二区| 色成人在线视频| 欧美人牲a欧美精品| 欧美一级淫片007| 久久久久久99精品| 国产精品久久三区| 亚洲精品国产第一综合99久久| 亚洲综合偷拍欧美一区色| 亚洲成人av一区| 蜜臀av一级做a爰片久久| 激情五月激情综合网| 国产精品亚洲综合一区在线观看| 成人黄色软件下载| 欧美午夜寂寞影院| 欧美大白屁股肥臀xxxxxx| 国产日韩欧美高清在线| 亚洲精品一卡二卡| 青青草伊人久久| 成人性生交大片免费看中文网站| 97精品久久久久中文字幕| 欧美日韩三级在线| 一区二区在线免费观看| 奇米在线7777在线精品| 国产98色在线|日韩| 91精彩视频在线观看| 欧美一区二区在线免费播放| 久久精品一区二区三区不卡牛牛| 亚洲欧美影音先锋| 日日摸夜夜添夜夜添精品视频 | 99在线精品观看| 欧美日韩国产美| 国产午夜亚洲精品羞羞网站| 亚洲精品国产高清久久伦理二区| 蜜桃av噜噜一区二区三区小说| 粉嫩av一区二区三区在线播放 | 91.xcao| 久久久久久久久久久久久女国产乱| 亚洲人成在线播放网站岛国| 免费一级欧美片在线观看| 成人黄色在线视频| 91精品国产一区二区三区| 国产精品女同一区二区三区| 天堂久久久久va久久久久| 成人午夜在线免费| 日韩美女在线视频| 亚洲自拍偷拍av| 国产99久久精品| 欧美一区二区三区四区高清| 中文字幕视频一区| 国产一区亚洲一区| 欧美日韩精品欧美日韩精品一| 欧美国产视频在线| 免费在线看一区| 日本道免费精品一区二区三区| 精品电影一区二区三区| 亚洲午夜一区二区| www.成人网.com| 久久久久久久综合狠狠综合| 亚洲国产精品一区二区www在线| 成人晚上爱看视频| 精品国免费一区二区三区| 一区二区成人在线| 99久久久国产精品| 久久精品亚洲一区二区三区浴池| 亚洲一级电影视频| 91丨九色丨蝌蚪富婆spa| 久久久高清一区二区三区| 麻豆成人免费电影| 欧美日韩国产a| 亚洲一区二区不卡免费| 色综合久久久久综合| 国产精品全国免费观看高清| 国产精品一区二区x88av| 欧美日韩国产色站一区二区三区| 亚洲人妖av一区二区| 不卡欧美aaaaa| 国产女同互慰高潮91漫画| 国产精品资源在线| 欧美精品一区男女天堂| 精品午夜久久福利影院| 毛片av一区二区| 1024成人网色www| av中文字幕在线不卡| 中文字幕成人网| 成人高清av在线| 国产精品国产a| 99久久国产免费看| 亚洲欧洲日产国产综合网| 99久久99久久精品免费观看| 中文字幕一区二| 一本久道久久综合中文字幕| 亚洲人成人一区二区在线观看| 91色.com| 亚洲综合久久久| 欧美男男青年gay1069videost| 亚洲h精品动漫在线观看| 欧美日韩国产小视频| 日韩影院免费视频| 日韩欧美一二三四区| 久久狠狠亚洲综合| 久久久久久久久久久黄色| 国产jizzjizz一区二区| 亚洲欧洲无码一区二区三区| 日本道免费精品一区二区三区| 亚洲韩国精品一区| 91精品国产91久久久久久最新毛片| 美女爽到高潮91| 国产三级三级三级精品8ⅰ区| 成人免费高清视频| 一区二区三区免费网站| 欧美乱熟臀69xxxxxx| 久久精品72免费观看| 国产精品久久久久久亚洲毛片| 91福利视频久久久久| 免费不卡在线观看| 国产农村妇女毛片精品久久麻豆| 91免费看`日韩一区二区| 午夜精品影院在线观看| 久久亚洲春色中文字幕久久久| eeuss鲁片一区二区三区 | 欧美高清精品3d| 美女视频黄免费的久久| 日本一区二区高清| 在线观看视频一区二区欧美日韩| 日韩av一区二| 国产精品久久久久久久裸模| 91精彩视频在线| 经典三级一区二区| 亚洲精选一二三| 精品国产露脸精彩对白| 91色porny蝌蚪| 久久超碰97中文字幕| 亚洲日韩欧美一区二区在线| 337p亚洲精品色噜噜| 99久久综合国产精品| 美女视频一区二区三区| 亚洲免费观看高清完整版在线观看| 欧美精品乱码久久久久久| av一区二区久久| 久色婷婷小香蕉久久| 樱桃视频在线观看一区| 久久久噜噜噜久噜久久综合| 欧美午夜电影网| 成人av在线观| 捆绑调教美女网站视频一区| 亚洲精品国产一区二区三区四区在线 | 国产女主播一区| 在线不卡a资源高清| 99久久精品国产毛片| 国产乱码精品一区二区三区忘忧草| 亚洲第一狼人社区|