Items Löschen

04/30/2016 21:31 Kiseku#1
Hay,
ka ob ich zu dumm bin oder einfach nur n denk fehler habe.
Ich will ein Item aus dem Inventar Löschen per Befehl hab das so :

Code:
	if ( pUser->m_Inventory.GetAtItemId( II_WEA_SWO_WOODEN ) )
	{
		pUser->RemoveItem( (BYTE)( II_WEA_SWO_WOODEN ), (short)( 1 ) );
	} 
	else{
	pUser->AddText("Dir fehlt ein Woodensword!");
	}
04/30/2016 22:00 ARMEN*#2
Code:
	if ( pUser->m_Inventory.GetAtItemId( II_WEA_SWO_WOODEN ) )
	{
		pUser->RemoveItem( ( II_WEA_SWO_WOODEN ), (short)( 1 ) );
	} 
	else{
	pUser->AddText("Dir fehlt ein Woodensword!");
	}
04/30/2016 22:03 Kiseku#3
Quote:
Originally Posted by ARMEN* View Post
Code:
	if ( pUser->m_Inventory.GetAtItemId( II_WEA_SWO_WOODEN ) )
	{
		pUser->RemoveItem( ( II_WEA_SWO_WOODEN ), (short)( 1 ) );
	} 
	else{
	pUser->AddText("Dir fehlt ein Woodensword!");
	}
bleibt immernoch im Inventar^^ also wird nicht gelöscht ^^
04/30/2016 22:07 ARMEN*#4
Von der Logik her würde ich behaupten das dass heißen soll , wenn ein User Wooden Sword bekommt soll Wooden Sword gelöscht werden aber was wenn Wooden Sword schon vorhanden ist ?

Sry wenn ich falsche liege :)
04/30/2016 22:12 Kiseku#5
die If abfrage kann man ja weglassen ich will einfach nur das das Woodensword einfach gelöscht wird

Habs hinbekommen ^^
05/01/2016 19:56 alfredico#6
Code:
CItemElem* pItem = pUser->m_Inventory.GetAtItemId( II_WEA_SWO_WOODEN );
if ( pItem )
	{
		pUser->RemoveItem( (BYTE)(pItem->m_dwObjId), (short)( 1 ) );
	} 
	else{
	pUser->AddText("Dir fehlt ein Woodensword!");
	}