ServerPlugin Inventartyp im InventoryClickEvent

Dieses Thema im Forum "Programmierung" wurde erstellt von BlinderHeld, 29. Juli 2015.

  1. BlinderHeld
    Offline

    BlinderHeld

    Registriert seit:
    22. September 2013
    Beiträge:
    3
    Hallo! Ich habe ein Problem im InventoryClickEvent und leider konnte mir die Bukkit API nicht weiterhelfen.
    Unzwar möchte ich herausfinden, ob ein item von A nach B bewegt wird, und dies ggf. unterbinden. Heißt, dass man bestimmte Items nicht in eine Kiste legen darf.
    z.B. bekommt man mit e.getInventory() bzw mit e.getInventory().getType() ja nur das Inventar, was gerade offen ist, aber nicht in welches geklickt wurde. Ist es möglich das herauszufinden? Würde mich auf eine Antwort freuen.

    Mfg BlinderHeld
     
    #1
  2. Victini151
    Online

    Victini151

    Da gibts das InventoryView, (afaik über e.getView()), damit hast du Zugriff auf beide Inventories
     
    #2
    Payno4 gefällt das.
  3. ShareLock
    Offline

    ShareLock

    Registriert seit:
    2. November 2011
    Beiträge:
    70
    Das lässt sich einfach über getAction und isXClick realisieren.
    1. Abfangen ob items mit Shift ins inventar gelegt werden
    2. Abfragen ob Item im ge-clickten Inventar abgelegt wird.
    3. Abfragen ob Item aus ge-clicktem Inventar herausgenommen wird.
     
    #3
    Payno4 und [Dev] iTzSasukeHDxLP gefällt das.
  4. BlinderHeld
    Offline

    BlinderHeld

    Registriert seit:
    22. September 2013
    Beiträge:
    3
    Danke für die Antworten, aber soweit war ich auch schon. Aber mir fehlt ansich nur die Methode, die mir zurückgibt in welches von den beiden (oben/unten) Inveories geklickt wurde. Vielleicht ist es auch einfach nur zu offensichtlich & ich seh es nicht..

    EDIT:
    Nach etwas längerem suchen habe ich die Lösung gefunden. Mit e.getRawSlot() bekommt man den Slot. In einer 1-Block Truhe ist 0-26 oben und 27-62 unten.

    Weitere Infos:
    https://bukkit.org/threads/registering-if-player-moved-item-into-chest.145791/
     
    #4