• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Problem beim Löschen/Abziehen von Items im Invetar

HardSoul

Ehemaliges Teammitglied
Ehem. Teammitglied
Registriert
2 August 2012
Beiträge
759
Diamanten
251
Minecraft
HardS0ul
Hi leute,
ich programmiere schon seit langem an einem großen Plugin, aber jetzt bin ich auf etwas gestoßen, was ich einfach nicht gelöst bekomme...
Das Abziehen der Items, bzw. das Löschen dieser funktioniert nicht.
Ich nutze die neuste Spigot 1.8.3, wo ja schon einiges gefixt wurde.

Hier der Code
Code:
if(e.getPlayer().getInventory().getItemInHand().getAmount() == 1){
                                                                                                                e.getPlayer().getInventory().getItemInHand().setType(Material.AIR);
                                                                                                                e.getPlayer().updateInventory();
                                                                                                            }else{
                                                                                                                int a = e.getPlayer().getInventory().getItemInHand().getAmount();
                                                                                                                int an = a-1;
                                                                                                               
                                                                                                                e.getPlayer().getInventory().getItemInHand().setAmount(an);
                                                                                                                e.getPlayer().updateInventory();
                                                                                                            }


Wo liegt der Fehler? Was mache ich falsch? Ich bedanke mich schonmal im Vorraus für Antworten.
 

HardSoul

Ehemaliges Teammitglied
Ehem. Teammitglied
Registriert
2 August 2012
Beiträge
759
Diamanten
251
Minecraft
HardS0ul
Das löst ja schonmal fast die ersten paar Zeilen. Ich habe es wie folgt gelöst:
Code:
e.getPlayer().getInventory().clear(e.getPlayer().getInventory().getHeldItemSlot());
Sonst löscht es alle Items die genauso sind wie dieses.
Jedoch klappt der 2. Abschnitt noch nicht.

------EDIT-----
Die Antwort von Heldin hat funktioniert. Vielen Dank :D
 

FelixKlauke

Erzengel
Ehem. Teammitglied
Registriert
5 Januar 2014
Beiträge
1.038
Diamanten
299
Minecraft
FelixKlauke
Das löst ja schonmal fast die ersten paar Zeilen. Ich habe es wie folgt gelöst:
Code:
e.getPlayer().getInventory().clear(e.getPlayer().getInventory().getHeldItemSlot());
Sonst löscht es alle Items die genauso sind wie dieses.
Jedoch klappt der 2. Abschnitt noch nicht.

Machs halt mehrere Male mit einer Schleife, oder mach es wie ich es beschrieben habe und entferne nen ItemStack mit der exakten Anzahl.
 
Oben