private void sendPayMessage(MobBountyReloadedPaymentEvent mbrpe, Player player, double amt) { if (mbrpe == null || player == null) return; String string = getPlugin().getSettingsManager().getL_MESSAGES().get("Awarded"); if (string == null) { return; } String name = mbrpe.getEntity().getType().getName(); if (name == null) { if (mbrpe.getEntity() instanceof Player) { name = "Player"; } else { name = ""; } } getPlugin() .getAPI() .sendMessage( player, getPlugin() .getAPI() .formatString( string, player.getName(), name, player.getWorld().getName(), amt, amt, amt, "", "", "mbr.user.collect", "", "", 0, "", "", MobBountyAPI.playerData.get(player.getName()).killStreak)); }
@EventHandler(priority = EventPriority.LOW) public void onEntityDeath(EntityDeathEvent event) { if (event.getEntity() == event.getEntity().getKiller()) return; Player player = getLastDamager(event.getEntity()); EntityType creature = event.getEntity().getType(); if (player == null) return; if (player.getGameMode() == GameMode.CREATIVE && !getPlugin().getSettingsManager().isG_ALLOW_CREATIVE()) { return; } if (!getPlugin().getPermissionManager().hasPermission(player, "mbr.user.collect")) { return; } double amount = getPlugin().getAPI().getEntityValue(event.getEntity()); if (amount == 0.0) { return; } if (amount < 0.0 && getPlugin().getPermissionManager().hasPermission(player, "mbr.user.finebypass")) { return; } MobBountyReloadedPaymentEvent mbrpe = new MobBountyReloadedPaymentEvent(player.getName(), amount, event.getEntity()); getPlugin().getServer().getPluginManager().callEvent(mbrpe); MobBountyReloadedKillstreakEvent mbrke = null; List<String> creatureNames = getPlugin().getSettingsManager().getKS_ALLOWED_CREATURES(); if (creatureNames == null) { creatureNames = new ArrayList<String>(); } if (creatureNames.contains(creature.getName())) { mbrke = new MobBountyReloadedKillstreakEvent(player.getName(), event.getEntity()); getPlugin().getServer().getPluginManager().callEvent(mbrke); } if (!mbrpe.isCancelled()) { Player playerEvent = Bukkit.getServer().getPlayer(mbrpe.getPlayerName()); if (playerEvent != null) { MobBountyPlayerKillData playerKillData = MobBountyAPI.playerData.get(playerEvent.getName()); if (playerKillData == null) { playerKillData = new MobBountyPlayerKillData(); MobBountyAPI.playerData.put(playerEvent.getName(), playerKillData); } double amountEvent = mbrpe.getAmount(); if (amountEvent != 0.0) { double mult = getPlugin().getAPI().getMult(playerEvent); double amt = mult * amountEvent; getPlugin().getAPI().makeTransaction(mbrpe.getPlayerName(), amt); boolean bln = getPlugin().getSettingsManager().isG_KILLCACHE_USE(); if (bln) { handleKillCache(playerEvent, playerKillData, amt); } else { sendNonKillCache(mbrpe, playerEvent, amountEvent, amt); } } } } if (mbrke != null && !mbrke.isCancelled()) { MobBountyPlayerKillData playerData = MobBountyAPI.playerData.get(mbrke.getPlayerName()); if (playerData == null) { playerData = new MobBountyPlayerKillData(); MobBountyAPI.playerData.put(mbrke.getPlayerName(), playerData); } playerData.killStreak++; Double confBonus = getPlugin() .getSettingsManager() .getKS_KILLBONUSES() .get(String.valueOf(playerData.killStreak)); if (confBonus == null || confBonus == 0.0) { return; } getPlugin().getEconManager().payAccount(mbrke.getPlayerName(), confBonus); Player playerEvent = getPlugin().getServer().getPlayer(mbrke.getPlayerName()); if (playerEvent != null) { String string = getPlugin().getSettingsManager().getL_MESSAGES().get("Killstreak"); if (string != null) { getPlugin() .getAPI() .sendMessage( playerEvent, getPlugin() .getAPI() .formatString( string, playerEvent.getName(), mbrke.getEntity().getType().getName(), playerEvent.getWorld().getName(), confBonus, confBonus, confBonus, "", "", "", "", "", 0, "", "", playerData.killStreak)); } MobBountyAPI.playerData.put(playerEvent.getName(), playerData); } } }