示例#1
0
bool CObjUSER::IsInventoryFull( std::list< tagITEM >& appendItems )
{
	CInventory TempInventory;
	memcpy( &TempInventory, &m_Inventory, sizeof( CInventory ) );

	std::list< tagITEM >::iterator iterAppend;
	short nInvenIndex = 0;
	short nWeight	  = 0;

	for( iterAppend = appendItems.begin(); iterAppend != appendItems.end(); ++iterAppend )
	{
		if( TempInventory.AppendITEM(*iterAppend , nWeight ) == -1 )
			return true;
	}
	return false;
}
示例#2
0
bool CObjUSER::IsInventoryFull( std::list< tagITEM >& appendItems, std::list< pair<int,tagITEM> >& removeItems  )
{
	CInventory TempInventory;
	memcpy( &TempInventory, &m_Inventory, sizeof( CInventory ) );

	std::list< tagITEM >::iterator iterAppend;
	std::list< pair< int, tagITEM> >::iterator iterRemove;
	short nInvenIndex = 0;
	short nWeight	  = 0;

	for( iterRemove = removeItems.begin(); iterRemove != removeItems.end(); ++iterRemove )
		TempInventory.SubtractITEM( iterRemove->first, iterRemove->second, nWeight );

	for( iterAppend = appendItems.begin(); iterAppend != appendItems.end(); ++iterAppend )
	{
		if( TempInventory.AppendITEM(*iterAppend , nWeight ) == -1 )
			return true;
	}
	return false;
}