Code:java package com.Darko111.YetiWarn; import java.util.ArrayList;import java.util.HashMap; 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.plugin.java.JavaPlugin; public class MainYetiWarn extends JavaPlugin{ public void onEnable(){ } public void onDisable(){ } HashMap<String,Integer> warnLvl = new HashMap<String,Integer>(); public boolean onCommand(CommandSender sender,Command cmd,String cmdLabel,String[] args){ if(cmdLabel.equalsIgnoreCase("warn")){ if(sender.hasPermission("yetiwarn.use") || sender.isOp()){ if(args.length == 0){ sender.sendMessage(""+ChatColor.AQUA+ChatColor.BOLD+"[Warn] "+ChatColor.RED+"You have to define a player!"); } if(args.length > 1){ sender.sendMessage(""+ChatColor.AQUA+ChatColor.BOLD+"[Warn] "+ChatColor.RED+"Incorrect Usage! /warn <player>"); } for (Player p : Bukkit.getServer().getOnlinePlayers()){ warnLvl.put(p.getName(),0); } if(args.length == 1){ Player t = Bukkit.getServer().getPlayer(args[0]); if(t !=null){ if(warnLvl.get(t.getName()).equals(0)){ t.sendMessage(""+ChatColor.AQUA+ChatColor.BOLD+"[Warn "+ChatColor.GOLD+"Level 1"+ChatColor.AQUA+ChatColor.BOLD+"] "+ChatColor.RED+"You have just been warned by "+sender.getName()+". Stop this behaviour immediatly or you'll be punished!"); warnLvl.put(t.getName(),1); } else if(warnLvl.get(t.getName()).equals(1)) t.kickPlayer(""+ChatColor.AQUA+ChatColor.BOLD+"[Warn "+ChatColor.GOLD+"Level 2"+ChatColor.AQUA+ChatColor.BOLD+"] "+ChatColor.RED+"You have been warned! "+ChatColor.GRAY+"Kicked by "+ChatColor.RED+sender.getName()+ChatColor.GRAY+"!"); warnLvl.put(t.getName(),0); } } } } return true; }} The HashMap just somehow doesn't get the 0 and 1 level... whenever I do /warn it says the warn message no matter what... never kicks me. Thank you for any help!
Could Code:java for (Player p : Bukkit.getServer().getOnlinePlayers()){ warnLvl.put(p.getName(),0);} be the problem? Every time the command executes, that is run, effectively resetting all the values in the hashmap to 0.