@EventHandler public void playerKillsPlayer(EntityDeathEvent e) { Entity dead = e.getEntity(); Entity killer = e.getEntity().getKiller(); if(killer instanceof Player && dead instanceof Player){ String killerUUID = ((Player) killer).getUniqueId().toString(); String deadUUID = ((Player) dead).getUniqueId().toString(); int kills = kdc.getConfig().getInt("playerkills." + killerUUID); int deaths = kdc.getConfig().getInt("playerdeaths." + deadUUID); kdc.getConfig().set("playerkills." + killerUUID + , kills += 1); kdc.getConfig().set("playerdeaths." + deadUUID, deaths += 1); killer.sendMessage("You now have " + kills + " kills!"); dead.sendMessage("You now have " + deaths + " deaths!"); } }
/** * Called when any entity dies. */ @EventHandler(priority = EventPriority.LOW) public void whenSomethingDies(EntityDeathEvent event) { if (event.getEntity().getType() != EntityType.PLAYER && needsDropsClear.containsKey(event.getEntity().getUniqueId())) { event.getDrops().clear(); event.setDroppedExp(0); } targetingHelper.removeTarget(event.getEntity().getUniqueId()); }
@EventHandler(ignoreCancelled = true) public void onEntityDeath(EntityDeathEvent event) { if (event.getDroppedExp() > 0) { if (Events.fireAndTestCancel(new SpawnEntityEvent(event, create(event.getEntity()), event.getEntity().getLocation(), EntityType.EXPERIENCE_ORB))) { event.setDroppedExp(0); } } }
player.incrementStatistic(Statistic.DEATHS); } else { EntityDeathEvent deathEvent = new EntityDeathEvent(this, new ArrayList<>()); if (world.getGameRuleMap().getBoolean("doMobLoot")) { LootData data = LootingManager.generate(this); deathEvent.getDrops().addAll(data.getItems()); for (ItemStack item : deathEvent.getDrops()) { world.dropItemNaturally(getLocation(), item);
private void spawnMoreExp(EntityDeathEvent e, double multiplier) { double newExp = e.getDroppedExp() * multiplier; e.setDroppedExp((int) newExp); } }
@EventHandler public void onEntityDeath(EntityDeathEvent e) { String type = e.getEntity().getType().toString(); if (PowerTranslocator.translocatorPlayerMap.getIfPresent(e.getEntity().getUniqueId()) != null) { e.getDrops().clear(); } Random random = new Random(); if (drops.containsKey(type)) { Set<Integer> items = drops.get(type); Iterator<Integer> it = items.iterator(); while (it.hasNext()) { int id = it.next(); RPGItem item = ItemManager.getItem(id).orElse(null); if (item == null) { it.remove(); continue; } double chance = item.getDropChances().get(type); if (random.nextDouble() < chance / 100d) { e.getDrops().add(item.toItemStack()); } } } }
@EventHandler public void onEntityDeath(EntityDeathEvent event) { if (event.getEntityType() == EntityType.ZOMBIE) { event.getDrops().clear(); event.setDroppedExp(0); final Hologram hologram = HologramsAPI.createHologram(this, event.getEntity().getLocation().add(0.0, 0.9, 0.0)); hologram.appendTextLine(ChatColor.AQUA + "" + ChatColor.BOLD + "Speed PowerUp"); ItemLine icon = hologram.appendItemLine(new ItemStack(Material.SUGAR));
@EventHandler void onEntityDeath(EntityDeathEvent e) throws IOException, ParseException, org.json.simple.parser.ParseException, SQLException { final LivingEntity entity = e.getEntity(); if (entity instanceof Monster && e.getEntity().getLastDamageCause() instanceof EntityDamageByEntityEvent) { final EntityDamageByEntityEvent damage = (EntityDamageByEntityEvent) e.getEntity().getLastDamageCause(); Player player=null; if(damage.getDamager() instanceof Player) player=(Player) damage.getDamager(); e.setDroppedExp(0);
@Override public void run() { List<ItemStack> items = new ArrayList<ItemStack>(); for (Entity n: e.getEntity().getNearbyEntities(0.5D, 0.5D, 0.5D)) { if (n instanceof Item && !n.hasMetadata("no_pickup")) { items.add(((Item) n).getItemStack()); switch (e.getEntityType()) { case BLAZE: { items.add(new ItemStack(Material.BLAZE_ROD, 1 + CSCoreLib.randomizer().nextInt(2))); ExperienceOrb exp = (ExperienceOrb) e.getEntity().getWorld().spawnEntity(e.getEntity().getLocation(), EntityType.EXPERIENCE_ORB); exp.setExperience(1 + CSCoreLib.randomizer().nextInt(6));
public List<ItemStack> getDrops() { return event.getDrops(); }
@Override public void setDroppedExp(int exp) { e.setDroppedExp(exp); } }
@Override public int getDroppedExp() { return e.getDroppedExp(); }
@EventHandler public void onEntityDeath(EntityDeathEvent event) { int i = 0; while (event.getEntity().hasMetadata("betonquest-drops-" + i)) { try { List<MetadataValue> metadata = event.getEntity().getMetadata("betonquest-drops-" + i); for (MetadataValue m : metadata) { String item = m.asString(); int index = item.indexOf(':'); event.getDrops().add(new QuestItem(new ItemID(null, item.substring(0, index))) .generate(Integer.valueOf(item.substring(index + 1)))); } } catch (Exception e) { Debug.error("Error when dropping custom item from entity: " + e.getMessage()); } i++; } }
@Override public void clearDrops() { e.getDrops().clear(); }
public void setDroppedExp(int exp) { event.setDroppedExp(exp); }
public int getDroppedExp() { return event.getDroppedExp(); }
/** * Clean up the map when entity dies (does not handle entity removal) */ @EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void onMobDeath(final EntityDeathEvent e) { mobSpawnTracker.remove(e.getEntity()); }
/** * Called when the NPC dies. */ @EventHandler(priority = EventPriority.MONITOR) public void whenWeDie(EntityDeathEvent event) { if (CitizensAPI.getNPCRegistry().isNPC(event.getEntity()) && CitizensAPI.getNPCRegistry().getNPC(event.getEntity()).getUniqueId().equals(npc.getUniqueId())) { if (SentinelPlugin.debugMe) { debug("Died! Death event received."); } event.getDrops().clear(); if (event instanceof PlayerDeathEvent && !SentinelPlugin.instance.deathMessages) { ((PlayerDeathEvent) event).setDeathMessage(""); } if (!SentinelPlugin.instance.workaroundDrops) { event.getDrops().addAll(drops); } event.setDroppedExp(0); generalDeathHandler(event.getEntity()); } }
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true) public void onEntityDeath(final EntityDeathEvent event) { if (TempArmor.hasTempArmor(event.getEntity())) { final TempArmor armor = TempArmor.getVisibleTempArmor(event.getEntity()); final List<ItemStack> newDrops = armor.filterArmor(event.getDrops()); event.getDrops().clear(); event.getDrops().addAll(newDrops); if (MetalClips.isControlled(event.getEntity())) { event.getDrops().add(new ItemStack(Material.IRON_INGOT, MetalClips.getTargetToAbility().get(event.getEntity()).getMetalClipsCount())); for (final TempArmor tarmor : TempArmor.getTempArmorList(event.getEntity())) { tarmor.revert(); if (BENDING_ENTITY_DEATH.containsKey(event.getEntity())) { final CoreAbility coreAbility = (CoreAbility) BENDING_ENTITY_DEATH.get(event.getEntity()); for (final CoreAbility fireCombo : cookingFireCombos) { if (coreAbility.getName().equalsIgnoreCase(fireCombo.getName())) { final List<ItemStack> drops = event.getDrops(); final List<ItemStack> newDrops = new ArrayList<>(); for (int i = 0; i < drops.size(); i++) { event.getDrops().clear(); event.getDrops().addAll(newDrops);
@Override public List<MCItemStack> getDrops() { List<ItemStack> islist = e.getDrops(); List<MCItemStack> drops = new ArrayList<>(); for(ItemStack is : islist) { drops.add(new BukkitMCItemStack(is)); } return drops; }