Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.ExtremeMC.KillstreakBroadcast;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.entity.PlayerDeathEvent;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.event.player.PlayerQuitEvent;
- import org.bukkit.plugin.java.JavaPlugin;
- public class KillstreakBroadcast extends JavaPlugin implements Listener{
- public Map<String, Integer> killstreaks = new HashMap<String, Integer>();
- public void onDisable() {
- killstreaks.clear();
- getLogger().info("KillstreakBroadcast has been disabled!");
- }
- public void onEnable() {
- this.saveDefaultConfig();
- getServer().getPluginManager().registerEvents(this, this);
- getLogger().info("KillstreakBroadcast has been enabled!");
- for (Player player : Bukkit.getOnlinePlayers()) {
- killstreaks.put(player.getDisplayName(), 0);
- }
- }
- @EventHandler
- public void onPlayerJoin(PlayerJoinEvent event) {
- killstreaks.put(event.getPlayer().getDisplayName(), 0);
- }
- @EventHandler
- public void onPlayerLeave(PlayerQuitEvent event) {
- killstreaks.remove(event.getPlayer().getDisplayName());
- }
- @EventHandler
- public void onPlayerKilled(PlayerDeathEvent event) {
- String prefix = getConfig().getString("prefix") + " ";
- prefix = ChatColor.translateAlternateColorCodes('&', prefix);
- @SuppressWarnings("unchecked")
- List<Integer> ks = (List<Integer>) getConfig().getList("killstreaks");
- String message;
- String killstreakstring;
- String killer = event.getEntity().getKiller().getDisplayName();
- String killed = event.getEntity().getDisplayName();
- Player killedplayer = event.getEntity();
- Player killerplayer = event.getEntity().getKiller();
- boolean usexpbar = getConfig().getBoolean("usexpbar");
- if (killerplayer.hasPermission("killstreak.use")) {
- int oldkillstreak = killstreaks.get(killed);
- killstreaks.put(killed, 0);
- if (ks.contains(oldkillstreak)){
- killstreakstring = String.valueOf(oldkillstreak);
- message = prefix + getConfig().getString("messagekillstreakbroken");
- message = ChatColor.translateAlternateColorCodes('&', message);
- message = message.replaceAll("-playerbreaker-", killer);
- message = message.replaceAll("-playerbroken-", killed);
- message = message.replaceAll("-killstreak-", killstreakstring);
- }
- int current = killstreaks.get(killer);
- current ++;
- killstreaks.put(killer, current);
- if (usexpbar) {
- killedplayer.setExp(0);
- killerplayer.setExp(0);
- killerplayer.setLevel(current);
- }
- if (ks.contains(current)) {
- killstreakstring = String.valueOf(current);
- message = ChatColor.GOLD + prefix + getConfig().getString("messagenewkillstreak");
- message = ChatColor.translateAlternateColorCodes('&', message);
- message = message.replaceAll("-player-", killer);
- message = message.replaceAll("-killstreak-", killstreakstring);
- Bukkit.broadcastMessage(message);
- }
- }
- }
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
- String prefix = getConfig().getString("prefix");
- prefix = ChatColor.translateAlternateColorCodes('&', prefix);
- if (cmd.getName().equalsIgnoreCase("kb")) {
- if (args.length == 0) {
- sender.sendMessage(prefix + " Not enough arguments!");
- return true;
- } else if (args.length > 1) {
- sender.sendMessage(prefix + " Too many arguments!");
- return true;
- } else {
- if (args[0].equalsIgnoreCase("reset")) {
- if (sender.hasPermission("killstreak.reset") || sender.hasPermission("killstreak.*")) {
- Bukkit.broadcastMessage(prefix + " Killstreaks have been reset!");
- killstreaks.clear();
- for (Player player : Bukkit.getOnlinePlayers()) {
- killstreaks.put(player.getDisplayName(), 0);
- }
- return true;
- } else {
- sender.sendMessage(prefix + " You dont have permission to do that!");
- return true;
- }
- } else if (args[0].equalsIgnoreCase("reload")) {
- if (sender.hasPermission("killstreak.reload") || sender.hasPermission("killstreak.*")) {
- getLogger().info("Plugin reload initiated.");
- onDisable();
- this.reloadConfig();
- onEnable();
- Bukkit.broadcastMessage(prefix + " Killstreaks have been reset!");
- return true;
- } else {
- sender.sendMessage(prefix + " You dont have permission to do that!");
- return true;
- }
- } else {
- sender.sendMessage(prefix + " Unknown command");
- return true;
- }
- }
- }
- return false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement