cgaddgeartomousehandler.cpp

来自「dk1游戏的原代码文件,完整.编译系统redhat7.3,mysql 3.23 」· C++ 代码 · 共 132 行

CPP
132
字号
//////////////////////////////////////////////////////////////////////////////// Filename    : CGAddGearToMouseHandler.cc// Written By  : elca@ewestsoft.com// Description ://////////////////////////////////////////////////////////////////////////////#include "CGAddGearToMouse.h"#ifdef __GAME_SERVER__	#include "GamePlayer.h"	#include "Zone.h"	#include "Slayer.h"	#include "Vampire.h"	#include "Ousters.h"	#include "Inventory.h"	#include "Item.h"	#include "ItemInfo.h"	#include "ItemInfoManager.h"	#include "Gpackets/GCCannotAdd.h"#endif////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void CGAddGearToMouseHandler::execute (CGAddGearToMouse* pPacket , Player* pPlayer)	throw (ProtocolException, Error){	__BEGIN_TRY __BEGIN_DEBUG_EX#ifdef __GAME_SERVER__	Assert(pPacket != NULL);	Assert(pPlayer != NULL);	try 	{		GamePlayer* pGamePlayer = dynamic_cast<GamePlayer*>(pPlayer);		Creature*   pCreature   = pGamePlayer->getCreature();		bool        bSuccess    = false;		SlotID_t    SlotID      = pPacket->getSlotID();		Assert(pCreature != NULL);			if (pCreature->isSlayer()) 		{			Slayer* pSlayer = dynamic_cast<Slayer*>(pCreature);			Assert(pSlayer != NULL);				// 付快胶俊 购啊甫 甸绊 乐绢急 救 登绊,			// 哈栏妨绰 何盒俊 酒捞袍阑 涝绊 乐瘤 臼酒辑档 救 等促.			if (pSlayer->getExtraInventorySlotItem() == NULL &&				pSlayer->isWear((Slayer::WearPart)SlotID)) 			{				// 厘馒窍绊 乐绰 Item阑 罐酒柯促.				Item* pItem = pSlayer->getWearItem((Slayer::WearPart)SlotID);				// 酒捞袍捞 乐绰瘤 弊 酒捞袍狼 ObjectID啊 老摹窍绰瘤 眉农茄促.				if (pItem != NULL && pItem->getObjectID() == pPacket->getObjectID())				{					// 酒捞袍阑 厘馒芒俊辑 瘤快绊 Mouse肺 捞悼矫挪促.					// 渴阑 哈扁搁辑 瓷仿摹甫 促款矫虐绊 哈篮 酒捞袍阑 Mouse肺 捞悼矫挪促.					pSlayer->takeOffItem((Slayer::WearPart)SlotID, true, true);					bSuccess = true;				}			} 		} 		else if (pCreature->isVampire())		{			Vampire* pVampire = dynamic_cast<Vampire*>(pCreature);			Assert(pVampire != NULL);			// 付快胶俊 购啊甫 甸绊 乐绢急 救 登绊,			// 哈栏妨绰 何盒俊 酒捞袍阑 涝绊 乐瘤 臼酒辑档 救 等促.			if (pVampire->getExtraInventorySlotItem() == NULL &&				pVampire->isWear((Vampire::WearPart)SlotID))			{				// 厘馒窍绊 乐绰 Item阑 罐酒柯促.				Item* pItem = pVampire->getWearItem((Vampire::WearPart)SlotID);				// 酒捞袍捞 乐绰瘤 弊 酒捞袍狼 ObjectID啊 老摹窍绰瘤 眉农茄促.				if (pItem != NULL && pItem->getObjectID() == pPacket->getObjectID()) 				{					// 酒捞袍阑 厘馒芒俊辑 瘤快绊 Mouse肺 捞悼矫挪促.					// 渴阑 哈扁搁辑 瓷仿摹甫 促款矫虐绊 哈篮 酒捞袍阑 Mouse肺 捞悼矫挪促.					pVampire->takeOffItem((Vampire::WearPart)SlotID, true, true);					bSuccess = true;				}			} 		}		else if (pCreature->isOusters())		{			Ousters* pOusters = dynamic_cast<Ousters*>(pCreature);			Assert(pOusters != NULL);			// 付快胶俊 购啊甫 甸绊 乐绢急 救 登绊,			// 哈栏妨绰 何盒俊 酒捞袍阑 涝绊 乐瘤 臼酒辑档 救 等促.			if (pOusters->getExtraInventorySlotItem() == NULL &&				pOusters->isWear((Ousters::WearPart)SlotID))			{				// 厘馒窍绊 乐绰 Item阑 罐酒柯促.				Item* pItem = pOusters->getWearItem((Ousters::WearPart)SlotID);				// 酒捞袍捞 乐绰瘤 弊 酒捞袍狼 ObjectID啊 老摹窍绰瘤 眉农茄促.				if (pItem != NULL && pItem->getObjectID() == pPacket->getObjectID()) 				{					// 酒捞袍阑 厘馒芒俊辑 瘤快绊 Mouse肺 捞悼矫挪促.					// 渴阑 哈扁搁辑 瓷仿摹甫 促款矫虐绊 哈篮 酒捞袍阑 Mouse肺 捞悼矫挪促.					pOusters->takeOffItem((Ousters::WearPart)SlotID, true, true);					bSuccess = true;				}			} 		}		if (!bSuccess) 		{			GCCannotAdd _GCCannotAdd;			_GCCannotAdd.setObjectID(pPacket->getObjectID());			pPlayer->sendPacket(&_GCCannotAdd);		}	} 	catch (Throwable & t) 	{		//cerr << t.toString();	}#endif	// __GAME_SERVER__    __END_DEBUG_EX __END_CATCH}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?