⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gcstashlist.cpp

📁 dk1游戏的原代码文件,完整.编译系统redhat7.3,mysql 3.23 ,luascript v4.0 support
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		{			msg << "(Item:" << r << ", " << i << ":";			if (m_bExist[r][i])			{				msg << "ObjectID:"     << (int)(m_pItems[r][i].objectID)					<< "ItemClass:"    << (int)(m_pItems[r][i].itemClass) 					<< "ItemType:"     << (int)(m_pItems[r][i].itemType)					<< "OptionTypeSize:"   << (int)(m_pItems[r][i].optionType.size())					<< "Durability:"   << (int)(m_pItems[r][i].durability)					<< "Num:"          << (int)(m_pItems[r][i].num)					<< "Silver:"       << (int)(m_pItems[r][i].silver)					<< "Grade:"       << (int)(m_pItems[r][i].grade)					<< "EnchantLevel:" << (int)(m_pItems[r][i].enchantLevel);			}			msg << ")";		}	}	msg << ")";	return msg.toString();			__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////bool GCStashList::isExist(BYTE rack, BYTE index) const	throw(){	__BEGIN_TRY	Assert(rack < STASH_RACK_MAX && index < STASH_INDEX_MAX);	return m_bExist[rack][index];	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////STASHITEM GCStashList::getStashItem(BYTE rack, BYTE index) const	throw(){	__BEGIN_TRY	Assert(rack < STASH_RACK_MAX && index < STASH_INDEX_MAX);	return m_pItems[rack][index];	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void GCStashList::setStashItem(BYTE rack, BYTE index, Item* pItem) 	throw(){	__BEGIN_TRY#ifdef	__GAME_SERVER__	Assert(rack < STASH_RACK_MAX && index < STASH_INDEX_MAX);	Assert(pItem != NULL);		ItemInfo*  pItemInfo      = NULL;	AR*        pAR            = NULL;	SR*        pSR            = NULL;	SG*        pSG            = NULL;	SMG*       pSMG           = NULL;	Belt*      pBelt          = NULL;	OustersArmsband* pOustersArmsband = NULL;	PetItem*   pPetItem		  = NULL;	BYTE       pocketCount    = 0;	Inventory* pBeltInventory = NULL;	Inventory* pOustersArmsbandInventory = NULL;	BYTE       subItemCount   = 0;	BYTE       i              = 0;	PetInfo*	pPetInfo	  = 0;	switch (pItem->getItemClass())	{		case Item::ITEM_CLASS_AR:			pAR = dynamic_cast<AR*>(pItem);			m_pItems[rack][index].objectID     = pItem->getObjectID();			m_pItems[rack][index].itemClass    = pItem->getItemClass();			m_pItems[rack][index].itemType     = pItem->getItemType();			m_pItems[rack][index].optionType   = pItem->getOptionTypeList();			m_pItems[rack][index].durability   = pItem->getDurability();			m_pItems[rack][index].num          = pAR->getBulletCount();			m_pItems[rack][index].silver       = pItem->getSilver();			m_pItems[rack][index].grade       = pItem->getGrade();			m_pItems[rack][index].enchantLevel = pItem->getEnchantLevel();			break;		case Item::ITEM_CLASS_SR:			pSR = dynamic_cast<SR*>(pItem);			m_pItems[rack][index].objectID     = pItem->getObjectID();			m_pItems[rack][index].itemClass    = pItem->getItemClass();			m_pItems[rack][index].itemType     = pItem->getItemType();			m_pItems[rack][index].optionType   = pItem->getOptionTypeList();			m_pItems[rack][index].durability   = pItem->getDurability();			m_pItems[rack][index].num          = pSR->getBulletCount();			m_pItems[rack][index].silver       = pItem->getSilver();			m_pItems[rack][index].grade       = pItem->getGrade();			m_pItems[rack][index].enchantLevel = pItem->getEnchantLevel();			break;		case Item::ITEM_CLASS_SG:			pSG = dynamic_cast<SG*>(pItem);			m_pItems[rack][index].objectID     = pItem->getObjectID();			m_pItems[rack][index].itemClass    = pItem->getItemClass();			m_pItems[rack][index].itemType     = pItem->getItemType();			m_pItems[rack][index].optionType   = pItem->getOptionTypeList();			m_pItems[rack][index].durability   = pItem->getDurability();			m_pItems[rack][index].num          = pSG->getBulletCount();			m_pItems[rack][index].grade       = pItem->getGrade();			m_pItems[rack][index].enchantLevel = pItem->getEnchantLevel();			break;		case Item::ITEM_CLASS_SMG:			pSMG = dynamic_cast<SMG*>(pItem);			m_pItems[rack][index].objectID     = pItem->getObjectID();			m_pItems[rack][index].itemClass    = pItem->getItemClass();			m_pItems[rack][index].itemType     = pItem->getItemType();			m_pItems[rack][index].optionType   = pItem->getOptionTypeList();			m_pItems[rack][index].durability   = pItem->getDurability();			m_pItems[rack][index].num          = pSMG->getBulletCount();			m_pItems[rack][index].grade       = pItem->getGrade();			m_pItems[rack][index].enchantLevel = pItem->getEnchantLevel();			break;		case Item::ITEM_CLASS_BELT:			m_pItems[rack][index].objectID     = pItem->getObjectID();			m_pItems[rack][index].itemClass    = pItem->getItemClass();			m_pItems[rack][index].itemType     = pItem->getItemType();			m_pItems[rack][index].optionType   = pItem->getOptionTypeList();			m_pItems[rack][index].durability   = pItem->getDurability();			m_pItems[rack][index].num          = pItem->getNum();			m_pItems[rack][index].grade       = pItem->getGrade();			m_pItems[rack][index].enchantLevel = pItem->getEnchantLevel();			// 骇飘老 版快俊绰 救俊 乐绰 酒捞袍鳖瘤 窃膊 技泼秦拎具茄促.			// 酒, 揪官 凉扼 蓖满匙.			pBelt          = dynamic_cast<Belt*>(pItem);			pItemInfo      = g_pItemInfoManager->getItemInfo(pBelt->getItemClass(), pBelt->getItemType());			pocketCount    = dynamic_cast<BeltInfo*>(pItemInfo)->getPocketCount();			pBeltInventory = pBelt->getInventory();			for (i = 0; i<pocketCount; i++)			{				Item* pBeltItem = pBeltInventory->getItem((int)i, 0);				// 浇儿俊 酒捞袍捞 乐促搁...				if (pBeltItem != NULL)				{					SubItemInfo* pSubItemInfo = new SubItemInfo;					Assert(pSubItemInfo != NULL);					pSubItemInfo->setObjectID(pBeltItem->getObjectID());					pSubItemInfo->setItemClass(pBeltItem->getItemClass());					pSubItemInfo->setItemType(pBeltItem->getItemType());					pSubItemInfo->setItemNum(pBeltItem->getNum());					pSubItemInfo->setSlotID(i);					// 父电 沥焊甫 秦寸窍绰 府胶飘俊促啊 歹茄促.					m_pSubItems[rack][index].push_back(pSubItemInfo);					// 墨款飘甫 棵妨林绊					subItemCount++;				}			}			// 府胶飘俊 割俺唱 甸绢乐绰瘤 技泼秦 霖促.			m_SubItemsCount[rack][index] = subItemCount;			break;		case Item::ITEM_CLASS_OUSTERS_ARMSBAND:			m_pItems[rack][index].objectID     = pItem->getObjectID();			m_pItems[rack][index].itemClass    = pItem->getItemClass();			m_pItems[rack][index].itemType     = pItem->getItemType();			m_pItems[rack][index].optionType   = pItem->getOptionTypeList();			m_pItems[rack][index].durability   = pItem->getDurability();			m_pItems[rack][index].num          = pItem->getNum();			m_pItems[rack][index].silver       = pItem->getSilver();			m_pItems[rack][index].grade       = pItem->getGrade();			m_pItems[rack][index].enchantLevel = pItem->getEnchantLevel();			// 骇飘老 版快俊绰 救俊 乐绰 酒捞袍鳖瘤 窃膊 技泼秦拎具茄促.			// 酒, 揪官 凉扼 蓖满匙.			pOustersArmsband = dynamic_cast<OustersArmsband*>(pItem);			pItemInfo        = g_pItemInfoManager->getItemInfo(pOustersArmsband->getItemClass(), pOustersArmsband->getItemType());			pocketCount      = dynamic_cast<OustersArmsbandInfo*>(pItemInfo)->getPocketCount();			pOustersArmsbandInventory = pOustersArmsband->getInventory();			for (i = 0; i<pocketCount; i++)			{				Item* pOustersArmsbandItem = pOustersArmsbandInventory->getItem((int)i, 0);				// 浇儿俊 酒捞袍捞 乐促搁...				if (pOustersArmsbandItem != NULL)				{					SubItemInfo* pSubItemInfo = new SubItemInfo;					Assert(pSubItemInfo != NULL);					pSubItemInfo->setObjectID(pOustersArmsbandItem->getObjectID());					pSubItemInfo->setItemClass(pOustersArmsbandItem->getItemClass());					pSubItemInfo->setItemType(pOustersArmsbandItem->getItemType());					pSubItemInfo->setItemNum(pOustersArmsbandItem->getNum());					pSubItemInfo->setSlotID(i);					// 父电 沥焊甫 秦寸窍绰 府胶飘俊促啊 歹茄促.					m_pSubItems[rack][index].push_back(pSubItemInfo);					// 墨款飘甫 棵妨林绊					subItemCount++;				}			}			// 府胶飘俊 割俺唱 甸绢乐绰瘤 技泼秦 霖促.			m_SubItemsCount[rack][index] = subItemCount;			break;		case Item::ITEM_CLASS_PET_ITEM:			m_pItems[rack][index].objectID     = pItem->getObjectID();			m_pItems[rack][index].itemClass    = pItem->getItemClass();			m_pItems[rack][index].itemType     = pItem->getItemType();			pPetItem = dynamic_cast<PetItem*>(pItem);			pPetInfo = pPetItem->getPetInfo();			if ( pPetInfo != NULL )			{				list<OptionType_t> olist;				if ( pPetInfo->getPetOption() != 0 ) m_pItems[rack][index].optionType.push_back( pPetInfo->getPetOption() );				m_pItems[rack][index].durability     = pPetInfo->getPetHP();				m_pItems[rack][index].enchantLevel = pPetInfo->getPetAttr();				m_pItems[rack][index].silver       = pPetInfo->getPetAttrLevel();				m_pItems[rack][index].grade			= (pPetInfo->getPetHP()==0)?(pPetInfo->getLastFeedTime().daysTo( VSDateTime::currentDateTime() )):(-1);				m_pItems[rack][index].num          = pPetInfo->getPetLevel();			}			break;		default:			m_pItems[rack][index].objectID     = pItem->getObjectID();			m_pItems[rack][index].itemClass    = pItem->getItemClass();			m_pItems[rack][index].itemType     = pItem->getItemType();			m_pItems[rack][index].optionType   = pItem->getOptionTypeList();			m_pItems[rack][index].durability   = pItem->getDurability();			m_pItems[rack][index].num          = pItem->getNum();			m_pItems[rack][index].silver       = pItem->getSilver();			m_pItems[rack][index].grade       = pItem->getGrade();			m_pItems[rack][index].enchantLevel = pItem->getEnchantLevel();			break;	}	m_bExist[rack][index] = true;#endif	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////list<SubItemInfo*>& GCStashList::getSubItems(BYTE rack, BYTE index)	throw(){	__BEGIN_TRY	Assert(rack < STASH_RACK_MAX && index < STASH_INDEX_MAX);	return m_pSubItems[rack][index];	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////BYTE GCStashList::getSubItemCount(BYTE rack, BYTE index)	throw(){	__BEGIN_TRY	Assert(rack < STASH_RACK_MAX && index < STASH_INDEX_MAX);	return m_SubItemsCount[rack][index];	__END_CATCH}

⌨️ 快捷键说明

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