Coding mit Java | Java-basierten APIs

  • Ersteller Ersteller ij9F_i0FaF-d9lrDSDDpDbfo
  • Erstellt am Erstellt am
Status
Für weitere Antworten geschlossen.
Oh :) Danke :D bin net der beste xD <3
Sagste bei Schedulern, sagste bei Inventory-Events... Dann lerne es.
Schau dir doch, bevor du fragst, die Methoden der entsprechenden Klasse an und überlege dann, was die machen könnte.
Außerdem kann man das auch sehr sehr leicht googeln.
 
Hi dudes,
Ich habe das Problem, das jedes mal wenn ich mit diesem code einen Block mit dem Namen chatcolor.blue + "Zeitbombe" setzte einen Nullpointer in die Fresse geworfen bekomme :(



Von: Martin Bach
An: Martin Bach
Mo, 01.12.2014 17:03
lol

public static HashMap<Location, Integer> tbombs = new HashMap<Location, Integer>();



@EventHandler
public void onBlockPlace(BlockPlaceEvent ev){

Player p = ev.getPlayer();
Block b = ev.getBlock();
Location lb = b.getLocation();
World w = lb.getWorld();
ItemStack is = ev.getItemInHand();
String isn = is.getItemMeta().getDisplayName();

if(isn.equals(ChatColor.BLUE + "Zeitbombe")){

tbombs.put(lb, 1);


int time = 60;
}
}
PHP:
if( is.HasItemMeta() )
{
    //Dein code
}
 
Hi dudes,
Ich habe das Problem, das jedes mal wenn ich mit diesem code einen Block mit dem Namen chatcolor.blue + "Zeitbombe" setzte einen Nullpointer in die Fresse geworfen bekomme :(



Von: Martin Bach
An: Martin Bach
Mo, 01.12.2014 17:03
lol

public static HashMap<Location, Integer> tbombs = new HashMap<Location, Integer>();



@EventHandler
public void onBlockPlace(BlockPlaceEvent ev){

Player p = ev.getPlayer();
Block b = ev.getBlock();
Location lb = b.getLocation();
World w = lb.getWorld();
ItemStack is = ev.getItemInHand();
String isn = is.getItemMeta().getDisplayName();

if(isn.equals(ChatColor.BLUE + "Zeitbombe")){

tbombs.put(lb, 1);


int time = 60;
}
}
Try to debug.
 
Wollen wir doch mal über das Laden von Commands in der Bukkit bzw Spigot API reden. Ich will hier nicht wissen wie das ganze im Grundsatz funktioniert, jedoch würde es mich interessieren, warum Essentials meine Commands (die ich mit Reflections und der SimpleCommandMap registriert habe) überschreibt, obwohl Essentials VOR meinem Plugin geladen hat und es die Commands auch Bukkit-Konform registriert. Außerdem ist noch die wichtige Frage zu klären wie es sich hierbei mit der Runtime verhält (ob die einen Einfluss auf das Registrieren hat oder nicht). Würde mich über eine angeregte Diskussion freuen :D
 
Wollen wir doch mal über das Laden von Commands in der Bukkit bzw Spigot API reden. Ich will hier nicht wissen wie das ganze im Grundsatz funktioniert, jedoch würde es mich interessieren, warum Essentials meine Commands (die ich mit Reflections und der SimpleCommandMap registriert habe) überschreibt, obwohl Essentials VOR meinem Plugin geladen hat und es die Commands auch Bukkit-Konform registriert. Außerdem ist noch die wichtige Frage zu klären wie es sich hierbei mit der Runtime verhält (ob die einen Einfluss auf das Registrieren hat oder nicht). Würde mich über eine angeregte Diskussion freuen :D

Gibt es eine Command Priority?

Ich meine dass das überschreinen von Commands nicht das kühlste ist. Du könntest catchen wenn der Spieler XY ausführt, um dann Essentials den Zugriff dadrauf zu verweigern.



Ich bin (hauptsächlich) MGEntwickler, kein Commandus Genie :D
 
Gibt es eine Command Priority?

Ich meine dass das überschreinen von Commands nicht das kühlste ist. Du könntest catchen wenn der Spieler XY ausführt, um dann Essentials den Zugriff dadrauf zu verweigern.



Ich bin (hauptsächlich) MGEntwickler, kein Commandus Genie :D
Nope es gibt keine Command-Priority.

@Zeno
Wenn du nich drumherum kommst benutz das PlayerCommandPreProcessEvent.
 
Kann mir kurz jemand sagen, wieso das zustande kommt? Werde daraus nicht schlau... :3
2014-12-07_16.49.30.png
 
@Zeno Ne, ein ganz normaler Server im Offlinemode um meine Plugins zu testen.
 
Das kann mit einer falschen Konfiguration deines Clients zusammen hängen. Dieses Problem hatte ich vor kurzem (~2 Monaten) auch mal. Einfach den .minecraft-Ordner (Backup nicht vergessen!) löschen, neu herstellen lassen und das Backup rein. Woola, fertig.

So hat es bei mir funktioniert.
 
@ilouHD Das hatte ich erst Ende Dezember gemacht. :/ Es kam bisher auch nur zweimal vor, einmal bei je einem Account.
 
Beste Methode um den Fehler zu finden: alle möglichen Probleme auflisten. Hier meine Ideen:
Kommt die Meldung nur Client-Sided oder auch in der Konsole?
Wenn auch auf dem Server - welche Plugins könnten so eine Exception verursachen.
Hast du das Problem auch, wenn du keine Plugins installiert hast?

Zum Fehlerbegriff "Group" - hat vlt. eins deiner Plugins etwas mit Gruppen zu tun? Vielleicht liegt der Fehler da.
Oder sendest du Packets/blockierst das Senden bestimmter Packets, die der Client braucht? Mehr mögliche Probleme fallen mir nicht ein ^^
 
  • Like
Reaktionen: ilouHD
Ich habe eine ArrayList und will das an alle Spieler die in der ArrayList sind eine narchicht gesendet wird aber in Intellj wird das schon als fehler angezeigt
Code:
if(Lobby.size() > 8){
                    for(Player l : Lobby) {
                        l.sendMessage("§aDas Spiel beginnt in 60 Sekunden!");
                    }

Die ArrayList habe ich natürlich auch schon ist halt nur weiter oben ^^
 
Status
Für weitere Antworten geschlossen.

Soziale Medien

  • X
  • TikTok

Über uns

  • GommeHD.net ist einer der größten Minecraft-Server der Welt. Dir gefällt unser Server? Dann unterstütze uns durch einen Kauf im Shop!
  • Shop