Minecraft Programmieren : Kiste öffnen richtig cancelln

Hallo Leute, ich programmiere gerade ein Minispiel. Wie in vielen Spielen blockt man auch das Kisten öffnen. (Außer natürlich bei Minispielen, wo Kisten etc... benötigt werden)... Ich habe mit dem InventoryOpenEvent probiert das Kisten öffnen zu verhindern:

@EventHandler
public void onInventoryOpen(InventoryOpenEvent e) {
    
    if(e.getView().getType() != null) {
            
            
        if(e.getView().getType() == InventoryType.CHEST) {
            
            e.setCancelled(true);
            
        }

        if(e.getView().getType() == InventoryType.BEACON) {
                
            e.setCancelled(true);
                
        }
        
        if(e.getView().getType() == InventoryType.BREWING) {
                
            e.setCancelled(true);
                
        }
        
        if(e.getView().getType() == InventoryType.ANVIL) {
            
            e.setCancelled(true);
            
        }
        
        if(e.getView().getType() == InventoryType.CRAFTING) {
            
            e.setCancelled(true);
            
        }
        
        if(e.getView().getType() == InventoryType.DISPENSER) {
        
            e.setCancelled(true);
            
        }
        
        if(e.getView().getType() == InventoryType.DROPPER) {
            
            e.setCancelled(true);
            
        }
        
        if(e.getView().getType() == InventoryType.ENCHANTING) {
            
            e.setCancelled(true);
        
        }
        
        if(e.getView().getType() == InventoryType.ENDER_CHEST) {
            
            e.setCancelled(true);
            
        }
        
        if(e.getView().getType() == InventoryType.FURNACE) {
            
            e.setCancelled(true);
            
        }
        
        if(e.getView().getType() == InventoryType.HOPPER) {
            
        e.setCancelled(true);
            
        }
            
        if(e.getView().getType() == InventoryType.WORKBENCH) {
                
            e.setCancelled(true);
                
        }
            
        if(e.getView().getType() == InventoryType.MERCHANT) {
            
            e.setCancelled(true);
            
        }
            
    }
    
}
    

Das ganze funnktioniert relativ gut. Das Inventar wird geschlossen. Aber die Kiste bleibt offen... Zeit schließt sie sich wieder. Es sieht also so aus als würde ein Unsichtbarer die Kiste noch geöffnet haben.

Wie kann ich das unterbinden? Sodass die Kiste wie bei Gommehd.net auch zu bleibt?

...zur Frage

Du könntest versuchen, das öffnen der Truhe bereits bei einem früheren Event abzufangen - Hier wäre das zum Beispiel das PlayerInteractEvent. Das PlayerInteractEvent wird aufgerufen, wenn ein Spieler Links- oder Rechtsklickt. Hier müsstest du überprüfen, ob der entsprechende Block eine Truhe (oder ein anderer Block mit Inventar) ist und dann einfach das Event canceln.

MFG Nummer378

...zur Antwort

Die Frage wurde hier nicht zum ersten mal gestellt. Die Frage ob sie es können oder nicht, ist eigentlich *****egal. Wenn du versuchst wegen Handlungen bei einem Spiel Anzeige zu erstatten, lacht sich die Polizei kaputt. Die versuchen dir nur Angst zu machen. Dieser Server muss aber auch ziemlich dumm sein, nebenbei bemerkt. Wenn sie dich weghaben wollten, könnten sie einfach deine Adresse bannen und Proxys sperren. Dann wären sie sich los. Wenn sie das aber nicht schaffen, sind sie selber Schuld, würde ich sagen. Sollen sie doch ihren MC Server löschen.

...zur Antwort

Eine kleine Idee hätte ich. Mache dir einen kleinen lokalen Server auf deinem Rechner (Unbedingt Bukkit). Gehe in deine .mincraft/saves und kopiere die Welt in den Hauptordner deines neuen kleinen Bukkitservers und benenne den Weltordner in "world" um. Installiere nun in den Ordner Plugins das Plugin WorldGuard und starte den Server. Gebe jetzt einfach über die Konsole /stoplag ein.Dies stoppt alle Explosionen und löscht das explodiernde TNT. Danach kannst du mit /stop den Server stoppen. Kopiere nun den Weltenordner der jetzt ja world heißt, wieder zurück in deine .minecraft/saves und benenne ihn wieder zum alten Namen um. Alle alten Dateien mit den neuen überschreiben! Denn kleinen lokalen Bukkitserver kannst du jetzt löschen.

...zur Antwort

Habe ein kleines selbst gemacht. Ist daher auch auf Deutsch. Läuft mit Java 7.

Kommando

/schild Zeile Text

Rechte (Permissions)

SignEditor.edit oder Op

Du kannst auch mit &Zahl Farben auf dem Schild machen. Wenn du noch ne Funktion brauchst, schreib mich an.

Download:

http://www.mediafire.com/download.php?bt6m06c9zc7bv34

...zur Antwort

Also: Was die WhiteList ist hat dir jetzt ja schon jemand erklärt. Zum Premium Acc. Einen Premium Account hast du, wenn du das Spiel legal gekauft hast. Mit einem Premium Account kannst du auf jeden öffentlichen Server joinen. Auf der Website von minecraft.net kannst du mit niemanden kommunizieren, die Seite ist eigentlich ziemlich nutzlos, nur fürs Skin (Aussehen) ändern und für Infos zum Spiel. Wenn du auf die 'Whitelist' eines Servers möchtest, musst du den Besitzer des Servers finden und zwar über ganz normale Netzwerke wie FaceBook oder so. Wo hast du den Server den gefunden? Vielleicht steht da ja ne E-mailadresse wo du sie anschreiben kannst. Zum Slot. Wie du ja (vielleicht) bemerkt hast, hat jeder Server eine begrenzte Anzahl an Spielern die GLEICHZEITIG auf dem Server sein können. Diese Anzahl nennt man Plural. Slots , Singular Slot. Ein Slot (Englisch = Steckplatz) ist also etwas was ein Spieler besetzen kann. Dann befindet er sich in diesem Slot. Wenn es keine freien Slots mehr gibt, kann (logischerweise) auch keiner mehr den Server betreten also 'joinen'.

...zur Antwort

Ja ich weiss worans liegt. Essentials. Du musst bei Essentials in der config. einstellen, das jeder Spieler an seinem Bed spawnen soll.

...zur Antwort
Weitere Inhalte können nur Nutzer sehen, die bei uns eingeloggt sind.