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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? battlemgr.h

?? DragonRaja Client source version 1.4+ this source allow players join in (Hades Warfield or Monsters
?? H
字號:
// BattleMgr.h: interface for the CBattleMgr class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_BATTLEMGR_H__7914A30B_1960_4D3A_AEED_E33E9F2B4FFE__INCLUDED_)
#define AFX_BATTLEMGR_H__7914A30B_1960_4D3A_AEED_E33E9F2B4FFE__INCLUDED_

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

#pragma pack (push,1)
#include "Network5.h"
#pragma pack (pop, 1)

#define MK_NORMAL      0
#define MK_WARNING     1
#define MK_SHORTAGE    2
#define MK_INFORMATION 3
#define OUTPUT g_mgrBattle.Message
///////////////////////////////////////////////////////////////////////////////
//
struct Delete
{
	template<typename T> void operator()(const T* pT) const
	{
		if (pT != NULL)  
		{
			delete pT;
			pT = NULL;
		}
	}
};
//
///////////////////////////////////////////////////////////////////////////////
const int CELL = 5;

struct USEEFFECTLIST;
struct MAGICLIST;

class CBattle;
class CStrikeSys;
class CMagicSys;
class CCombatSys;
//////////////////////////////////////////////////////////////////////////////
// 傈捧 包訪 努貳膠
class CBattleMgr
{
	typedef vector<CBattle*> VECTOR;
	
	enum 
	{
		ANI_NONE = 0,
		ANI_STROKE = 1,
		ANI_DEATH = 2,
		ANI_STONE = 3,
	};
	
public:
	CBattleMgr();
	virtual ~CBattleMgr();
	
public:
	void Clear();
	void ClearDelay();
	void ClearSwitchDelay();
	
	int Convert(int nKind);
	int Return(int nEffect, LPCHARACTER pCaster);
	int Action(LPCHARACTER pCaster);
	void Display(int nKind);
	void Effect(MAGICLIST* pEffect);
	
	void Message(int nType, const char* pContext, ...);
	void ActAnimation(int nType, CHARACTER* pTarget);
	void ActCasting(int nMagic, CHARACTER* pTarget);
	
	void SendPcAttack(LPCHARACTER pCaster, LPCHARACTER pTarget);
	
	void SendNpcAttack(LPCHARACTER pCaster, LPCHARACTER pTarget);
	void SendNpcThrow(LPCHARACTER pCaster, LPCHARACTER pTarget);
	void SendStrikeAttack(LPCHARACTER pCaster, LPCHARACTER pTarget);
	void SendThrowAttack(LPCHARACTER pCaster, LPCHARACTER pTarget);
	
	void SendNpcMagic(BYTE nMagic, LPCHARACTER pCaster, LPCHARACTER pTarget, int nX, int nY);
	void SendMagicSelect(BYTE nMagic);  // CSD-TW-030606
	void SendMagicCasting(BYTE nMagic); // CSD-TW-030606
	void SendMagicExecute(BYTE nMagic, LPCHARACTER pTarget, int nX, int nY); // CSD-TW-030606
	void SendMagicResult(WORD wdEffect, LPCHARACTER pCaster, WORD idTarget, int nX, int nY); // CSD-031007
	
	void SendCombatClear(); // CSD-021128
	void SendCombatObtain(LPCHARACTER pMaster, BYTE nPara, BYTE nX, BYTE nY, BYTE nPoint);
	void SendCombatRequest(LPCHARACTER pMaster);
	void SendCombatLearn(BYTE nCombat, LPCHARACTER pMaster);
	void SendCombatSelect(BYTE nCombat);
	void SendCombatAttack(BYTE nCombat, LPCHARACTER pTarget, int nX, int nY);
	void SendCombatResult(BYTE nCombat, LPCHARACTER pCaster, LPCHARACTER pTarget, int nX, int nY);
	
	void SendModifyPosition(LPCHARACTER pTarget); // CSD-021107
	void SendTameCommand(LPCHARACTER pTame, LPCHARACTER pTarget);  

	void RecvCharInfoTactic(t_char_info_tactic* pPacket); // CSD-TW-030624
	void RecvBattleMessage(t_battle_message* pPacket);
	void RecvBattleDamage(t_battle_damage* pPacket); // CSD-021019
	
	void RecvAttackResult(WORD idCaster, t_attack_result* pPacket);
	void RecvAttackResult(t_attack_result_d* pPacket);
	
	void RecvThrowAttack(t_server_throw_attack* pPacket);
	void RecvThrowResult(WORD idCaster, t_server_throw_result* pPacket);
	void RecvThrowResult(t_throw_result_d* pPacket);

	void RecvEffectResult(t_server_effect_result* pPacket); // CSD-031007
	
	void RecvNpcMagic(t_server_npc_magic* pPacket);
	void RecvMagicSelect(t_server_magic_select* pPacket); // CSD-TW-030606
	void RecvMagicCasting(t_server_magic_casting* pPacket); // CSD-TW-030606
	void RecvMagicExecute(t_server_magic_execute* pPacket); // CSD-TW-030606
	void RecvMagicResult(t_server_magic_result* pPacket); // CSD-TW-030606
	void RecvMagicResultT(t_server_magic_result_t* pPacket); // CSD-TW-030606
	void RecvMagicResultH(t_server_magic_result_h* pPacket); // CSD-TW-030606
	void RecvMagicResultM(t_server_magic_result_m* pPacket); // CSD-TW-030606
	
	void RecvCombatInit(t_combat_init* pPacket);
	void RecvCombatClear(t_server_combat_clear* pPacket); // CSD-TW-030606
	void RecvCombatObtain(t_server_combat_obtain* pPacket);
	void RecvCombatRequest(t_server_combat_request* pPacket);
	void RecvCombatLearn(t_server_combat_learn* pPacket);
	void RecvCombatSelect(t_server_combat_select* pPacket);
	void RecvCombatAttack(t_server_combat_attack* pPacket); 
	void RecvCombatResult(t_server_combat_result* pPacket); 
	void RecvCombatResultH(t_server_combat_result_h* pPacket); 
	void RecvCombatResultT(t_server_combat_result_t* pPacket); 
	
	bool IsThrow() const;
	bool IsThrow(int nEffect, bool bCast) const;
	bool IsAttack(LPCHARACTER pCaster, LPCHARACTER pTarget, int nMagic) const;
	bool IsSound(LPCHARACTER pCaster) const;
	bool IsDelay(int nOffset) const;
	bool IsLimit(LPCHARACTER pCaster) const;
	bool IsSelect(LPCHARACTER pCaster) const; // CSD-021024
	bool IsPickUp(LPCHARACTER pCaster, LPCHARACTER pTarget) const; // CSD-021128
	bool IsMapAttr(LPCHARACTER pTarget, int nX, int nY) const; // CSD-021128
	bool IsMagic(int nNo) const;
	bool IsCombat(int nNo) const;
	
public:
	CBattle* GetBattle(int nIndex) const
	{
		return m_vtBuffer[nIndex];
	}
	
	void SetDisplay(bool bOn)
	{
		m_bDisplay = bOn;
	}
	
protected:
	int GetIndex(int nBattle) const;
	void SetViewType(LPCHARACTER pTarget);
	void ShowTaticsInfo(int nKind, int nStep, DWORD dwExperience);
	void ShowAnimation(int nType, LPCHARACTER pTarget);
	void ShowNumber(int nLife, LPCHARACTER pTarget);
	void ShowEffectItem(WORD wdEffect, LPCHARACTER pCaster, LPCHARACTER pTarget); // CSD-031001

private:
	bool IsIgnoreBattle() const; // CSD-TW-030618
	bool IsPlaceMagic(BYTE nMagic, int nX, int nY) const; // CSD-040223

protected:
	VECTOR m_vtBuffer;
	
private:
	mutable DWORD m_dwDelay;
	mutable DWORD m_dwSwitchDelay;
	bool          m_bDisplay;
};
//
///////////////////////////////////////////////////////////////////////////////
extern CBattleMgr g_mgrBattle;
extern CStrikeSys* GetStrike();
extern CMagicSys* GetMagic();
extern CCombatSys* GetCombat();
#endif // !defined(AFX_BATTLEMGR_H__7914A30B_1960_4D3A_AEED_E33E9F2B4FFE__INCLUDED_)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人h动漫精品| 亚洲综合免费观看高清完整版 | 久久电影网电视剧免费观看| 国产精品123| 日韩欧美电影一二三| 一区二区三区视频在线看| 懂色一区二区三区免费观看| 555www色欧美视频| 亚洲视频在线一区观看| 国产91丝袜在线观看| 欧美电影免费观看高清完整版在| 亚洲一区二区不卡免费| 色综合视频一区二区三区高清| 久久久久久久久久久久电影 | 成人免费av网站| 精品日韩欧美一区二区| 免费在线看成人av| 欧美精品在线观看一区二区| 亚洲国产日韩精品| 欧洲亚洲国产日韩| 夜夜嗨av一区二区三区| 日本精品一区二区三区四区的功能| 国产精品丝袜在线| 成人精品鲁一区一区二区| 国产亚洲精品7777| 高清在线成人网| 国产拍欧美日韩视频二区| 国产成人一级电影| 国产日产欧美精品一区二区三区| 国产精品一区二区在线播放| 26uuu亚洲综合色欧美| 国产精品一品二品| 久久久久久久性| 成人av午夜电影| 亚洲日本丝袜连裤袜办公室| 一本大道久久a久久精品综合| 亚洲免费在线视频| 欧美三级在线播放| 免费成人你懂的| 国产偷国产偷精品高清尤物| 99视频精品在线| 亚洲免费成人av| 欧美日本一区二区三区| 美国十次综合导航| 亚洲国产精品成人综合色在线婷婷| 成人免费视频播放| 亚洲特黄一级片| 欧美日产国产精品| 激情综合亚洲精品| 国产精品欧美一级免费| 日本久久一区二区三区| 日韩精品电影在线观看| 国产亚洲制服色| 97久久超碰国产精品电影| 亚洲超碰97人人做人人爱| 精品国产乱码久久久久久蜜臀| 国产麻豆午夜三级精品| ●精品国产综合乱码久久久久| 欧洲精品视频在线观看| 国产综合久久久久久久久久久久| 国产日韩欧美a| 欧美日韩激情一区二区| 国产黄色91视频| 婷婷久久综合九色国产成人 | 一级特黄大欧美久久久| 日韩一区二区三区在线| 99久久精品99国产精品| 青青草原综合久久大伊人精品优势| 国产日韩欧美麻豆| 在线成人午夜影院| av电影天堂一区二区在线观看| 日韩黄色小视频| 欧美极品少妇xxxxⅹ高跟鞋| 制服丝袜激情欧洲亚洲| 成人18视频在线播放| 久久精品国产精品亚洲红杏| 亚洲美女区一区| 2021久久国产精品不只是精品| 在线观看视频一区二区欧美日韩| 国产一区二区三区av电影| 亚洲高清免费在线| 亚洲丝袜另类动漫二区| 久久蜜臀精品av| 91精品国产色综合久久ai换脸 | 色久优优欧美色久优优| 国内精品视频666| 天天操天天干天天综合网| 亚洲欧洲另类国产综合| 久久女同互慰一区二区三区| 在线不卡欧美精品一区二区三区| 99久久精品一区| 福利一区二区在线| 国产主播一区二区| 久久99久久99| 六月丁香综合在线视频| 日韩主播视频在线| 亚洲va欧美va人人爽午夜| 一个色综合网站| 亚洲三级免费观看| 国产精品久久二区二区| 国产精品嫩草影院com| 久久九九久久九九| 久久久久久99久久久精品网站| 欧美大黄免费观看| 日韩欧美一二三区| 日韩欧美二区三区| 精品久久久久久久久久久久包黑料| 在线电影院国产精品| 欧美久久高跟鞋激| 欧美一区三区四区| 日韩欧美一二三区| 337p粉嫩大胆色噜噜噜噜亚洲| 精品人伦一区二区色婷婷| 日韩久久精品一区| 久久精品欧美一区二区三区麻豆| 久久久久久久久久美女| 中文字幕+乱码+中文字幕一区| 国产亚洲精品bt天堂精选| 欧美极品aⅴ影院| 亚洲欧洲精品成人久久奇米网| 亚洲欧美日韩国产手机在线| 亚洲综合免费观看高清完整版 | 亚洲一卡二卡三卡四卡| 一区二区三区四区亚洲| 亚洲国产日韩精品| 久久精品72免费观看| 国产精品123区| 色综合久久88色综合天天6| 在线一区二区观看| 91麻豆精品国产91久久久使用方法| 日韩欧美美女一区二区三区| 欧美精品一区视频| 国产精品久久一卡二卡| 亚洲一卡二卡三卡四卡五卡| 日韩av电影天堂| 国产传媒久久文化传媒| 91影院在线观看| 7777精品伊人久久久大香线蕉经典版下载| 欧美成人三级在线| 国产精品久久久久毛片软件| 午夜精品福利视频网站| 国产九九视频一区二区三区| 91色视频在线| 日韩精品中文字幕一区二区三区| 国产精品麻豆欧美日韩ww| 亚洲一区二区三区四区在线免费观看| 麻豆视频观看网址久久| 99这里只有精品| 欧美zozo另类异族| 成人欧美一区二区三区黑人麻豆 | 中文字幕在线不卡视频| 偷拍亚洲欧洲综合| 粉嫩av一区二区三区| 9191国产精品| 中文av一区特黄| 日韩av不卡一区二区| 成人三级在线视频| 日韩久久久久久| 亚洲综合区在线| 成人av网站大全| 日韩视频免费观看高清完整版| 一区在线观看视频| 国模大尺度一区二区三区| 日本乱人伦一区| 国产欧美一区二区三区沐欲| 日韩经典中文字幕一区| 91一区二区三区在线观看| 久久久一区二区三区捆绑**| 天天免费综合色| 色欧美乱欧美15图片| 欧美激情一区二区三区| 日本 国产 欧美色综合| 色老头久久综合| 成人欧美一区二区三区白人 | 国产成人av电影在线| 91久久香蕉国产日韩欧美9色| 久久久久综合网| 琪琪久久久久日韩精品| 欧美日韩综合一区| 亚洲精品国久久99热| 成人在线综合网站| 久久久亚洲高清| 美女视频一区二区| 欧美一区二区三区小说| 亚洲国产综合在线| 欧美视频精品在线| 一区二区高清在线| 欧洲精品在线观看| 亚洲一区二区三区四区在线观看 | 91在线小视频| 欧美国产一区二区| 国产91综合网| 国产午夜精品在线观看| 国产美女视频一区| 久久久久久电影| 成人免费高清视频在线观看| 国产精品乱人伦| 99久久国产综合精品麻豆| 亚洲欧美二区三区| 欧美日韩激情一区二区三区|