Advertisement
Guest User

Untitled

a guest
Jul 18th, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.11 KB | None | 0 0
  1. @SuppressWarnings("deprecation")
  2. @EventHandler
  3. public void onDamagingHit(EntityDamageByEntityEvent event) {
  4.  
  5. if (event.getCause().equals(EntityDamageEvent.DamageCause.ENTITY_ATTACK)) {
  6.  
  7.  
  8. if (event.getDamager() instanceof Player) {
  9.  
  10. if (event.getEntity() instanceof Player) {
  11. event.setCancelled(true);
  12. double getdamage = event.getDamage();
  13. if (getdamage < 1 || event.getEntity() == null) {
  14. event.setDamage(0);
  15. event.setCancelled(true);
  16. } else if (getdamage > 0) {
  17. if (!event.isCancelled()) {
  18. event.setDamage(0);
  19. Player player = (Player) event.getDamager();
  20. ItemStack item = player.getInventory().getItemInMainHand();
  21. item.setDurability((short) 0);
  22. if (item != null && item.getType() != Material.AIR && item.hasItemMeta() && item.getItemMeta().hasLore()) {
  23. item.setDurability((short) 0);
  24. }
  25.  
  26. if (event.getEntity() instanceof Player) {
  27. Player hitplayer = (Player) event.getEntity();
  28. for (ItemStack armorItem : hitplayer.getInventory().getArmorContents()) {
  29. if (armorItem != null && armorItem.getType() != Material.AIR && armorItem.hasItemMeta() && armorItem.getItemMeta().hasLore()) {
  30. armorItem.setDurability((short) 0);
  31. }
  32. }
  33. }
  34.  
  35. /*if (isValidWeapon(item)) {
  36. if (item.hasItemMeta() && item.getItemMeta().hasLore()) {
  37. double damage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Damage", ":"));
  38. double newHealth = ((LivingEntity)event.getEntity()).getHealth() - damage;
  39. if (newHealth < 0)
  40. newHealth = 0;
  41.  
  42. // player.sendMessage(ChatColor.GREEN + "Damage : " + damage);
  43. //player.sendMessage(ChatColor.RED + "Remaining Health : " + newHealth);
  44. player.sendMessage(ChatColor.RED + "" + Math.round(damage) + " Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
  45.  
  46. ((LivingEntity) event.getEntity()).setHealth(newHealth);
  47. }
  48. }*/
  49. }
  50.  
  51. }
  52. } else {
  53.  
  54. event.setDamage(0);
  55. Player player = (Player) event.getDamager();
  56. ItemStack item = player.getInventory().getItemInMainHand();
  57. item.setDurability((short) 0);
  58. if (item != null && item.getType() != Material.AIR && item.hasItemMeta() && item.getItemMeta().hasLore()) {
  59. item.setDurability((short) 0);
  60. }
  61.  
  62. if (event.getEntity() instanceof Player) {
  63. Player hitplayer = (Player) event.getEntity();
  64. for (ItemStack armorItem : hitplayer.getInventory().getArmorContents()) {
  65. if (armorItem != null && armorItem.getType() != Material.AIR && armorItem.hasItemMeta() && armorItem.getItemMeta().hasLore()) {
  66. armorItem.setDurability((short) 0);
  67. }
  68. }
  69. }
  70.  
  71. if (isValidWeapon(item) && isValidLevel(item, player)) {
  72. if (item.hasItemMeta() && item.getItemMeta().hasLore()) {
  73. double damage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Damage", ":"));
  74.  
  75. double newHealth = ((LivingEntity)event.getEntity()).getHealth() - damage;
  76.  
  77.  
  78. if (newHealth < 0)
  79. newHealth = 0;
  80.  
  81.  
  82. //player.sendMessage(ChatColor.RED + "" + Math.round(damage) + " Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
  83. event.setCancelled(true);
  84. if (entityDamageDelayList.get(event.getEntity()) == null) {
  85. entityDamageDelayList.put(event.getEntity(), false);
  86. }
  87.  
  88. if (entityDamageDelayList.get(event.getEntity()) == false) {
  89. entityDamageDelayList.put(event.getEntity(), true);
  90. player.sendMessage(ChatColor.RED + "" + Math.round(damage) + " Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
  91. Player damager = (Player) event.getDamager();
  92. Entity entity = event.getEntity();
  93. entity.setVelocity(damager.getLocation().getDirection().setY(.9).normalize().multiply(.5));
  94.  
  95. ((LivingEntity) event.getEntity()).setHealth(newHealth);
  96.  
  97. Bukkit.getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
  98. public void run() {
  99. entityDamageDelayList.put(event.getEntity(), false);
  100. }
  101. }, 13L);
  102. } else {
  103. return;
  104. }
  105.  
  106.  
  107. /*Player damager = (Player) event.getDamager();
  108. Entity entity = event.getEntity();
  109. entity.setVelocity(damager.getLocation().getDirection().setY(.35).normalize().multiply(.4));
  110. entityDamageDelayList.put(event.getEntity(), true);
  111. ((LivingEntity) event.getEntity()).setHealth(newHealth);
  112. event.setCancelled(true);*/
  113.  
  114.  
  115.  
  116. // start test
  117. if(newHealth == 0) {
  118. if (event.getDamager() instanceof Player)
  119. {
  120. int mobExp = LevelManager.getExpFromMob(ChatColor.stripColor(event.getEntity().getCustomName()), player);
  121. LevelManager.grantPlayerExp(player, mobExp);
  122. }
  123. }
  124.  
  125.  
  126. // end test
  127. }
  128.  
  129. if (item.getItemMeta().getLore().get(1) != null && item.getItemMeta().getLore().get(1).contains("Ice Damage : ")) {
  130. double icedamage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Ice Damage", ":"));
  131. double newHealth = ((LivingEntity)event.getEntity()).getHealth() - icedamage;
  132. if (newHealth < 0)
  133. newHealth = 0;
  134. player.sendMessage(ChatColor.AQUA + "" + Math.round(icedamage) + " Ice Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
  135. ((LivingEntity) event.getEntity()).setHealth(newHealth);
  136. if(newHealth == 0) {
  137. if (event.getDamager() instanceof Player)
  138. {
  139. int mobExp = LevelManager.getExpFromMob(ChatColor.stripColor(event.getEntity().getCustomName()), player);
  140. LevelManager.grantPlayerExp(player, mobExp);
  141. }
  142. }
  143. }
  144.  
  145. if (item.getItemMeta().getLore().get(1) != null && item.getItemMeta().getLore().get(1).contains("Solar Damage : ")) {
  146. double solardamage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Solar Damage", ":"));
  147. double newHealth = ((LivingEntity)event.getEntity()).getHealth() - solardamage;
  148. if (newHealth < 0)
  149. newHealth = 0;
  150. player.sendMessage(ChatColor.YELLOW + "" + Math.round(solardamage) + " Solar Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
  151. ((LivingEntity) event.getEntity()).setHealth(newHealth);
  152. if(newHealth == 0) {
  153. if (event.getDamager() instanceof Player)
  154. {
  155. int mobExp = LevelManager.getExpFromMob(ChatColor.stripColor(event.getEntity().getCustomName()), player);
  156. LevelManager.grantPlayerExp(player, mobExp);
  157. }
  158. }
  159. }
  160.  
  161. if (item.getItemMeta().getLore().get(1) != null && item.getItemMeta().getLore().get(1).contains("Void Damage : ")) {
  162. double voiddamage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Void Damage", ":"));
  163. double newHealth = ((LivingEntity)event.getEntity()).getHealth() - voiddamage;
  164. if (newHealth < 0)
  165. newHealth = 0;
  166. player.sendMessage(ChatColor.LIGHT_PURPLE + "" + Math.round(voiddamage) + " Void Damage > " + ChatColor.GOLD + (event.getEntity().getName()) + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
  167. ((LivingEntity) event.getEntity()).setHealth(newHealth);
  168. if(newHealth == 0) {
  169. if (event.getDamager() instanceof Player)
  170. {
  171. int mobExp = LevelManager.getExpFromMob(ChatColor.stripColor(event.getEntity().getCustomName()), player);
  172. LevelManager.grantPlayerExp(player, mobExp);
  173. }
  174. }
  175. }
  176.  
  177. if (item.getItemMeta().getLore().get(1) != null && item.getItemMeta().getLore().get(1).contains("Life Steal : ")) {
  178. double lifesteal = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Life Steal", ":"));
  179. if (((LivingEntity)event.getDamager()).getHealth() != ((LivingEntity)event.getDamager()).getMaxHealth()) {
  180. double newHealth = ((LivingEntity)event.getDamager()).getHealth() + lifesteal;
  181. player.sendMessage(ChatColor.RED + "" + Math.round(lifesteal) + " Life Steal > " + ChatColor.GOLD + "You" + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + " HP]");
  182. ((LivingEntity) event.getDamager()).setHealth(newHealth);
  183.  
  184. } else {
  185.  
  186. }
  187.  
  188. }
  189. } else if (!isValidLevel(item, player)) {
  190. player.sendMessage(ChatColor.RED + "You are not a high enough level to use this weapon!");
  191. }
  192. String entityname = ChatColor.stripColor(event.getEntity().getCustomName());
  193.  
  194. if (entityname != null) {
  195. if (entityname.equals(("Kaskith The Executioner")) && event.getEntityType().equals(EntityType.ZOMBIE)) {
  196. if (((LivingEntity)event.getEntity()).getHealth() <= 500 && ((LivingEntity)event.getEntity()).getHealth() >= 400) {
  197. event.getEntity().setCustomName(ChatColor.RED + "" + ChatColor.BOLD + "KASKITH ENRAGED");
  198. LivingEntity zombie = (LivingEntity) event.getEntity();
  199. zombie.getAttribute(Attribute.GENERIC_MOVEMENT_SPEED).setBaseValue(0.38);
  200. onEnragedName(event.getEntity());
  201. player.sendMessage(ChatColor.GOLD + "" + entityname + " is now " + ChatColor.RED + ChatColor.BOLD + "ENRAGED");
  202. }
  203. } else if (entityname.equals(("Dark Voyager Acolyte")) && event.getEntityType().equals(EntityType.ZOMBIE)) {
  204. if (((LivingEntity)event.getEntity()).getHealth() <= 1500 && ((LivingEntity)event.getEntity()).getHealth() >= 100) {
  205. event.getEntity().setCustomName(ChatColor.RED + "" + ChatColor.BOLD + "DV ACOLYTE ENRAGED");
  206. LivingEntity zombie = (LivingEntity) event.getEntity();
  207. zombie.getAttribute(Attribute.GENERIC_MOVEMENT_SPEED).setBaseValue(0.38);
  208. onEnragedName(event.getEntity());
  209. player.sendMessage(ChatColor.GOLD + "" + entityname + " is now " + ChatColor.RED + ChatColor.BOLD + "ENRAGED");
  210. player.sendMessage(ChatColor.GOLD + "" + entityname + ChatColor.GOLD + "is harnessing energy to form a Tier 3 sword");
  211. }
  212. } else if (entityname.equals(("Asrelias Shotosuki")) && event.getEntityType().equals(EntityType.ZOMBIE)) {
  213. if (((LivingEntity)event.getEntity()).getHealth() <= 25000 && ((LivingEntity)event.getEntity()).getHealth() >= 100) {
  214. event.getEntity().setCustomName(ChatColor.RED + "" + ChatColor.BOLD + "ASRELIAS ENRAGED");
  215. LivingEntity zombie = (LivingEntity) event.getEntity();
  216. zombie.getAttribute(Attribute.GENERIC_MOVEMENT_SPEED).setBaseValue(0.38);
  217. onEnragedName(event.getEntity());
  218. player.sendMessage(ChatColor.GOLD + "" + entityname + " is now " + ChatColor.RED + ChatColor.BOLD + "ENRAGED");
  219. player.sendMessage(ChatColor.GOLD + "" + entityname + ChatColor.GOLD + "is harnessing energy to form a Tier 4 sword");
  220. }
  221. }
  222.  
  223. }
  224.  
  225. }
  226.  
  227.  
  228.  
  229. } else if (event.getDamager() instanceof Zombie) {
  230. if (event.getEntity() instanceof Player) {
  231. Player player2 = (Player) event.getEntity();
  232. double maxhealth1 = player2.getMaxHealth();
  233. double currenthealth1 = player2.getHealth();
  234. if (currenthealth1 > maxhealth1) {
  235. player2.setHealth(maxhealth1);
  236. }
  237. Player player = (Player) event.getEntity();
  238. Zombie zombie = (Zombie) event.getDamager();
  239.  
  240. for (ItemStack armorItem : player.getInventory().getArmorContents()) {
  241. if (armorItem != null && armorItem.getType() != Material.AIR && armorItem.hasItemMeta() && armorItem.getItemMeta().hasLore()) {
  242. armorItem.setDurability((short) 0);
  243. }
  244. }
  245.  
  246. ItemStack item = zombie.getEquipment().getItemInMainHand();
  247. event.setDamage(0);
  248. if (isValidWeapon(item)) {
  249. if (item.hasItemMeta() && item.getItemMeta().hasLore()) {
  250. double damage = Double.parseDouble(PlayerManager.getLoreCustomValue(item, "Damage", ":"));
  251. double newHealth = ((Player)event.getEntity()).getHealth() - damage;
  252. if (newHealth < 0)
  253. newHealth = 0;
  254.  
  255. //player.sendMessage(ChatColor.GREEN + "Damage : " + damage);
  256. //player.sendMessage(ChatColor.RED + "Remaining Health : " + newHealth);
  257. player.sendMessage(ChatColor.RED + "" + Math.round(damage) + " Damage > " + ChatColor.GOLD + "You" + ChatColor.LIGHT_PURPLE + " [" + Math.round(newHealth) + "/" + Math.round(player.getMaxHealth()) + " HP]");
  258.  
  259. ((Player) event.getEntity()).setHealth(newHealth);
  260. }
  261.  
  262. } else {
  263.  
  264. }
  265. }
  266. } else {
  267. return;
  268. }
  269. }
  270. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement