- Баллы
- 76
- Имя в Minecraft
- Rfg0
Такая проблема. Я хочу, чтобы при ударе моба его подкидывало. Решил сделать через setVelocity().
Вот код.
не работает именно вот эта строка -
Пробовал моба телепортировать работает.
Пробовал через другой Event эта падла работает.
Вот код.
Java:
@EventHandler
public void onDamage(EntityDamageByEntityEvent e){
if(e.getDamager() instanceof Player){
Player p = (Player) e.getDamager();
ItemStack is = p.getItemInHand();
if(is.hasItemMeta()){
ItemMeta im = is.getItemMeta();
String name = im.getDisplayName();
if((is.getType() == Material.DIAMOND_SWORD) && (name.equalsIgnoreCase("§6§lПодкидывающий меч"))){
Entity en = e.getEntity();
if(p.hasPermission("systemcommands.giveweapons.throwsword.use")){
Vector vec = new Vector(p.getVelocity().getX(), p.getVelocity().getY() + 2, p.getVelocity().getZ());
en.setVelocity(vec);
}
}}
}
}
Java:
en.setVelocity(vec);
Пробовал через другой Event эта падла работает.
Java:
@EventHandler
public void onDamage(PlayerInteractEntityEvent e){
Player p = e.getPlayer();
ItemStack is = p.getItemInHand();
if(is.hasItemMeta()){
ItemMeta im = is.getItemMeta();
String name = im.getDisplayName();
if((is.getType() == Material.DIAMOND_SWORD) && (name.equalsIgnoreCase("§6§lПодкидывающий меч"))){
Entity en = e.getRightClicked();
if(p.hasPermission("systemcommands.giveweapons.throwsword.use")){
Vector vec = new Vector(p.getVelocity().getX(), p.getVelocity().getY() + 2, p.getVelocity().getZ());
en.setVelocity(vec);
}
} }
}