Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @SuppressWarnings("deprecation")
- @EventHandler
- public void onDamagingHit(EntityDamageByEntityEvent event) {
- if (event.getCause().equals(EntityDamageEvent.DamageCause.ENTITY_ATTACK)) {
- if (event.getDamager() instanceof Player) {
- if (event.getEntity() instanceof Player) {
- event.setCancelled(true);
- double getdamage = event.getDamage();
- if (getdamage < 1 || event.getEntity() == null) {
- event.setDamage(0);
- event.setCancelled(true);
- } else if (getdamage > 0) {
- if (!event.isCancelled()) {
- event.setDamage(0);
- Player player = (Player) event.getDamager();
- ItemStack item = player.getInventory().getItemInMainHand();
- item.setDurability((short) 0);
- if (item != null && item.getType() != Material.AIR && item.hasItemMeta() && item.getItemMeta().hasLore()) {
- item.setDurability((short) 0);
- }
- if (event.getEntity() instanceof Player) {
- Player hitplayer = (Player) event.getEntity();
- for (ItemStack armorItem : hitplayer.getInventory().getArmorContents()) {
- if (armorItem != null && armorItem.getType() != Material.AIR && armorItem.hasItemMeta() && armorItem.getItemMeta().hasLore()) {
- armorItem.setDurability((short) 0);
- }
- }
- }
- /*if (isValidWeapon(item)) {
- if (item.hasItemMeta() && item.getItemMeta().hasLore()) {
- double damage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Damage", ":"));
- double newHealth = ((LivingEntity)event.getEntity()).getHealth() - damage;
- if (newHealth < 0)
- newHealth = 0;
- // player.sendMessage(ChatColor.GREEN + "Damage : " + damage);
- //player.sendMessage(ChatColor.RED + "Remaining Health : " + newHealth);
- player.sendMessage(ChatColor.RED + "" + Math.round(damage) + " Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
- ((LivingEntity) event.getEntity()).setHealth(newHealth);
- }
- }*/
- }
- }
- } else {
- event.setDamage(0);
- Player player = (Player) event.getDamager();
- ItemStack item = player.getInventory().getItemInMainHand();
- item.setDurability((short) 0);
- if (item != null && item.getType() != Material.AIR && item.hasItemMeta() && item.getItemMeta().hasLore()) {
- item.setDurability((short) 0);
- }
- if (event.getEntity() instanceof Player) {
- Player hitplayer = (Player) event.getEntity();
- for (ItemStack armorItem : hitplayer.getInventory().getArmorContents()) {
- if (armorItem != null && armorItem.getType() != Material.AIR && armorItem.hasItemMeta() && armorItem.getItemMeta().hasLore()) {
- armorItem.setDurability((short) 0);
- }
- }
- }
- if (isValidWeapon(item) && isValidLevel(item, player)) {
- if (item.hasItemMeta() && item.getItemMeta().hasLore()) {
- double damage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Damage", ":"));
- double newHealth = ((LivingEntity)event.getEntity()).getHealth() - damage;
- if (newHealth < 0)
- newHealth = 0;
- //player.sendMessage(ChatColor.RED + "" + Math.round(damage) + " Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
- event.setCancelled(true);
- if (entityDamageDelayList.get(event.getEntity()) == null) {
- entityDamageDelayList.put(event.getEntity(), false);
- }
- if (entityDamageDelayList.get(event.getEntity()) == false) {
- entityDamageDelayList.put(event.getEntity(), true);
- player.sendMessage(ChatColor.RED + "" + Math.round(damage) + " Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
- Player damager = (Player) event.getDamager();
- Entity entity = event.getEntity();
- entity.setVelocity(damager.getLocation().getDirection().setY(.9).normalize().multiply(.5));
- ((LivingEntity) event.getEntity()).setHealth(newHealth);
- Bukkit.getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
- public void run() {
- entityDamageDelayList.put(event.getEntity(), false);
- }
- }, 13L);
- } else {
- return;
- }
- /*Player damager = (Player) event.getDamager();
- Entity entity = event.getEntity();
- entity.setVelocity(damager.getLocation().getDirection().setY(.35).normalize().multiply(.4));
- entityDamageDelayList.put(event.getEntity(), true);
- ((LivingEntity) event.getEntity()).setHealth(newHealth);
- event.setCancelled(true);*/
- // start test
- if(newHealth == 0) {
- if (event.getDamager() instanceof Player)
- {
- int mobExp = LevelManager.getExpFromMob(ChatColor.stripColor(event.getEntity().getCustomName()), player);
- LevelManager.grantPlayerExp(player, mobExp);
- }
- }
- // end test
- }
- if (item.getItemMeta().getLore().get(1) != null && item.getItemMeta().getLore().get(1).contains("Ice Damage : ")) {
- double icedamage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Ice Damage", ":"));
- double newHealth = ((LivingEntity)event.getEntity()).getHealth() - icedamage;
- if (newHealth < 0)
- newHealth = 0;
- player.sendMessage(ChatColor.AQUA + "" + Math.round(icedamage) + " Ice Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
- ((LivingEntity) event.getEntity()).setHealth(newHealth);
- if(newHealth == 0) {
- if (event.getDamager() instanceof Player)
- {
- int mobExp = LevelManager.getExpFromMob(ChatColor.stripColor(event.getEntity().getCustomName()), player);
- LevelManager.grantPlayerExp(player, mobExp);
- }
- }
- }
- if (item.getItemMeta().getLore().get(1) != null && item.getItemMeta().getLore().get(1).contains("Solar Damage : ")) {
- double solardamage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Solar Damage", ":"));
- double newHealth = ((LivingEntity)event.getEntity()).getHealth() - solardamage;
- if (newHealth < 0)
- newHealth = 0;
- player.sendMessage(ChatColor.YELLOW + "" + Math.round(solardamage) + " Solar Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
- ((LivingEntity) event.getEntity()).setHealth(newHealth);
- if(newHealth == 0) {
- if (event.getDamager() instanceof Player)
- {
- int mobExp = LevelManager.getExpFromMob(ChatColor.stripColor(event.getEntity().getCustomName()), player);
- LevelManager.grantPlayerExp(player, mobExp);
- }
- }
- }
- if (item.getItemMeta().getLore().get(1) != null && item.getItemMeta().getLore().get(1).contains("Void Damage : ")) {
- double voiddamage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Void Damage", ":"));
- double newHealth = ((LivingEntity)event.getEntity()).getHealth() - voiddamage;
- if (newHealth < 0)
- newHealth = 0;
- player.sendMessage(ChatColor.LIGHT_PURPLE + "" + Math.round(voiddamage) + " Void Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
- ((LivingEntity) event.getEntity()).setHealth(newHealth);
- if(newHealth == 0) {
- if (event.getDamager() instanceof Player)
- {
- int mobExp = LevelManager.getExpFromMob(ChatColor.stripColor(event.getEntity().getCustomName()), player);
- LevelManager.grantPlayerExp(player, mobExp);
- }
- }
- }
- if (item.getItemMeta().getLore().get(1) != null && item.getItemMeta().getLore().get(1).contains("Life Steal : ")) {
- double lifesteal = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Life Steal", ":"));
- if (((LivingEntity)event.getDamager()).getHealth() != ((LivingEntity)event.getDamager()).getMaxHealth()) {
- double newHealth = ((LivingEntity)event.getDamager()).getHealth() + lifesteal;
- player.sendMessage(ChatColor.RED + "" + Math.round(lifesteal) + " Life Steal > " + ChatColor.GOLD + "You" + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
- ((LivingEntity) event.getDamager()).setHealth(newHealth);
- } else {
- }
- }
- } else if (!isValidLevel(item, player)) {
- player.sendMessage(ChatColor.RED + "You are not a high enough level to use this weapon!");
- }
- String entityname = ChatColor.stripColor(event.getEntity().getCustomName());
- if (entityname != null) {
- if (entityname.equals(("Kaskith The Executioner")) && event.getEntityType().equals(EntityType.ZOMBIE)) {
- if (((LivingEntity)event.getEntity()).getHealth() <= 500 && ((LivingEntity)event.getEntity()).getHealth() >= 400) {
- event.getEntity().setCustomName(ChatColor.RED + "" + ChatColor.BOLD + "KASKITH ENRAGED");
- LivingEntity zombie = (LivingEntity) event.getEntity();
- zombie.getAttribute(Attribute.GENERIC_MOVEMENT_SPEED).setBaseValue(0.38);
- onEnragedName(event.getEntity());
- player.sendMessage(ChatColor.GOLD + "" + entityname + " is now " + ChatColor.RED + ChatColor.BOLD + "ENRAGED");
- }
- } else if (entityname.equals(("Dark Voyager Acolyte")) && event.getEntityType().equals(EntityType.ZOMBIE)) {
- if (((LivingEntity)event.getEntity()).getHealth() <= 1500 && ((LivingEntity)event.getEntity()).getHealth() >= 100) {
- event.getEntity().setCustomName(ChatColor.RED + "" + ChatColor.BOLD + "DV ACOLYTE ENRAGED");
- LivingEntity zombie = (LivingEntity) event.getEntity();
- zombie.getAttribute(Attribute.GENERIC_MOVEMENT_SPEED).setBaseValue(0.38);
- onEnragedName(event.getEntity());
- player.sendMessage(ChatColor.GOLD + "" + entityname + " is now " + ChatColor.RED + ChatColor.BOLD + "ENRAGED");
- player.sendMessage(ChatColor.GOLD + "" + entityname + ChatColor.GOLD + "is harnessing energy to form a Tier 3 sword");
- }
- } else if (entityname.equals(("Asrelias Shotosuki")) && event.getEntityType().equals(EntityType.ZOMBIE)) {
- if (((LivingEntity)event.getEntity()).getHealth() <= 25000 && ((LivingEntity)event.getEntity()).getHealth() >= 100) {
- event.getEntity().setCustomName(ChatColor.RED + "" + ChatColor.BOLD + "ASRELIAS ENRAGED");
- LivingEntity zombie = (LivingEntity) event.getEntity();
- zombie.getAttribute(Attribute.GENERIC_MOVEMENT_SPEED).setBaseValue(0.38);
- onEnragedName(event.getEntity());
- player.sendMessage(ChatColor.GOLD + "" + entityname + " is now " + ChatColor.RED + ChatColor.BOLD + "ENRAGED");
- player.sendMessage(ChatColor.GOLD + "" + entityname + ChatColor.GOLD + "is harnessing energy to form a Tier 4 sword");
- }
- }
- }
- }
- } else if (event.getDamager() instanceof Zombie) {
- if (event.getEntity() instanceof Player) {
- Player player2 = (Player) event.getEntity();
- double maxhealth1 = player2.getMaxHealth();
- double currenthealth1 = player2.getHealth();
- if (currenthealth1 > maxhealth1) {
- player2.setHealth(maxhealth1);
- }
- Player player = (Player) event.getEntity();
- Zombie zombie = (Zombie) event.getDamager();
- for (ItemStack armorItem : player.getInventory().getArmorContents()) {
- if (armorItem != null && armorItem.getType() != Material.AIR && armorItem.hasItemMeta() && armorItem.getItemMeta().hasLore()) {
- armorItem.setDurability((short) 0);
- }
- }
- ItemStack item = zombie.getEquipment().getItemInMainHand();
- event.setDamage(0);
- if (isValidWeapon(item)) {
- if (item.hasItemMeta() && item.getItemMeta().hasLore()) {
- double damage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Damage", ":"));
- double newHealth = ((Player)event.getEntity()).getHealth() - damage;
- if (newHealth < 0)
- newHealth = 0;
- //player.sendMessage(ChatColor.GREEN + "Damage : " + damage);
- //player.sendMessage(ChatColor.RED + "Remaining Health : " + newHealth);
- player.sendMessage(ChatColor.RED + "" + Math.round(damage) + " Damage > " + ChatColor.GOLD + "You" + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + "/" + Math.round(player.getMaxHealth()) + " HP]");
- ((Player) event.getEntity()).setHealth(newHealth);
- }
- } else {
- }
- }
- } else {
- return;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement