ServerPlugin Minecraft Item Move im Inventar

Dieses Thema im Forum "Programmierung" wurde erstellt von McWizzardDev, 20. Juli 2016.

  1. McWizzardDev
    Offline

    McWizzardDev

    Registriert seit:
    7. Oktober 2015
    Beiträge:
    58
    Guten Tag,

    ich möchte das ein Spieler nur eine bestimmte Menge an items haben darf. Dies brauche ich für einen Spielmodus, dieser Gold, Eisen und Goldblöcke enthält, diese haben alle ein Gewicht (Gold: 2, Eisen: 1, Goldblock: 18), der Spieler darf maximal ein Gewicht von 20 in seinem Inventar haben. Ich habe dies über das InventoryClickEvent versucht, aber eigentlich hat das ja etwas mit dem InventoryMoveItemEvent zu tuhen, doch dieses geht beim Moven eines Items nicht (Habe es mit Brodecast probiert)

    Das Problem ist das ich nun wenn ein Item zu viel gemovt wird, dieses wieder zurück in das Inventar gelegt wird, wie soll ich das machen?

    Mit freundlichen Grüßen

    Fabi
     
    #1
  2. GPSforLEGENDS
    Offline

    GPSforLEGENDS

    Registriert seit:
    21. März 2014
    Beiträge:
    295
    Ort:
    Bürostuhl
    Minecraft:
    GPSforLEGENDS
    Einfach mal die Javadocs von der Bukkit API lesen anstatt wie ein Anfänger auf Gut Glück...
    Wenn du verhindern willst das das Items nicht aus einem Inventar genommen werden sollen, machst du das über das InventoryClickEvent und überprüfst das "gewicht" vom Spieler Inventar und wenn es halt zuviel ist dann cancelst du das.
    Wenn du außerdem willst das Spieler keine Items aufnehmen können musst du auch noch das PlayerPickUpItemEvent nutzen.
     
    #2
    jensIO gefällt das.
  3. McWizzardDev
    Offline

    McWizzardDev

    Registriert seit:
    7. Oktober 2015
    Beiträge:
    58
    Hast du mich gerade anfänger genannt :D :D :D

    Ja mit dem InventoryClickEvent geht das leider nicht so :)

    Aber danke für die Javadocs
     
    #3
  4. GPSforLEGENDS
    Offline

    GPSforLEGENDS

    Registriert seit:
    21. März 2014
    Beiträge:
    295
    Ort:
    Bürostuhl
    Minecraft:
    GPSforLEGENDS
    Na klar geht das mit dem InventoryClickEvent....
    Du überprüfst einfach ob das Inventar, in das das Item gelegt werden soll, ein Spieler Inventar ist und wenn es ein Spieler Inventar ist berechnest du halt das Gewicht vom Inventar und wenn das Gewicht zu groß ist das cancellst du das.
    Das sind 10 Minuten arbeit.
     
    #4
  5. JTK222
    Online

    JTK222

    Registriert seit:
    5. September 2013
    Beiträge:
    665
    Ort:
    Planet Erde
    Minecraft:
    JTK222
    Soweit ich weiß gibt es ein Item Pickup event kenne mich aber nicht großartig mit der API aus müsstest also selber schauen.
     
    #5
  6. Inkemann
    Offline

    Inkemann

    Registriert seit:
    3. Mai 2015
    Beiträge:
    341
    Ort:
    Aachen
    Minecraft:
    Inkemann
    Offensichtlich ja zurecht. Selbst mit mittelmäßiger Ahnung ist das wirklich alles andere als schwer. InventoryClickEvent, PlayerPickupItemEvent und ein paar Minuten Arbeit und du hast was du willst.
     
    #6