当前位置: 首页>>代码示例>>C++>>正文


C++ CInventory::GetEmptyInvenSlotCount方法代码示例

本文整理汇总了C++中CInventory::GetEmptyInvenSlotCount方法的典型用法代码示例。如果您正苦于以下问题:C++ CInventory::GetEmptyInvenSlotCount方法的具体用法?C++ CInventory::GetEmptyInvenSlotCount怎么用?C++ CInventory::GetEmptyInvenSlotCount使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CInventory的用法示例。


在下文中一共展示了CInventory::GetEmptyInvenSlotCount方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: HasEnoughInventoryEmptySlot

//*-------------------------------------------------------------------/
/// 분리/분해후 아이템이 들어갈 자리가 충분히 있는가?
//*-------------------------------------------------------------------/
bool CSeparateDlg::HasEnoughInventoryEmptySlot( CIconItem* pItemIcon, std::vector<CSlot>& OutputItems )
{
#ifdef _NEWBREAK
	//06. 08. 24 - 김주현 : 지금 분해는 재료만 나오게 되어있다. 재료탭만 체크한다.
	short nEmptySlotCount[ MAX_INV_TYPE ];

	CInventory* pInven = g_pAVATAR->GetInventory();
	assert( pInven );

	nEmptySlotCount[INV_ETC] = pInven->GetEmptyInvenSlotCount( (t_InvTYPE)INV_ETC );

	if(nEmptySlotCount[INV_ETC] < 4)
		return false;

	return true;
#else
	assert( pItemIcon );
	if( pItemIcon == NULL ) return false;

	///일단 모든 타입의 빈 슬롯을 구한다.
	short nEmptySlotCount[ MAX_INV_TYPE ];

	CInventory* pInven = g_pAVATAR->GetInventory();
	assert( pInven );

	for( int i = INV_WEAPON; i < MAX_INV_TYPE; ++i )
		nEmptySlotCount[i] = pInven->GetEmptyInvenSlotCount( (t_InvTYPE)i );

	/// 분리/분해할 아이템의 자리를 빈슬롯으로 계산한다( 개수가 없거나 개수가 있지만 1개일경우)
	tagITEM& Item = pItemIcon->GetItem();
	if( (Item.IsEnableDupCNT() && Item.GetQuantity() == 1 ) || !Item.IsEnableDupCNT() )
		nEmptySlotCount[ CInventory::GetInvPageTYPE( Item ) ]++;


	CIcon*		pIcon = NULL;
	CIconItem*	pOutputItemIcon = NULL;
	std::vector<CSlot>::iterator iter;

	for( iter = OutputItems.begin(); iter != OutputItems.end(); ++iter )
	{
		if( pIcon = iter->GetIcon() )
		{
			pOutputItemIcon = ( CIconItem* )pIcon;
			nEmptySlotCount[ CInventory::GetInvPageTYPE( pOutputItemIcon->GetItem() ) ]--;
			if( nEmptySlotCount[ CInventory::GetInvPageTYPE( pOutputItemIcon->GetItem() ) ] < 0 )
				return false;
		}
	}
	return true;
#endif

}
开发者ID:PurpleYouko,项目名称:Wibble_Wibble,代码行数:55,代码来源:CSeparateDlg.cpp


注:本文中的CInventory::GetEmptyInvenSlotCount方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。