PlayerDeathEvent gibt als Killer "null" aus, was soll ich tun?
Ich möchte in meinem PlayerDeathEvent abfragen, von welchem Mob man getötet wurde. Hier einmal der code
@EventHandler
public void onPlayerDeath(PlayerDeathEvent e) {
Player p = e.getEntity();
Entity killer = p.getKiller();
DamageCause cause = p.getLastDamageCause().getCause();
if(cause != null && cause.equals(DamageCause.BLOCK_EXPLOSION)){
e.setDeathMessage(p.getName+"wurde in die Luft gesprengt");
}
else if(cause != null && cause.equals(DamageCause.FALL)) {
e.setDeathMessage("§2"+p.getName()+"§2 hat Fallschaden genossen!");
}
else if(!(killer instanceof Player)){
p.sendMessage("Du wurdest von einem "+killer+" gekillt");
EntityType type = killer.getType();
p.sendMessage("type wurde festgestellt");
switch(type) {
case ZOMBIE:
e.setDeathMessage("§2"+p.getName()+"§2 wurde von einem Zombie getötet!");
break;
default:
p.sendMessage("Du wurdest von einem Mob gekillt");
break;
}
}
Und bei dem "Du wurdest von einem "+killer+" gekillt" wird immer "null" anstatt von "killer" ausgegeben Hoffe ihr könnt mir sagen, was ich falsch mache und wie ich es schaffe den Mob Typ abzufragen
Minecraft,
Plug-in