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

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

?? zone.cpp

?? 天之煉獄1服務器端源文件游戲服務端不完整
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
//////////////////////////////////////////////////////////////////////////////// FileName 	: Zone.cpp// WrittenBy	:// Description	://////////////////////////////////////////////////////////////////////////////#include "Zone.h"#include <stdio.h>#include <string.h>#include "Assert.h"#include "LogClient.h"#include "ZoneGroup.h"#include "ZoneInfo.h"#include "ZoneInfoManager.h"#include "PCManager.h"#include "NPCManager.h"#include "MonsterManager.h"#include "MasterLairInfoManager.h"#include "MasterLairManager.h"#include "WarScheduler.h"#include "WarSystem.h"#include "War.h"#include "QuestManager.h"#include "VisionInfo.h"//#include "EventMonsterManager.h"#include "EffectManager.h"#include "EffectSchedule.h"#include "NPCInfo.h"#include "WeatherManager.h"#include "Creature.h"#include "Item.h"#include "ItemInfo.h"#include "DarkLightInfo.h"#include "DB.h"#include "Slayer.h"#include "Vampire.h"#include "Ousters.h"#include "Monster.h"#include "NPC.h"#include "Player.h"#include "Properties.h"#include "ZoneUtil.h"#include "PacketUtil.h"#include "Party.h"#include "TradeManager.h"#include "ParkingCenter.h"#include "Relic.h"#include "ItemFactoryManager.h"#include "CombatInfoManager.h"#include "PaySystem.h"#include "GamePlayer.h"#include "VariableManager.h"#include "CastleInfoManager.h"#include "RelicUtil.h"#include "HolyLandManager.h"#include "BloodBibleBonusManager.h"#include "ShrineInfoManager.h"#include "TimeManager.h"#include "PKZoneInfoManager.h"#include "StringPool.h"#include "FlagSet.h"#include "PCFinder.h"#include "DefaultOptionSetInfo.h"#include "LevelWarZoneInfoManager.h"#include "SweeperBonusManager.h"#include "ctf/FlagManager.h"#include "RegenZoneManager.h"#include <fstream>#include <math.h>#include "EffectDarkness.h"#include "EffectVampirePortal.h"#include "SlayerCorpse.h"#include "VampireCorpse.h"#include "OustersCorpse.h"#include "MonsterCorpse.h"#include "EffectLoaderManager.h"#include "EffectDecayCorpse.h"#include "EffectDecayItem.h"//#include "EffectRevealer.h"#include "EffectObservingEye.h"#include "EffectGnomesWhisper.h"#include "EffectDecayMotorcycle.h"#include "EffectCallMotorcycle.h"#include "EffectAddItem.h"#include "EffectDeleteItem.h"#include "EffectTransportItem.h"#include "EffectSanctuary.h"#include "EffectRelicTable.h"#include "EffectHasSlayerRelic.h"#include "EffectHasVampireRelic.h"#include "EffectVampireRelic.h"#include "EffectSlayerRelic.h"#include "EffectHasBloodBible.h"#include "EffectShrineGuard.h"#include "EffectShrineHoly.h"#include "EffectShrineShield.h"#include "EffectAddItemToCorpse.h"#include "EffectTransportItemToCorpse.h"//#include "EffectDropBloodBible.h"#include "EffectHasCastleSymbol.h"#include "EffectPKZoneRegen.h"#include "EffectContinualGroundAttack.h"#include "EventTransport.h"#include "Gpackets/GCAddBurrowingCreature.h"#include "Gpackets/GCAddVampireFromTransformation.h"#include "Gpackets/GCAddMonsterFromTransformation.h"#include "Gpackets/GCUntransformOK.h"#include "Gpackets/GCUntransformFail.h"#include "Gpackets/GCAddVampireFromBurrowing.h"#include "Gpackets/GCAddMonsterFromBurrowing.h"#include "Gpackets/GCAddWolf.h"#include "Gpackets/GCAddBat.h"#include "Gpackets/GCAddSlayerCorpse.h"#include "Gpackets/GCAddVampireCorpse.h"#include "Gpackets/GCAddOustersCorpse.h"#include "Gpackets/GCAddMonsterCorpse.h"#include "Gpackets/GCAddEffectToTile.h"#include "Gpackets/GCAddVampirePortal.h"#include "Gpackets/GCDeleteEffectFromTile.h"#include "Gpackets/GCMineExplosionOK1.h"#include "Gpackets/GCMineExplosionOK2.h"#include "Gpackets/GCAddInstalledMineToZone.h"#include "Gpackets/GCModifyInformation.h"#include "Gpackets/GCSystemMessage.h"#include "Gpackets/GCFastMove.h"#include "Gpackets/GCMove.h"#include "Gpackets/GCMoveOK.h"#include "Gpackets/GCMoveError.h"#include "Gpackets/GCAddMonster.h"#include "Gpackets/GCAddNewItemToZone.h"#include "Gpackets/GCDropItemToZone.h"#include "Gpackets/GCAddNPC.h"#include "Gpackets/GCAddSlayer.h"#include "Gpackets/GCAddVampire.h"#include "Gpackets/GCAddOusters.h"#include "Gpackets/GCDeleteObject.h"#include "Gpackets/GCSetPosition.h"#include "Gpackets/GCUnburrowOK.h"#include "Gpackets/GCUnburrowFail.h"#include "Gpackets/GCRemoveEffect.h"#include "Gpackets/GCAddEffect.h"#include "Gpackets/GCKnockBack.h"#include "Gpackets/GCNoticeEvent.h"#include "Gpackets/GCNPCInfo.h"#include "Gpackets/GCHolyLandBonusInfo.h"#include "Gpackets/GCSweeperBonusInfo.h"#include "Gpackets/GCRegenZoneStatus.h"//#include "Gpackets/CGItemNameInfoList.h"#include "item/VampirePortalItem.h"#include "item/Motorcycle.h"#include "Profile.h"#include "ResurrectLocationManager.h"#include "LevelWarManager.h"// by sigi.  2002.12.30//#define __PROFILE_BROADCAST__#ifdef __PROFILE_BROADCAST__	#define __BEGIN_PROFILE_ZONE(name)	beginProfileEx(name);	#define __END_PROFILE_ZONE(name)	endProfileEx(name);#else	#define __BEGIN_PROFILE_ZONE(name)	((void)0);	#define __END_PROFILE_ZONE(name)	((void)0);#endif// 付膠磐 飯絹俊輯 矯眉/酒撈袍撈 官躥俊輯 葷扼瘤綽 矯埃const Turn_t DELAY_MASTER_LAIR_DECAY_CORPSE 		= 200;	// 20檬const Turn_t DELAY_MASTER_LAIR_DECAY_ITEM   		= 400;	// 40檬const Turn_t DELAY_MASTER_LAIR_DECAY_MASTER_CORPSE 	= 50;	// 5檬int g_FastMoveSearchX[8][4] ={	{ 0, 1, 1, 1 },     // LEFT	{ 0, 1, 0, 1 },   // LEFTDOWN	{ 0, 0, -1, 1 },    // DOWN	{ 0, -1, 0, -1 },   // RIGHTDOWN	{ 0, -1, -1, -1 },  // RIGHT	{ 0, -1, 0, -1 },   // RIGHTUP	{ 0, 0, -1, 1 },    // UP	{ 0, 1, 0, 1 },     // LEFTUP};int g_FastMoveSearchY[8][4] ={	{ 0, 0, -1, 1 },    // LEFT	{ 0, -1, -1, 0 },   // LEFTDOWN	{ 0, -1, -1, -1 },  // DOWN	{ 0, -1, -1, 0 },   // RIGHTDOWN	{ 0, 0, -1, 1 },    // RIGHT	{ 0, 1, 1, 0 },     // RIGHTUP	{ 0, 1, 1, 1 },     // UP	{ 0, 1, 1, 0 },     // LEFTUP};voidstrlwr(char* str){	while (*str!='\0')	{		*str = tolower( *str );		str ++;	}}//////////////////////////////////////////////////////////////////////////////// 老館利牢 閣膠磐甸撈 利欄肺 牢僥竅蠢襯 付蠢襯 竅綽 竊薦//////////////////////////////////////////////////////////////////////////////bool isPotentialEnemy(Monster* pMonster, Creature* pCreature){	Assert(pCreature != NULL);	// 泅犁肺輯綽 澆飯撈絹唱 酒快膠磐膠綽 公煉扒 利撈促. 	if (pCreature->isSlayer()) return true;	if (pCreature->isOusters())	{		Ousters* pOusters = dynamic_cast<Ousters*>(pCreature);		if ( (pOusters->getLevel() + 10) <= pMonster->getLevel() ) return true;		if ( pOusters->getLevel() > 10 ) return true;	}	else if (pCreature->isVampire())	{		Vampire* pVampire = dynamic_cast<Vampire*>(pCreature);		// 閣膠磐狼 飯駭撈 軌頗撈絹狼 飯駭焊促 10飯駭 撈惑 臭闌 版快,		// 利欄肺 牢僥茄促.		if ((pVampire->getLevel() + 10) <= pMonster->getLevel())		{			return true;		}		// 10飯駭 撈惑牢 軌頗撈絹綽 利撈促.		if (pVampire->getLevel() > 10)		{			return true;		}	}	else if (pCreature->isMonster())	{		Monster* pOtherMonster = dynamic_cast<Monster*>(pCreature);		return pMonster->isFlag(Effect::EFFECT_CLASS_HALLUCINATION) || pMonster->getClanType()!=pOtherMonster->getClanType();	}	return false;}//////////////////////////////////////////////////////////////////////////////// STL find_if 舅絆府硫闌 撈儈竅扁 困茄 厚背 努貳膠//////////////////////////////////////////////////////////////////////////////class isSameCreature {public:	isSameCreature(Creature* pCreature) : m_Creature(pCreature) {}	bool operator () (Creature* pCreature) throw ()	{		return pCreature->getName() == m_Creature->getName();	}	private :	Creature* m_Creature;};list<Packet*> * getRelicEffectPacket( MonsterCorpse* pMonsterCorpse, Effect::EffectClass EClass, list<Packet*> * pPackets ){	if (pMonsterCorpse->isFlag(EClass))	{		Effect* pEffect = pMonsterCorpse->getEffectManager().findEffect( EClass );		if ( pEffect == NULL ) cout << (int)EClass << endl;		Assert(pEffect!=NULL);		GCAddEffect* pPacket = new GCAddEffect;		pPacket->setObjectID( pMonsterCorpse->getObjectID() );		pPacket->setEffectID( pEffect->getSendEffectClass() );		pPacket->setDuration( pEffect->getRemainDuration() );		if (pPackets==NULL) pPackets = new list<Packet*>;		pPackets->push_back( pPacket );	}	return pPackets;}//////////////////////////////////////////////////////////////////////////////// sendRelicEffect( MonsterCorpse* )//////////////////////////////////////////////////////////////////////////////// pMonsterCorpse俊 嘿籃 Effect甫 pPlayer俊霸 焊辰促.//////////////////////////////////////////////////////////////////////////////list<Packet*> *createRelicEffect( MonsterCorpse* pMonsterCorpse ){	list<Packet*>* pPackets = NULL;	if (pMonsterCorpse->isFlag(Effect::EFFECT_CLASS_SLAYER_RELIC))	{		GCAddEffect* pPacket = new GCAddEffect;		pPacket->setObjectID( pMonsterCorpse->getObjectID() );		pPacket->setEffectID(Effect::EFFECT_CLASS_SLAYER_RELIC);		pPacket->setDuration(65000);		if (pPackets==NULL) pPackets = new list<Packet*>;		pPackets->push_back( pPacket );	}	if (pMonsterCorpse->isFlag(Effect::EFFECT_CLASS_VAMPIRE_RELIC))	{		GCAddEffect* pPacket = new GCAddEffect;		pPacket->setObjectID( pMonsterCorpse->getObjectID() );		pPacket->setEffectID(Effect::EFFECT_CLASS_VAMPIRE_RELIC);		pPacket->setDuration(65000);		if (pPackets==NULL) pPackets = new list<Packet*>;		pPackets->push_back( pPacket );	}	Effect::EffectClass EClass = Effect::EFFECT_CLASS_SHRINE_GUARD;	if (pMonsterCorpse->isFlag(EClass))	{		Effect* pEffect = pMonsterCorpse->getEffectManager().findEffect( EClass );		Assert(pEffect!=NULL);		EffectShrineGuard* pEffectShrineGuard = dynamic_cast<EffectShrineGuard*>(pEffect);		Assert(pEffectShrineGuard!=NULL);		GCAddEffect* pPacket = new GCAddEffect;		pPacket->setObjectID( pMonsterCorpse->getObjectID() );		pPacket->setEffectID(EClass + pEffectShrineGuard->getShrineID());		pPacket->setDuration(65000);		if (pPackets==NULL) pPackets = new list<Packet*>;		pPackets->push_back( pPacket );	}	EClass = Effect::EFFECT_CLASS_SHRINE_HOLY;	if (pMonsterCorpse->isFlag(EClass))	{		Effect* pEffect = pMonsterCorpse->getEffectManager().findEffect( EClass );		Assert(pEffect!=NULL);		EffectShrineHoly* pEffectShrineHoly = dynamic_cast<EffectShrineHoly*>(pEffect);		Assert(pEffectShrineHoly!=NULL);		GCAddEffect* pPacket = new GCAddEffect;		pPacket->setObjectID( pMonsterCorpse->getObjectID() );		pPacket->setEffectID(EClass + pEffectShrineHoly->getShrineID());		pPacket->setDuration(65000);		if (pPackets==NULL) pPackets = new list<Packet*>;		pPackets->push_back( pPacket );	}	EClass = Effect::EFFECT_CLASS_SHRINE_SHIELD;	if (pMonsterCorpse->isFlag(EClass))	{		Effect* pEffect = pMonsterCorpse->getEffectManager().findEffect( EClass );		Assert(pEffect!=NULL);		EffectShrineShield* pEffectShrineShield = dynamic_cast<EffectShrineShield*>(pEffect);		Assert(pEffectShrineShield!=NULL);		GCAddEffect* pPacket = new GCAddEffect;		pPacket->setObjectID( pMonsterCorpse->getObjectID() );		pPacket->setEffectID(EClass);		pPacket->setDuration(65000);		if (pPackets==NULL) pPackets = new list<Packet*>;		pPackets->push_back( pPacket );	}	EClass = Effect::EFFECT_CLASS_HAS_BLOOD_BIBLE;	if (pMonsterCorpse->isFlag(EClass))	{		Effect* pEffect = pMonsterCorpse->getEffectManager().findEffect( EClass );		Assert(pEffect!=NULL);		EffectHasBloodBible* pEffectHasBloodBible = dynamic_cast<EffectHasBloodBible*>(pEffect);		Assert(pEffectHasBloodBible!=NULL);		GCAddEffect* pPacket = new GCAddEffect;		pPacket->setObjectID( pMonsterCorpse->getObjectID() );		pPacket->setEffectID( pEffectHasBloodBible->getSendEffectClass() );		pPacket->setDuration(65000);		if (pPackets==NULL) pPackets = new list<Packet*>;		pPackets->push_back( pPacket );	}	EClass = Effect::EFFECT_CLASS_HAS_CASTLE_SYMBOL;	if (pMonsterCorpse->isFlag(EClass))	{		Effect* pEffect = pMonsterCorpse->getEffectManager().findEffect( EClass );		Assert(pEffect!=NULL);		EffectHasCastleSymbol* pEffectHasCastleSymbol = dynamic_cast<EffectHasCastleSymbol*>(pEffect);		Assert(pEffectHasCastleSymbol!=NULL);		GCAddEffect* pPacket = new GCAddEffect;		pPacket->setObjectID( pMonsterCorpse->getObjectID() );		pPacket->setEffectID( pEffectHasCastleSymbol->getSendEffectClass() );		pPacket->setDuration(65000);		if (pPackets==NULL) pPackets = new list<Packet*>;		pPackets->push_back( pPacket );	}	EClass = Effect::EFFECT_CLASS_FLAG_INSERT;	if (pMonsterCorpse->isFlag(EClass))	{		Effect* pEffect = pMonsterCorpse->getEffectManager().findEffect( EClass );		Assert(pEffect!=NULL);		GCAddEffect* pPacket = new GCAddEffect;		pPacket->setObjectID( pMonsterCorpse->getObjectID() );		pPacket->setEffectID( pEffect->getSendEffectClass() );		pPacket->setDuration(65000);		if (pPackets==NULL) pPackets = new list<Packet*>;		pPackets->push_back( pPacket );	}	EClass = Effect::EFFECT_CLASS_KEEP_SWEEPER;	if (pMonsterCorpse->isFlag(EClass))	{		Effect* pEffect = pMonsterCorpse->getEffectManager().findEffect( EClass );		Assert(pEffect!=NULL);		GCAddEffect* pPacket = new GCAddEffect;		pPacket->setObjectID( pMonsterCorpse->getObjectID() );

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
三级欧美在线一区| 色综合天天狠狠| 亚洲国产高清在线观看视频| 成人黄色在线网站| 日韩精品三区四区| 中文字幕在线观看不卡| 欧美老肥妇做.爰bbww视频| 国产大片一区二区| 日韩激情视频网站| 国产精品三级视频| 精品国产自在久精品国产| 欧美影视一区二区三区| 丁香啪啪综合成人亚洲小说 | 全国精品久久少妇| 欧美肥大bbwbbw高潮| 久久不见久久见免费视频1| 一区二区三区精品| 中文字幕一区视频| 久久看人人爽人人| 日韩欧美成人激情| 欧美日韩高清一区二区三区| 高清久久久久久| 国产在线不卡一卡二卡三卡四卡| 亚洲香蕉伊在人在线观| 亚洲人精品一区| 中文字幕制服丝袜一区二区三区| wwwwxxxxx欧美| 夜夜嗨av一区二区三区中文字幕| 国产精品久久免费看| 精品久久国产字幕高潮| 在线91免费看| 7878成人国产在线观看| 欧美日韩电影在线播放| 在线精品视频小说1| 日本高清不卡在线观看| 精品中文字幕一区二区| 日韩午夜激情av| 成人免费视频一区| 成人综合在线观看| 国产福利一区二区| 成人涩涩免费视频| 粉嫩嫩av羞羞动漫久久久| 国产精品1区2区| 国产成人精品影视| 大胆亚洲人体视频| 成人精品国产免费网站| 成人av动漫在线| 97久久人人超碰| www.亚洲精品| 色天使色偷偷av一区二区| 99亚偷拍自图区亚洲| 色一情一伦一子一伦一区| 99久久精品国产观看| 91免费看视频| 欧美亚洲一区二区在线| 久久国产三级精品| 精品国产伦一区二区三区观看方式| 欧美精品少妇一区二区三区 | 一区在线中文字幕| 精品视频全国免费看| 欧美色涩在线第一页| 欧美日韩中字一区| 欧美一区二区在线免费观看| 欧美成人r级一区二区三区| 久久久久国产成人精品亚洲午夜| 国产精品久久久久影院色老大| 亚洲色图在线播放| 亚洲大型综合色站| 老司机精品视频一区二区三区| 国产伦精一区二区三区| 91色九色蝌蚪| 欧美一级午夜免费电影| 久久一二三国产| 最近日韩中文字幕| 亚洲777理论| 精品一区二区三区在线观看| 成人av先锋影音| 欧美日韩专区在线| 久久久久国产精品麻豆 | 日本不卡中文字幕| 国产馆精品极品| 在线观看视频欧美| 欧美精品一区二区三区久久久| 国产成人在线电影| 日本韩国欧美一区| 日韩欧美中文字幕公布| 综合久久久久久久| 麻豆久久一区二区| 91丝袜美腿高跟国产极品老师| 91精品国产欧美日韩| 国产精品三级视频| 久久精品国产精品亚洲综合| 99re免费视频精品全部| 日韩女优电影在线观看| 亚洲欧美日韩一区二区三区在线观看| 人人狠狠综合久久亚洲| aaa亚洲精品| 精品国产一区二区三区四区四 | 91精品国产综合久久香蕉麻豆| 国产亚洲一本大道中文在线| 手机精品视频在线观看| 成人黄色网址在线观看| 欧美日本在线看| 亚洲丝袜精品丝袜在线| 国产精品一区二区三区99| 7777精品久久久大香线蕉| 中文字幕视频一区| 国产精品一二三在| 欧美一区二区三区免费大片| 亚洲免费av高清| 成人激情动漫在线观看| 精品福利在线导航| 日日骚欧美日韩| 色88888久久久久久影院按摩 | 色激情天天射综合网| 久久久91精品国产一区二区三区| 视频一区在线播放| 91高清视频在线| 亚洲色图一区二区三区| 成人午夜大片免费观看| 欧美精品一区二区三区一线天视频 | 在线看国产一区二区| 日本一区二区三区在线不卡| 狠狠色伊人亚洲综合成人| 欧美福利视频一区| 亚洲高清免费一级二级三级| 91黄色激情网站| 亚洲综合色自拍一区| 在线日韩一区二区| 国产精品久久毛片a| 成人午夜大片免费观看| 日本一区二区成人在线| 日韩精品福利网| 在线亚洲人成电影网站色www| 亚洲色欲色欲www| 亚洲成人免费看| 色婷婷综合久久久久中文| 国产精品久久久久aaaa樱花| 成人免费看片app下载| 日韩成人免费在线| 欧美一区二区三区性视频| 日韩精品一二三四| 欧美一区二区三区视频在线| 日本伊人色综合网| 日韩一区二区三区电影| 韩国一区二区三区| 久久久影视传媒| 国产精品一区二区在线观看不卡 | 欧美日本国产视频| 日一区二区三区| 日韩精品一区二区三区四区| 久久av资源站| 久久久久99精品国产片| 成人美女视频在线看| 亚洲欧美日韩系列| 欧美日韩精品免费| 久久精品国产精品亚洲综合| 久久精品免费在线观看| 成人午夜激情视频| 亚洲尤物视频在线| 7878成人国产在线观看| 激情六月婷婷综合| 国产精品久久久久久久久图文区| 色综合久久综合网| 视频在线观看一区二区三区| 欧美精品一区二区久久久| 成人午夜免费视频| 亚洲一区二区影院| 欧美v日韩v国产v| av中文字幕不卡| 婷婷综合在线观看| 久久九九久精品国产免费直播| 91在线丨porny丨国产| 午夜成人免费电影| 久久久91精品国产一区二区精品| 91理论电影在线观看| 日韩精品一级二级| 国产精品久久久久久久久图文区| 欧美日韩亚州综合| 国产乱码精品一品二品| 亚洲日本成人在线观看| 在线免费观看视频一区| 日韩精品一区二| 国产日韩欧美综合一区| 亚洲日本在线a| 狠狠狠色丁香婷婷综合激情| 色噜噜狠狠色综合欧洲selulu| 日韩av一区二区三区四区| 久久久久久久性| 日本道色综合久久| 精品综合免费视频观看| 亚洲欧美日韩久久| www精品美女久久久tv| 91行情网站电视在线观看高清版| 国产在线视频精品一区| 亚洲精品高清在线| 久久久99久久| 日韩一本二本av| 国产亚洲欧美中文| 欧美理论电影在线|