New command /f power [player name] to check either your own power (if no name is specified) or another player's power (if a player name is specified). The ability for a player to view their own power is based on the standard factions.participate permission, but to check the power of other players, the new permission node factions.viewAnyPower needs to be granted. If you aren't using a Permissions plugin (instead defaulting to the built-in Bukkit permission system), the factions.viewAnyPower permission is granted by default. Otherwise, you'll need to configure your Permissions plugin to grant the new permission as needed.
This commit is contained in:
parent
b97eaf175e
commit
080ea3363b
@ -94,6 +94,7 @@ public class Factions extends JavaPlugin {
|
|||||||
commands.add(new FCommandMap());
|
commands.add(new FCommandMap());
|
||||||
commands.add(new FCommandMod());
|
commands.add(new FCommandMod());
|
||||||
commands.add(new FCommandOpen());
|
commands.add(new FCommandOpen());
|
||||||
|
commands.add(new FCommandPower());
|
||||||
commands.add(new FCommandRelationAlly());
|
commands.add(new FCommandRelationAlly());
|
||||||
commands.add(new FCommandRelationEnemy());
|
commands.add(new FCommandRelationEnemy());
|
||||||
commands.add(new FCommandRelationNeutral());
|
commands.add(new FCommandRelationNeutral());
|
||||||
@ -353,6 +354,10 @@ public class Factions extends JavaPlugin {
|
|||||||
return hasPerm(sender, "factions.worldOptions");
|
return hasPerm(sender, "factions.worldOptions");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean hasPermViewAnyPower(CommandSender sender) {
|
||||||
|
return hasPerm(sender, "factions.viewAnyPower");
|
||||||
|
}
|
||||||
|
|
||||||
public static boolean isCommandDisabled(CommandSender sender, String command) {
|
public static boolean isCommandDisabled(CommandSender sender, String command) {
|
||||||
return (hasPerm(sender, "factions.commandDisable."+command) && !hasPerm(sender, "factions.commandDisable.none"));
|
return (hasPerm(sender, "factions.commandDisable."+command) && !hasPerm(sender, "factions.commandDisable.none"));
|
||||||
}
|
}
|
||||||
|
@ -58,7 +58,7 @@ public class FCommandHelp extends FBaseCommand {
|
|||||||
pageLines.add( new FCommandHelp().getUseageTemplate() );
|
pageLines.add( new FCommandHelp().getUseageTemplate() );
|
||||||
pageLines.add( new FCommandList().getUseageTemplate() );
|
pageLines.add( new FCommandList().getUseageTemplate() );
|
||||||
pageLines.add( new FCommandShow().getUseageTemplate() );
|
pageLines.add( new FCommandShow().getUseageTemplate() );
|
||||||
pageLines.add( new FCommandMap().getUseageTemplate() );
|
pageLines.add( new FCommandPower().getUseageTemplate() );
|
||||||
pageLines.add( new FCommandJoin().getUseageTemplate() );
|
pageLines.add( new FCommandJoin().getUseageTemplate() );
|
||||||
pageLines.add( new FCommandLeave().getUseageTemplate() );
|
pageLines.add( new FCommandLeave().getUseageTemplate() );
|
||||||
pageLines.add( new FCommandChat().getUseageTemplate() );
|
pageLines.add( new FCommandChat().getUseageTemplate() );
|
||||||
@ -91,13 +91,13 @@ public class FCommandHelp extends FBaseCommand {
|
|||||||
helpPages.add(pageLines);
|
helpPages.add(pageLines);
|
||||||
|
|
||||||
pageLines = new ArrayList<String>();
|
pageLines = new ArrayList<String>();
|
||||||
|
pageLines.add( new FCommandMap().getUseageTemplate() );
|
||||||
pageLines.add( new FCommandRelationAlly().getUseageTemplate() );
|
pageLines.add( new FCommandRelationAlly().getUseageTemplate() );
|
||||||
pageLines.add( new FCommandRelationNeutral().getUseageTemplate() );
|
pageLines.add( new FCommandRelationNeutral().getUseageTemplate() );
|
||||||
pageLines.add( new FCommandRelationEnemy().getUseageTemplate() );
|
pageLines.add( new FCommandRelationEnemy().getUseageTemplate() );
|
||||||
pageLines.add("");
|
pageLines.add("");
|
||||||
pageLines.add("Set the relation you WISH to have with another faction.");
|
pageLines.add("Set the relation you WISH to have with another faction.");
|
||||||
pageLines.add("Your default relation with other factions will be neutral.");
|
pageLines.add("Your default relation with other factions will be neutral.");
|
||||||
pageLines.add("");
|
|
||||||
pageLines.add("If BOTH factions choose \"ally\" you will be allies.");
|
pageLines.add("If BOTH factions choose \"ally\" you will be allies.");
|
||||||
pageLines.add("If ONE faction chooses \"enemy\" you will be enemies.");
|
pageLines.add("If ONE faction chooses \"enemy\" you will be enemies.");
|
||||||
helpPages.add(pageLines);
|
helpPages.add(pageLines);
|
||||||
|
52
src/com/massivecraft/factions/commands/FCommandPower.java
Normal file
52
src/com/massivecraft/factions/commands/FCommandPower.java
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
package com.massivecraft.factions.commands;
|
||||||
|
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import com.massivecraft.factions.Conf;
|
||||||
|
import com.massivecraft.factions.Factions;
|
||||||
|
import com.massivecraft.factions.FPlayer;
|
||||||
|
|
||||||
|
|
||||||
|
public class FCommandPower extends FBaseCommand {
|
||||||
|
|
||||||
|
public FCommandPower() {
|
||||||
|
aliases.add("power");
|
||||||
|
aliases.add("pow");
|
||||||
|
|
||||||
|
senderMustBePlayer = false;
|
||||||
|
|
||||||
|
optionalParameters.add("player name");
|
||||||
|
|
||||||
|
helpDescription = "show player power info";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean hasPermission(CommandSender sender) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void perform() {
|
||||||
|
FPlayer target;
|
||||||
|
if (parameters.size() > 0) {
|
||||||
|
if (!Factions.hasPermViewAnyPower(player)) {
|
||||||
|
me.sendMessage("You do not have the appropriate permission to view another player's power level.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
target = findFPlayer(parameters.get(0), false);
|
||||||
|
} else if (!(sender instanceof Player)) {
|
||||||
|
sendMessage("From the command line, you must specify a player (f power <player name>).");
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
target = me;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (target == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
sendMessage(target.getNameAndRelevant(me)+Conf.colorChrome+" - Power / Maxpower: "+Conf.colorSystem+target.getPowerRounded()+" / "+target.getPowerMaxRounded());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -18,6 +18,7 @@ permissions:
|
|||||||
children:
|
children:
|
||||||
factions.participate: true
|
factions.participate: true
|
||||||
factions.create: true
|
factions.create: true
|
||||||
|
factions.viewAnyPower: true
|
||||||
factions.manageSafeZone: true
|
factions.manageSafeZone: true
|
||||||
factions.manageWarZone: true
|
factions.manageWarZone: true
|
||||||
factions.adminBypass: true
|
factions.adminBypass: true
|
||||||
@ -34,6 +35,9 @@ permissions:
|
|||||||
factions.create:
|
factions.create:
|
||||||
description: Allows the player to create a new faction
|
description: Allows the player to create a new faction
|
||||||
default: true
|
default: true
|
||||||
|
factions.viewAnyPower:
|
||||||
|
description: Allows the player to view the power level of anyone else
|
||||||
|
default: true
|
||||||
factions.manageSafeZone:
|
factions.manageSafeZone:
|
||||||
description: Allows the player to claim land as a safe zone, and to build/destroy within safe zones
|
description: Allows the player to claim land as a safe zone, and to build/destroy within safe zones
|
||||||
default: op
|
default: op
|
||||||
@ -130,6 +134,9 @@ permissions:
|
|||||||
factions.commandDisable.open:
|
factions.commandDisable.open:
|
||||||
description: open command disabled
|
description: open command disabled
|
||||||
default: false
|
default: false
|
||||||
|
factions.commandDisable.power:
|
||||||
|
description: power command disabled
|
||||||
|
default: false
|
||||||
factions.commandDisable.ally:
|
factions.commandDisable.ally:
|
||||||
description: ally command disabled
|
description: ally command disabled
|
||||||
default: false
|
default: false
|
||||||
|
Loading…
Reference in New Issue
Block a user