Merge pull request #56 from NuclearW/pullme

Console onCommand support for a and p/Fix issue #55/Removed isOp
This commit is contained in:
nossr50 2011-07-20 00:50:07 -07:00
commit 073028697f
2 changed files with 151 additions and 89 deletions

View File

@ -178,8 +178,12 @@ public class mcMMO extends JavaPlugin
} }
public boolean onCommand( CommandSender sender, Command command, String label, String[] args ) { public boolean onCommand( CommandSender sender, Command command, String label, String[] args ) {
Player player = (Player) sender; Player player = null;
PlayerProfile PP = Users.getProfile(player); PlayerProfile PP = null;
if(!isConsole(sender)) {
player = (Player) sender;
PP = Users.getProfile(player);
}
String[] split = new String[args.length + 1]; String[] split = new String[args.length + 1];
split[0] = label; split[0] = label;
@ -188,7 +192,7 @@ public class mcMMO extends JavaPlugin
} }
//Check if the command is an MMO related help command //Check if the command is an MMO related help command
if(split[0].equalsIgnoreCase("taming") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillTaming").toLowerCase())){ if(label.equalsIgnoreCase("taming") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillTaming").toLowerCase())){
float skillvalue = (float)PP.getSkillLevel(SkillType.TAMING); float skillvalue = (float)PP.getSkillLevel(SkillType.TAMING);
String percentage = String.valueOf((skillvalue / 1000) * 100); String percentage = String.valueOf((skillvalue / 1000) * 100);
@ -222,7 +226,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("m.AbilityBonusTemplate", new Object[] {mcLocale.getString("m.AbilBonusTaming4_0"), mcLocale.getString("m.AbilBonusTaming4_1")})); player.sendMessage(mcLocale.getString("m.AbilityBonusTemplate", new Object[] {mcLocale.getString("m.AbilBonusTaming4_0"), mcLocale.getString("m.AbilBonusTaming4_1")}));
player.sendMessage(mcLocale.getString("m.TamingGoreChance", new Object[] {percentage})); player.sendMessage(mcLocale.getString("m.TamingGoreChance", new Object[] {percentage}));
} }
if(split[0].equalsIgnoreCase("woodcutting") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillWoodCutting").toLowerCase())){ else if(label.equalsIgnoreCase("woodcutting") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillWoodCutting").toLowerCase())){
float skillvalue = (float)PP.getSkillLevel(SkillType.WOODCUTTING); float skillvalue = (float)PP.getSkillLevel(SkillType.WOODCUTTING);
int ticks = 2; int ticks = 2;
int x = PP.getSkillLevel(SkillType.WOODCUTTING); int x = PP.getSkillLevel(SkillType.WOODCUTTING);
@ -247,7 +251,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("m.WoodCuttingDoubleDropChance", new Object[] {percentage})); player.sendMessage(mcLocale.getString("m.WoodCuttingDoubleDropChance", new Object[] {percentage}));
player.sendMessage(mcLocale.getString("m.WoodCuttingTreeFellerLength", new Object[] {ticks})); player.sendMessage(mcLocale.getString("m.WoodCuttingTreeFellerLength", new Object[] {ticks}));
} }
if(split[0].equalsIgnoreCase("archery") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillArchery").toLowerCase())){ else if(label.equalsIgnoreCase("archery") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillArchery").toLowerCase())){
Integer rank = 0; Integer rank = 0;
if(PP.getSkillLevel(SkillType.ARCHERY) >= 50) if(PP.getSkillLevel(SkillType.ARCHERY) >= 50)
rank++; rank++;
@ -295,7 +299,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("m.ArcheryIgnitionLength", new Object[] {(ignition / 20)})); player.sendMessage(mcLocale.getString("m.ArcheryIgnitionLength", new Object[] {(ignition / 20)}));
player.sendMessage(mcLocale.getString("m.ArcheryDamagePlus", new Object[] {rank})); player.sendMessage(mcLocale.getString("m.ArcheryDamagePlus", new Object[] {rank}));
} }
if(split[0].equalsIgnoreCase("axes") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillAxes"))){ else if(label.equalsIgnoreCase("axes") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillAxes"))){
String percentage; String percentage;
float skillvalue = (float)PP.getSkillLevel(SkillType.AXES); float skillvalue = (float)PP.getSkillLevel(SkillType.AXES);
if(PP.getSkillLevel(SkillType.AXES) < 750){ if(PP.getSkillLevel(SkillType.AXES) < 750){
@ -327,7 +331,7 @@ public class mcMMO extends JavaPlugin
} }
player.sendMessage(mcLocale.getString("m.AxesSkullLength", new Object[] {ticks})); player.sendMessage(mcLocale.getString("m.AxesSkullLength", new Object[] {ticks}));
} }
if(split[0].equalsIgnoreCase("swords") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillSwords").toLowerCase())){ else if(label.equalsIgnoreCase("swords") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillSwords").toLowerCase())){
int bleedrank = 2; int bleedrank = 2;
String percentage, parrypercentage = null, counterattackpercentage; String percentage, parrypercentage = null, counterattackpercentage;
float skillvalue = (float)PP.getSkillLevel(SkillType.SWORDS); float skillvalue = (float)PP.getSkillLevel(SkillType.SWORDS);
@ -377,7 +381,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("m.SwordsSSLength", new Object[] {ticks})); player.sendMessage(mcLocale.getString("m.SwordsSSLength", new Object[] {ticks}));
} }
if(split[0].equalsIgnoreCase("acrobatics") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillAcrobatics").toLowerCase())){ else if(label.equalsIgnoreCase("acrobatics") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillAcrobatics").toLowerCase())){
String dodgepercentage; String dodgepercentage;
float skillvalue = (float)PP.getSkillLevel(SkillType.ACROBATICS); float skillvalue = (float)PP.getSkillLevel(SkillType.ACROBATICS);
String percentage = String.valueOf((skillvalue / 1000) * 100); String percentage = String.valueOf((skillvalue / 1000) * 100);
@ -400,7 +404,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("m.AcrobaticsGracefulRollChance", new Object[] {gracepercentage})); player.sendMessage(mcLocale.getString("m.AcrobaticsGracefulRollChance", new Object[] {gracepercentage}));
player.sendMessage(mcLocale.getString("m.AcrobaticsDodgeChance", new Object[] {dodgepercentage})); player.sendMessage(mcLocale.getString("m.AcrobaticsDodgeChance", new Object[] {dodgepercentage}));
} }
if(split[0].equalsIgnoreCase("mining") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillMining"))){ else if(label.equalsIgnoreCase("mining") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillMining"))){
float skillvalue = (float)PP.getSkillLevel(SkillType.MINING); float skillvalue = (float)PP.getSkillLevel(SkillType.MINING);
String percentage = String.valueOf((skillvalue / 1000) * 100); String percentage = String.valueOf((skillvalue / 1000) * 100);
int ticks = 2; int ticks = 2;
@ -420,7 +424,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("m.MiningDoubleDropChance", new Object[] {percentage})); player.sendMessage(mcLocale.getString("m.MiningDoubleDropChance", new Object[] {percentage}));
player.sendMessage(mcLocale.getString("m.MiningSuperBreakerLength", new Object[] {ticks})); player.sendMessage(mcLocale.getString("m.MiningSuperBreakerLength", new Object[] {ticks}));
} }
if(split[0].equalsIgnoreCase("repair") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillRepair").toLowerCase())){ else if(label.equalsIgnoreCase("repair") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillRepair").toLowerCase())){
float skillvalue = (float)PP.getSkillXpLevel(SkillType.REPAIR); float skillvalue = (float)PP.getSkillXpLevel(SkillType.REPAIR);
String percentage = String.valueOf((skillvalue / 1000) * 100); String percentage = String.valueOf((skillvalue / 1000) * 100);
String repairmastery = String.valueOf((skillvalue / 500) * 100); String repairmastery = String.valueOf((skillvalue / 500) * 100);
@ -437,7 +441,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("m.RepairRepairMastery", new Object[] {repairmastery})); player.sendMessage(mcLocale.getString("m.RepairRepairMastery", new Object[] {repairmastery}));
player.sendMessage(mcLocale.getString("m.RepairSuperRepairChance", new Object[] {percentage})); player.sendMessage(mcLocale.getString("m.RepairSuperRepairChance", new Object[] {percentage}));
} }
if(split[0].equalsIgnoreCase("unarmed")){ else if(label.equalsIgnoreCase("unarmed")){
String percentage, arrowpercentage; String percentage, arrowpercentage;
float skillvalue = (float)PP.getSkillLevel(SkillType.UNARMED); float skillvalue = (float)PP.getSkillLevel(SkillType.UNARMED);
@ -484,7 +488,7 @@ public class mcMMO extends JavaPlugin
} }
player.sendMessage(mcLocale.getString("m.UnarmedBerserkLength", new Object[] {ticks})); player.sendMessage(mcLocale.getString("m.UnarmedBerserkLength", new Object[] {ticks}));
} }
if(split[0].equalsIgnoreCase("herbalism") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillHerbalism").toLowerCase())){ else if(label.equalsIgnoreCase("herbalism") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillHerbalism").toLowerCase())){
int rank = 0; int rank = 0;
if(PP.getSkillLevel(SkillType.HERBALISM) >= 50) if(PP.getSkillLevel(SkillType.HERBALISM) >= 50)
rank++; rank++;
@ -538,7 +542,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("m.HerbalismFoodPlus", new Object[] {rank})); player.sendMessage(mcLocale.getString("m.HerbalismFoodPlus", new Object[] {rank}));
} }
if(split[0].equalsIgnoreCase("excavation") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillExcavation").toLowerCase())) else if(label.equalsIgnoreCase("excavation") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillExcavation").toLowerCase()))
{ {
int ticks = 2; int ticks = 2;
int x = PP.getSkillLevel(SkillType.EXCAVATION); int x = PP.getSkillLevel(SkillType.EXCAVATION);
@ -557,7 +561,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("m.ExcavationGreenTerraLength", new Object[] {ticks})); player.sendMessage(mcLocale.getString("m.ExcavationGreenTerraLength", new Object[] {ticks}));
} }
if(split[0].equalsIgnoreCase("sorcery") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillSorcery").toLowerCase())) else if(label.equalsIgnoreCase("sorcery") || split[0].toLowerCase().equalsIgnoreCase(mcLocale.getString("m.SkillSorcery").toLowerCase()))
{ {
/* /*
player.sendMessage(mcLocale.getString("m.SkillHeader", new Object[] {mcLocale.getString("m.SkillExcavation")})); player.sendMessage(mcLocale.getString("m.SkillHeader", new Object[] {mcLocale.getString("m.SkillExcavation")}));
@ -570,7 +574,7 @@ public class mcMMO extends JavaPlugin
*/ */
} }
if(LoadProperties.mcmmoEnable && split[0].equalsIgnoreCase(LoadProperties.mcmmo)){ else if(LoadProperties.mcmmoEnable && label.equalsIgnoreCase(LoadProperties.mcmmo)){
player.sendMessage(ChatColor.RED+"-----[]"+ChatColor.GREEN+"mMO"+ChatColor.RED+"[]-----"); player.sendMessage(ChatColor.RED+"-----[]"+ChatColor.GREEN+"mMO"+ChatColor.RED+"[]-----");
player.sendMessage(ChatColor.YELLOW+"mcMMO is an RPG server mod for minecraft."); player.sendMessage(ChatColor.YELLOW+"mcMMO is an RPG server mod for minecraft.");
player.sendMessage(ChatColor.YELLOW+"There are many skills added by mcMMO to minecraft."); player.sendMessage(ChatColor.YELLOW+"There are many skills added by mcMMO to minecraft.");
@ -591,7 +595,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(ChatColor.GREEN+"Find out mcMMO commands with "+ChatColor.DARK_AQUA+LoadProperties.mcc); player.sendMessage(ChatColor.GREEN+"Find out mcMMO commands with "+ChatColor.DARK_AQUA+LoadProperties.mcc);
player.sendMessage(ChatColor.GREEN+"You can donate via paypal to"+ChatColor.DARK_RED+" nossr50@gmail.com"); player.sendMessage(ChatColor.GREEN+"You can donate via paypal to"+ChatColor.DARK_RED+" nossr50@gmail.com");
} }
if(LoadProperties.mccEnable && split[0].equalsIgnoreCase(LoadProperties.mcc)){ else if(LoadProperties.mccEnable && label.equalsIgnoreCase(LoadProperties.mcc)){
player.sendMessage(ChatColor.RED+"---[]"+ChatColor.YELLOW+"mcMMO Commands"+ChatColor.RED+"[]---"); player.sendMessage(ChatColor.RED+"---[]"+ChatColor.YELLOW+"mcMMO Commands"+ChatColor.RED+"[]---");
if(mcPermissions.getInstance().party(player)){ if(mcPermissions.getInstance().party(player)){
player.sendMessage(mcLocale.getString("m.mccPartyCommands")); player.sendMessage(mcLocale.getString("m.mccPartyCommands"));
@ -627,7 +631,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("m.mccSkillInfo")); player.sendMessage(mcLocale.getString("m.mccSkillInfo"));
player.sendMessage(LoadProperties.mcmmo+" "+mcLocale.getString("m.mccModDescription")); player.sendMessage(LoadProperties.mcmmo+" "+mcLocale.getString("m.mccModDescription"));
} }
if(LoadProperties.mcabilityEnable && mcPermissions.permissionsEnabled && split[0].equalsIgnoreCase(LoadProperties.mcability)){ else if(LoadProperties.mcabilityEnable && mcPermissions.permissionsEnabled && label.equalsIgnoreCase(LoadProperties.mcability)){
if(PP.getAbilityUse()){ if(PP.getAbilityUse()){
player.sendMessage(mcLocale.getString("mcPlayerListener.AbilitiesOff")); player.sendMessage(mcLocale.getString("mcPlayerListener.AbilitiesOff"));
PP.toggleAbilityUse(); PP.toggleAbilityUse();
@ -640,7 +644,7 @@ public class mcMMO extends JavaPlugin
/* /*
* FFS -> MySQL * FFS -> MySQL
*/ */
if(player.isOp() && split[0].equalsIgnoreCase("mmoupdate")) else if(label.equalsIgnoreCase("mmoupdate"))
{ {
if(!mcPermissions.getInstance().admin(player)) if(!mcPermissions.getInstance().admin(player))
{ {
@ -660,7 +664,7 @@ public class mcMMO extends JavaPlugin
/* /*
* LEADER BOARD COMMAND * LEADER BOARD COMMAND
*/ */
if(LoadProperties.mctopEnable && split[0].equalsIgnoreCase(LoadProperties.mctop)){ else if(LoadProperties.mctopEnable && label.equalsIgnoreCase(LoadProperties.mctop)){
if(LoadProperties.useMySQL == false){ if(LoadProperties.useMySQL == false){
/* /*
@ -833,7 +837,7 @@ public class mcMMO extends JavaPlugin
} }
} }
if(LoadProperties.mcrefreshEnable && split[0].equalsIgnoreCase(LoadProperties.mcrefresh)){ else if(LoadProperties.mcrefreshEnable && label.equalsIgnoreCase(LoadProperties.mcrefresh)){
if(!mcPermissions.getInstance().mcrefresh(player)){ if(!mcPermissions.getInstance().mcrefresh(player)){
player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission")); player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission"));
@ -890,7 +894,7 @@ public class mcMMO extends JavaPlugin
/* /*
* GODMODE COMMAND * GODMODE COMMAND
*/ */
if(LoadProperties.mcgodEnable && split[0].equalsIgnoreCase(LoadProperties.mcgod)) else if(LoadProperties.mcgodEnable && label.equalsIgnoreCase(LoadProperties.mcgod))
{ {
if(mcPermissions.permissionsEnabled) if(mcPermissions.permissionsEnabled)
{ {
@ -908,20 +912,9 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("mcPlayerListener.GodModeEnabled")); player.sendMessage(mcLocale.getString("mcPlayerListener.GodModeEnabled"));
PP.toggleGodMode(); PP.toggleGodMode();
} }
} else if (player.isOp())
{
if(PP.getGodMode())
{
player.sendMessage(mcLocale.getString("mcPlayerListener.GodModeDisabled"));
PP.toggleGodMode();
} else
{
player.sendMessage(mcLocale.getString("mcPlayerListener.GodModeEnabled"));
PP.toggleGodMode();
}
} }
} }
if(LoadProperties.clearmyspawnEnable && LoadProperties.enableMySpawn && mcPermissions.getInstance().mySpawn(player) && split[0].equalsIgnoreCase(LoadProperties.clearmyspawn)) else if(LoadProperties.clearmyspawnEnable && LoadProperties.enableMySpawn && label.equalsIgnoreCase(LoadProperties.clearmyspawn) && mcPermissions.getInstance().mySpawn(player))
{ {
double x = this.getServer().getWorlds().get(0).getSpawnLocation().getX(); double x = this.getServer().getWorlds().get(0).getSpawnLocation().getX();
double y = this.getServer().getWorlds().get(0).getSpawnLocation().getY(); double y = this.getServer().getWorlds().get(0).getSpawnLocation().getY();
@ -930,7 +923,7 @@ public class mcMMO extends JavaPlugin
PP.setMySpawn(x, y, z, worldname); PP.setMySpawn(x, y, z, worldname);
player.sendMessage(mcLocale.getString("mcPlayerListener.MyspawnCleared")); player.sendMessage(mcLocale.getString("mcPlayerListener.MyspawnCleared"));
} }
if(LoadProperties.mmoeditEnable && mcPermissions.permissionsEnabled && split[0].equalsIgnoreCase(""+LoadProperties.mmoedit)) else if(LoadProperties.mmoeditEnable && mcPermissions.permissionsEnabled && label.equalsIgnoreCase(""+LoadProperties.mmoedit))
{ {
if(!mcPermissions.getInstance().mmoedit(player)) if(!mcPermissions.getInstance().mmoedit(player))
@ -968,7 +961,7 @@ public class mcMMO extends JavaPlugin
/* /*
* ADD EXPERIENCE COMMAND * ADD EXPERIENCE COMMAND
*/ */
if(LoadProperties.addxpEnable && mcPermissions.permissionsEnabled && split[0].equalsIgnoreCase(LoadProperties.addxp)){ else if(LoadProperties.addxpEnable && mcPermissions.permissionsEnabled && label.equalsIgnoreCase(LoadProperties.addxp)){
if(!mcPermissions.getInstance().mmoedit(player)){ if(!mcPermissions.getInstance().mmoedit(player)){
player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission")); player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission"));
@ -997,7 +990,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(ChatColor.RED+"Usage is /"+LoadProperties.addxp+" playername skillname xp"); player.sendMessage(ChatColor.RED+"Usage is /"+LoadProperties.addxp+" playername skillname xp");
} }
} }
if(LoadProperties.ptpEnable && PP != null && PP.inParty() && split[0].equalsIgnoreCase(LoadProperties.ptp)){ else if(LoadProperties.ptpEnable && label.equalsIgnoreCase(LoadProperties.ptp) && PP != null && PP.inParty()){
if(!mcPermissions.getInstance().partyTeleport(player)){ if(!mcPermissions.getInstance().partyTeleport(player)){
player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission")); player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission"));
@ -1023,7 +1016,7 @@ public class mcMMO extends JavaPlugin
/* /*
* WHOIS COMMAND * WHOIS COMMAND
*/ */
if(LoadProperties.whoisEnable && (player.isOp() || mcPermissions.getInstance().whois(player)) && split[0].equalsIgnoreCase(LoadProperties.whois)){ else if(LoadProperties.whoisEnable && label.equalsIgnoreCase(LoadProperties.whois) && mcPermissions.getInstance().whois(player)){
if(split.length < 2){ if(split.length < 2){
player.sendMessage(ChatColor.RED + "Proper usage is /"+LoadProperties.whois+" <playername>"); player.sendMessage(ChatColor.RED + "Proper usage is /"+LoadProperties.whois+" <playername>");
return true; return true;
@ -1086,7 +1079,7 @@ public class mcMMO extends JavaPlugin
/* /*
* STATS COMMAND * STATS COMMAND
*/ */
if(LoadProperties.statsEnable && split[0].equalsIgnoreCase(LoadProperties.stats)){ else if(LoadProperties.statsEnable && label.equalsIgnoreCase(LoadProperties.stats)){
player.sendMessage(mcLocale.getString("mcPlayerListener.YourStats")); player.sendMessage(mcLocale.getString("mcPlayerListener.YourStats"));
@ -1132,7 +1125,7 @@ public class mcMMO extends JavaPlugin
player.sendMessage(mcLocale.getString("mcPlayerListener.PowerLevel")+ChatColor.GREEN+(m.getPowerLevel(player))); player.sendMessage(mcLocale.getString("mcPlayerListener.PowerLevel")+ChatColor.GREEN+(m.getPowerLevel(player)));
} }
//Invite Command //Invite Command
if(LoadProperties.inviteEnable && mcPermissions.getInstance().party(player) && split[0].equalsIgnoreCase(LoadProperties.invite)){ else if(LoadProperties.inviteEnable && label.equalsIgnoreCase(LoadProperties.invite) && mcPermissions.getInstance().party(player)){
if(!PP.inParty()) if(!PP.inParty())
{ {
@ -1159,7 +1152,7 @@ public class mcMMO extends JavaPlugin
} }
} }
//Accept invite //Accept invite
if(LoadProperties.acceptEnable && mcPermissions.getInstance().party(player) && split[0].equalsIgnoreCase(LoadProperties.accept)){ else if(LoadProperties.acceptEnable && label.equalsIgnoreCase(LoadProperties.accept) && mcPermissions.getInstance().party(player)){
if(PP.hasPartyInvite()){ if(PP.hasPartyInvite()){
if(PP.inParty()){ if(PP.inParty()){
Party.getInstance().informPartyMembersQuit(player, getPlayersOnline()); Party.getInstance().informPartyMembersQuit(player, getPlayersOnline());
@ -1172,7 +1165,7 @@ public class mcMMO extends JavaPlugin
} }
} }
//Party command //Party command
if(LoadProperties.partyEnable && split[0].equalsIgnoreCase(LoadProperties.party)){ else if(LoadProperties.partyEnable && label.equalsIgnoreCase(LoadProperties.party)){
if(!mcPermissions.getInstance().party(player)){ if(!mcPermissions.getInstance().party(player)){
player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission")); player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission"));
return true; return true;
@ -1213,8 +1206,34 @@ public class mcMMO extends JavaPlugin
Party.getInstance().informPartyMembers(player, getPlayersOnline()); Party.getInstance().informPartyMembers(player, getPlayersOnline());
} }
} }
if(LoadProperties.partyEnable && split[0].equalsIgnoreCase("p")){ else if(LoadProperties.partyEnable && label.equalsIgnoreCase("p")){
// Console message?
if(isConsole(sender)) {
if(args.length < 2) return true;
String pMessage = args[1];
for (int i = 2; i <= args.length - 1; i++) {
pMessage = pMessage + " " + args[i];
}
String pPrefix = ChatColor.GREEN + "(" + ChatColor.WHITE
+ "*Console*" + ChatColor.GREEN + ") ";
log.log(Level.INFO,
"[P](" + args[0] + ")" + "<*Console*> "
+ pMessage);
for(Player herp : getServer().getOnlinePlayers()) {
if(Users.getProfile(herp).inParty()) {
log.info(Users.getProfile(herp).getParty());
if(Users.getProfile(herp).getParty().equalsIgnoreCase(args[0])) {
herp.sendMessage(pPrefix + pMessage);
}
}
}
return true;
}
if(!mcPermissions.getInstance().party(player)){ if(!mcPermissions.getInstance().party(player)){
player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission")); player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission"));
return true; return true;
@ -1258,8 +1277,29 @@ public class mcMMO extends JavaPlugin
} }
} }
if(split[0].equalsIgnoreCase("a") && (player.isOp() || mcPermissions.getInstance().adminChat(player))){ else if(label.equalsIgnoreCase("a")){
if(!mcPermissions.getInstance().adminChat(player) && !player.isOp()){
// Console message?
if(isConsole(sender) && args.length >= 1) {
String aMessage = args[0];
for (int i = 1; i <= args.length - 1; i++) {
aMessage = aMessage + " " + args[i];
}
String aPrefix = ChatColor.AQUA + "{" + ChatColor.WHITE
+ "*Console*" + ChatColor.AQUA + "} ";
log.log(Level.INFO, "[A]<*Console*> "
+ aMessage);
for (Player herp : getServer().getOnlinePlayers()) {
if (mcPermissions.getInstance().adminChat(herp))
herp.sendMessage(aPrefix + aMessage);
}
return true;
}
if(!mcPermissions.getInstance().adminChat(player)){
player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission")); player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission"));
return true; return true;
} }
@ -1274,11 +1314,10 @@ public class mcMMO extends JavaPlugin
String aPrefix = ChatColor.AQUA + "{" + ChatColor.WHITE String aPrefix = ChatColor.AQUA + "{" + ChatColor.WHITE
+ player.getName() + ChatColor.AQUA + "} "; + player.getName() + ChatColor.AQUA + "} ";
log.log(Level.INFO, "[A]" + "<" + player.getName() + "> " log.log(Level.INFO, "[A]<" + player.getName() + "> "
+ aMessage); + aMessage);
for (Player herp : getServer().getOnlinePlayers()) { for (Player herp : getServer().getOnlinePlayers()) {
if ((herp.isOp() || mcPermissions.getInstance().adminChat( if (mcPermissions.getInstance().adminChat(herp))
herp)))
herp.sendMessage(aPrefix + aMessage); herp.sendMessage(aPrefix + aMessage);
} }
return true; return true;
@ -1302,7 +1341,7 @@ public class mcMMO extends JavaPlugin
/* /*
* MYSPAWN * MYSPAWN
*/ */
if(LoadProperties.myspawnEnable && LoadProperties.enableMySpawn && split[0].equalsIgnoreCase(LoadProperties.myspawn)){ else if(LoadProperties.myspawnEnable && LoadProperties.enableMySpawn && label.equalsIgnoreCase(LoadProperties.myspawn)){
if(!mcPermissions.getInstance().mySpawn(player)){ if(!mcPermissions.getInstance().mySpawn(player)){
player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission")); player.sendMessage(ChatColor.YELLOW+"[mcMMO]"+ChatColor.DARK_RED +mcLocale.getString("mcPlayerListener.NoPermission"));
return true; return true;
@ -1344,6 +1383,10 @@ public class mcMMO extends JavaPlugin
return false; return false;
} }
public boolean isConsole(CommandSender sender) {
return !(sender instanceof Player);
}
public Player getPlayer(String playerName){ public Player getPlayer(String playerName){
for(Player herp : getPlayersOnline()){ for(Player herp : getPlayersOnline()){
if(herp.getName().toLowerCase().equals(playerName.toLowerCase())){ if(herp.getName().toLowerCase().equals(playerName.toLowerCase())){

View File

@ -68,18 +68,35 @@ permissions:
mcmmo.*: mcmmo.*:
description: Implies all mcmmo permissions. description: Implies all mcmmo permissions.
children: children:
mcmmo.admin: true mcmmo.defaults: true
#Instead of containing mcmmo.defaultsop on its own, it should specify each of mcmmo.defaultsop
mcmmo.admin: true
mcmmo.tools.*: true mcmmo.tools.*: true
mcmmo.chat.adminchat: true
mcmmo.defaults:
default: true
description: mcmmo permisionss that default to true
children:
mcmmo.ability.*: true mcmmo.ability.*: true
mcmmo.item.*: true mcmmo.item.*: true
mcmmo.tools.*: true mcmmo.tools.*: true
mcmmo.regeneration: true mcmmo.regeneration: true
mcmmo.motd: true mcmmo.motd: true
mcmmo.commands.*: true mcmmo.commands.*: true
mcmmo.chat.*: true mcmmo.chat.partychat: true
mcmmo.skills.*: true mcmmo.skills.*: true
mcmmo.admin:
mcmmo.defaultsop:
default: op default: op
description: mcmmo permissions that default to op
children:
mcmmo.admin: true
mcmmo.tools.*: true
mcmmo.chat.adminchat: true
mcmmo.admin:
description:
mcmmo.tools.*: mcmmo.tools.*:
description: Implies all mcmmo.tools permissions. description: Implies all mcmmo.tools permissions.
@ -88,11 +105,11 @@ permissions:
mcmmo.tools.mmoedit: true mcmmo.tools.mmoedit: true
mcmmo.tools.mcgod: true mcmmo.tools.mcgod: true
mcmmo.tools.mcrefresh: mcmmo.tools.mcrefresh:
default: op description:
mcmmo.tools.mmoedit: mcmmo.tools.mmoedit:
default: op description:
mcmmo.tools.mcgod: mcmmo.tools.mcgod:
default: op description:
mcmmo.ability.*: mcmmo.ability.*:
description: Implies all mcmmo.ability permissions. description: Implies all mcmmo.ability permissions.
@ -105,32 +122,32 @@ permissions:
mcmmo.ability.swords: true mcmmo.ability.swords: true
mcmmo.ability.woodcutting: true mcmmo.ability.woodcutting: true
mcmmo.ability.herbalism: mcmmo.ability.herbalism:
default: true description:
mcmmo.ability.excavation: mcmmo.ability.excavation:
default: true description:
mcmmo.ability.unarmed: mcmmo.ability.unarmed:
default: true description:
mcmmo.ability.mining: mcmmo.ability.mining:
default: true description:
mcmmo.ability.axes: mcmmo.ability.axes:
default: true description:
mcmmo.ability.swords: mcmmo.ability.swords:
default: true description:
mcmmo.ability.woodcutting: mcmmo.ability.woodcutting:
default: true description:
mcmmo.item.*: mcmmo.item.*:
description: Implies all mcmmo.item permissions. description: Implies all mcmmo.item permissions.
children: children:
mcmmo.item.chimaerawing: true mcmmo.item.chimaerawing: true
mcmmo.item.chimaerawing: mcmmo.item.chimaerawing:
default: true description:
mcmmo.regeneration: mcmmo.regeneration:
default: true description:
mcmmo.motd: mcmmo.motd:
default: true description:
mcmmo.commands.*: mcmmo.commands.*:
description: Implies all mcmmo.commands permissions. description: Implies all mcmmo.commands permissions.
@ -142,17 +159,17 @@ permissions:
mcmmo.commands.whois: true mcmmo.commands.whois: true
mcmmo.commands.party: true mcmmo.commands.party: true
mcmmo.commands.ability: mcmmo.commands.ability:
default: true description:
mcmmo.commands.myspawn: mcmmo.commands.myspawn:
default: true description:
mcmmo.commands.setmyspawn: mcmmo.commands.setmyspawn:
default: true description:
mcmmo.commands.ptp: mcmmo.commands.ptp:
default: true description:
mcmmo.commands.whois: mcmmo.commands.whois:
default: true description:
mcmmo.commands.party: mcmmo.commands.party:
default: true description:
mcmmo.chat.*: mcmmo.chat.*:
description: Implies all mcmmo.chat permissions. (Warning, contains adminchat) description: Implies all mcmmo.chat permissions. (Warning, contains adminchat)
@ -160,9 +177,9 @@ permissions:
mcmmo.chat.adminchat: true mcmmo.chat.adminchat: true
mcmmo.chat.partychat: true mcmmo.chat.partychat: true
mcmmo.chat.adminchat: mcmmo.chat.adminchat:
default: op description:
mcmmo.chat.partychat: mcmmo.chat.partychat:
default: true description:
mcmmo.skills.*: mcmmo.skills.*:
description: Implies all mcmmo.skills permissions. description: Implies all mcmmo.skills permissions.
@ -194,36 +211,38 @@ permissions:
mcmmo.skills.curative.heal.self: true mcmmo.skills.curative.heal.self: true
mcmmo.skills.sorcery: mcmmo.skills.sorcery:
default: true description:
mcmmo.skills.sorcery.water: mcmmo.skills.sorcery.water:
default: true description:
mcmmo.skills.sorcery.water.thunder: mcmmo.skills.sorcery.water.thunder:
default: true description:
mcmmo.skills.curative: mcmmo.skills.curative:
default: true description:
mcmmo.skills.curative.heal.other: mcmmo.skills.curative.heal.other:
default: true description:
mcmmo.skills.curative.heal.self: mcmmo.skills.curative.heal.self:
default: true description:
mcmmo.skills.taming: mcmmo.skills.taming:
default: true description:
mcmmo.skills.mining: mcmmo.skills.mining:
default: true description:
mcmmo.skills.woodcutting: mcmmo.skills.woodcutting:
default: true description:
mcmmo.skills.repair: mcmmo.skills.repair:
default: true description:
mcmmo.skills.unarmed: mcmmo.skills.unarmed:
default: true description:
mcmmo.skills.archery: mcmmo.skills.archery:
default: true description:
mcmmo.skills.herbalism: mcmmo.skills.herbalism:
default: true description:
mcmmo.skills.excavation: mcmmo.skills.excavation:
default: true description:
mcmmo.skills.swords: mcmmo.skills.swords:
default: true description:
mcmmo.skills.axes: mcmmo.skills.axes:
default: true description:
mcmmo.skills.acrobatics: mcmmo.skills.acrobatics:
default: true description: