Verhindern, dass Items zu einem bestimmten Inventar hinzugefügt werden

Dieses Thema im Forum "Programmierung" wurde erstellt von Fnord, 11. November 2012.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Fnord
    Offline

    Fnord

    Registriert seit:
    11. November 2012
    Beiträge:
    3
    Hayho Community

    Ich bin grad dabei ein kleines Plugin zu gestalten, habe aber folgendes Problem.
    Es wird ein Virtuelles Inventar erstellt welches pro Spieler auf dem Server nur einmal verfügbar ist.
    Nun soll es möglich sein Dinge aus dem Inventar zu nehmen aber keine einzulagern.

    Genau bei der Trennung von ein und auslagern hab ich ein Problem.

    Ich wär euch sehr dankbar für Tipps und Ideen ;)

    Mfg Fnord
    PS: Ich hoffe das hier ist im richtigen Unterforum gepostet.
     
    #1
  2. MrFlieder
    Offline

    MrFlieder

    Registriert seit:
    30. Dezember 2011
    Beiträge:
    333
    Ort:
    Österreich
    Minecraft:
    MrFlieder
    Meinst du mit Items einlagern das Aufsammeln von Items?
    Also droppen soll man können, aber aufsammeln nicht?

    Code (Text):
    1.  
    2. @EventHandler
    3. public void onPlayerItemPickup(PlayerPickupItemEvent event)
    4.  {
    5. ev.getPlayer().sendMessage("§c Du darfst keine Items einlagern!");  
    6. event.setCancelled(true);
    7. }
    8.  
     
    #2
  3. Fnord
    Offline

    Fnord

    Registriert seit:
    11. November 2012
    Beiträge:
    3
    Nein, Ich meine das verschieben von Items zwischen 2 Inventaren.

    Im grunde dreht sich alles um das "InventoryClickEvent".
     
    #3
  4. TimBone
    Online

    TimBone

    Du kannst das InventoryOpenEvent (oder so ähnlich) verbieten. Allerdings kann man dann noch über Chests verschieben :(
     
    #4
  5. Benni1000
    Offline

    Benni1000 Ehem. Teammitglied

    Registriert seit:
    4. Mai 2012
    Beiträge:
    1.408
    Hier, den code habe ich für mein Bücherregal-plugin geschrieben, ich glaube sowas brauchst du oder?
    http://pastebin.com/YaQBWp91
    Wenn du den code reinmachst kannst du z.b nur Bücher einlagern.
     
    #5
  6. Fnord
    Offline

    Fnord

    Registriert seit:
    11. November 2012
    Beiträge:
    3
    Danke euch beiden, aber das Problem schein von mit etwas umständlich formuliert worden zu sein.

    Im Grunde brauche ich nur einen Code der mir sagt, ob ich etwas aus einem Inventar genommen oder etwas hineingetan habe, also im Transfer zwischen Chest und Player Inv.
     
    #6
  7. Benni hat einen funktionierenden Code geschrieben.

    ev.getInventory().getName().equalsIgnoreCase("BookShelf") überprüft ob der Besitzer des Inventars ein Bücherregal ist.
     
    #7
  8. Benni1000
    Offline

    Benni1000 Ehem. Teammitglied

    Registriert seit:
    4. Mai 2012
    Beiträge:
    1.408
    Ne, das überprüft den namen des inventars, nicht den namen des Besitzers.
     
    #8
  9. #9
Status des Themas:
Es sind keine weiteren Antworten möglich.