Inventoryclickevent - "Angeklickten" Player definieren?

Dieses Thema im Forum "Programmierung" wurde erstellt von Mrcookie008, 22. Juni 2013.

  1. Mrcookie008
    Offline

    Mrcookie008

    Registriert seit:
    15. Dezember 2011
    Beiträge:
    380
    Ort:
    /home
    Minecraft:
    xCookieZz oder Mrcookie008 (Beides Premium)
    Gelöst!

    Danke an Benni :3
     
    #1
  2. ChunkNorris
    Online

    ChunkNorris

    PlayerInteractEvent -> Player der angeklickt wurde holen -> beide Namen irgendwo speichern -> im InventoryClickEvent kannste dann den Namen holen....
     
    #2
  3. Benni1000
    Offline

    Benni1000 Ehem. Teammitglied

    Registriert seit:
    4. Mai 2012
    Beiträge:
    1.408
    Du kannst den Spieler beim klicken in einer HashMap speichern,
    und jedes mal wenn ein neuer Spieler angeklickt wird überschreibst du
    den Eintrag. So kannst du dir "merken" auf welchen Spieler sich das ganze
    beziehen soll. Der Spieler der klickt sollte hierbei sinnvollerweise der "key"
    der Map sein.

    EDIT: Verdammt zh war schneller D:
     
    #3
  4. Mrcookie008
    Offline

    Mrcookie008

    Registriert seit:
    15. Dezember 2011
    Beiträge:
    380
    Ort:
    /home
    Minecraft:
    xCookieZz oder Mrcookie008 (Beides Premium)
    Die Frage ist ja nun wie heisst das, wenn SpielerXY Angeklickt wird? (Und nein ich suche nicht getWhoClicked^^)

    Lg.

    //

    Benni deins werde ich mir auch gleich näher anschauen =)

    LG.
     
    #4
  5. ChunkNorris
    Online

    ChunkNorris

    PlayerInteractEntityEvent.getRightClicked()

    READ THE FUCKING DOCS!!!
     
    #5
  6. Mrcookie008
    Offline

    Mrcookie008

    Registriert seit:
    15. Dezember 2011
    Beiträge:
    380
    Ort:
    /home
    Minecraft:
    xCookieZz oder Mrcookie008 (Beides Premium)
    Achso mit getRightClicked ^_^

    Aber damit erkenne ich doch nur wer Rechts geklickt hat (Also im Inv)

    Und nicht den der geklickt wurde, oder?

    Weil das habe ich schon ^_^
     
    #6
  7. Chrisliebaer
    Online

    Chrisliebaer

    getClicked() - übersetzt mit bekommen Geklickten
    Code (Text):
    1. Gets the entity that was rightclicked by the player.


    READ THE FUCKING DOCS!!!



    Außerdem steht in der Doku: Represents an event that is called when a player right clicks an entity. Es muss sich hierbei also im die Enität handeln. Außerdem würde getClicked() sonst einen Player zurück geben.

    - - - Aktualisiert - - -

    Und diesen Spieler speicherst du dann zusammen mit dem virtuellen Inventar und wenn der Spieler dann im Inventar auf etwas klickt, musst du nurnoch die Spielerinfos laden.
     
    #7
  8. games6471
    Online

    games6471

    Du musst das Zeug nicht unbedingt in einer HashMap oder ähnliches speichern es geht auch über den Title des Inventars.

    Zum Erstellen des Fake-Inventars: (Als Titel kannst du dann den Spielernamen verwenden.)
    Code (Text):
    1. server.createInventory(InventoryHolder owner, int size, String title)
    2.           Creates an empty inventory of type InventoryType.CHEST with the specified size and title.
    Im Event:
    Code (Text):
    1. click.getInventory().getTitle()
     
    #8