Bukkit Programmieren,führt Befehl doppelt aus?

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Du musst wohl überprüfen, mit welcher Hand geklickt wurde:

if (event.getHand().equals(EquipmentSlot.HAND)) { // Haupthand
    // ...
}
KartoffelYT 
Fragesteller
 27.05.2018, 08:45

Werd ich mir gleich mal angucken,danke

0
KartoffelYT 
Fragesteller
 27.05.2018, 09:03

Danke ich hab jetzt

if(e.getHand().equals(EquipmentSlot.HAND) && e.getAction().equals(Action.RIGHT_CLICK_AIR)) {

    p.sendMessage(" lo");

Und es klappt.

0

Zuerst einmal würde ich doch davon ausgehen, dass das Event RIGHT_CLICK_AIR zweimal ausgelöst wird.

KartoffelYT 
Fragesteller
 27.05.2018, 02:18

wenn ich aber mit einem anderen Material rechts klick mache kommt nur 1mal lo

0
regex9  27.05.2018, 02:45
@KartoffelYT

Dein Code besteht nur aus den gegebenen Zeilen? Gibst du noch irgendwo anders diese Texte aus? Ansonsten solltest du dich auf die Frage fokusieren, in welchen Fällen ein PlayerInteractEvent getriggert werden kann.

0
KartoffelYT 
Fragesteller
 27.05.2018, 08:30

ja das ist mein ganzer Code

0

Hallo KartoffelYT,

Könnte es sein, das du dass Event anderweitig im Code aufrufst?

Mfg

TOminerTV

PS: Wenn es nicht klappt schau doch mal auf unserem TS vorbei:

PandoraPvP.spdns.de

Da könnt ich dir nochmal genauer helfen.

KartoffelYT 
Fragesteller
 27.05.2018, 08:36

Danke werd ich machen,ohne das return wird auch hey zweimal ausgegeben

0
TOcrafterHD  27.05.2018, 08:37
@KartoffelYT

Ja, habe mir return nochmal angeguckt und meine Antwort aktualisiert, vielleicht liegt es ja daran

0
KartoffelYT 
Fragesteller
 27.05.2018, 08:42

ich könnte eher heut abend muss meinen eltern heut helfen.

0
TOcrafterHD  27.05.2018, 08:45
@KartoffelYT

Ja, musste gucken wie es passt, musst dich halt nur bemerkbar machen und dann move ich dich hoch.

0

Also Leute,

Danke für eure schnelle Hilfe,

Die Lösung wäre gewesen bei meiner if abfrage bei right click air auch die Hand abzufragen sprich:

if(e.getHand().equals(EquipmentSlot.HAND) && e.getAction().equals(Action.RIGHT_CLICK_AIR)) {
    p.sendMessage(" lo");

Danke an der Stelle an Scriptm, ihr habt natürlich alle sehr geholfen.