Set warp and f warp f perms
This commit is contained in:
parent
ad10222c2d
commit
1b088ccd54
@ -4,8 +4,11 @@ import com.massivecraft.factions.Conf;
|
|||||||
import com.massivecraft.factions.FPlayer;
|
import com.massivecraft.factions.FPlayer;
|
||||||
import com.massivecraft.factions.P;
|
import com.massivecraft.factions.P;
|
||||||
import com.massivecraft.factions.struct.Permission;
|
import com.massivecraft.factions.struct.Permission;
|
||||||
|
import com.massivecraft.factions.struct.Role;
|
||||||
import com.massivecraft.factions.util.LazyLocation;
|
import com.massivecraft.factions.util.LazyLocation;
|
||||||
import com.massivecraft.factions.util.WarmUpUtil;
|
import com.massivecraft.factions.util.WarmUpUtil;
|
||||||
|
import com.massivecraft.factions.zcore.fperms.Access;
|
||||||
|
import com.massivecraft.factions.zcore.fperms.PermissableAction;
|
||||||
import com.massivecraft.factions.zcore.util.TL;
|
import com.massivecraft.factions.zcore.util.TL;
|
||||||
import mkremins.fanciful.FancyMessage;
|
import mkremins.fanciful.FancyMessage;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
@ -32,6 +35,15 @@ public class CmdFWarp extends FCommand {
|
|||||||
@Override
|
@Override
|
||||||
public void perform() {
|
public void perform() {
|
||||||
//TODO: check if in combat.
|
//TODO: check if in combat.
|
||||||
|
|
||||||
|
// Check for access first.
|
||||||
|
Access access = myFaction.getAccess(fme, PermissableAction.WARP);
|
||||||
|
|
||||||
|
if (access == Access.DENY) {
|
||||||
|
fme.msg(TL.GENERIC_NOPERMISSION, "warp");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (args.size() == 0) {
|
if (args.size() == 0) {
|
||||||
FancyMessage msg = new FancyMessage(TL.COMMAND_FWARP_WARPS.toString()).color(ChatColor.GOLD);
|
FancyMessage msg = new FancyMessage(TL.COMMAND_FWARP_WARPS.toString()).color(ChatColor.GOLD);
|
||||||
Map<String, LazyLocation> warps = myFaction.getWarps();
|
Map<String, LazyLocation> warps = myFaction.getWarps();
|
||||||
|
@ -4,20 +4,27 @@ import com.massivecraft.factions.FPlayer;
|
|||||||
import com.massivecraft.factions.P;
|
import com.massivecraft.factions.P;
|
||||||
import com.massivecraft.factions.struct.Permission;
|
import com.massivecraft.factions.struct.Permission;
|
||||||
import com.massivecraft.factions.struct.Relation;
|
import com.massivecraft.factions.struct.Relation;
|
||||||
|
import com.massivecraft.factions.struct.Role;
|
||||||
import com.massivecraft.factions.util.LazyLocation;
|
import com.massivecraft.factions.util.LazyLocation;
|
||||||
|
import com.massivecraft.factions.zcore.fperms.Access;
|
||||||
|
import com.massivecraft.factions.zcore.fperms.PermissableAction;
|
||||||
import com.massivecraft.factions.zcore.util.TL;
|
import com.massivecraft.factions.zcore.util.TL;
|
||||||
|
|
||||||
public class CmdSetFWarp extends FCommand {
|
public class CmdSetFWarp extends FCommand {
|
||||||
|
|
||||||
public CmdSetFWarp() {
|
public CmdSetFWarp() {
|
||||||
super();
|
super();
|
||||||
|
|
||||||
this.aliases.add("setwarp");
|
this.aliases.add("setwarp");
|
||||||
this.aliases.add("sw");
|
this.aliases.add("sw");
|
||||||
|
|
||||||
this.requiredArgs.add("warp name");
|
this.requiredArgs.add("warp name");
|
||||||
this.optionalArgs.put("password", "password");
|
this.optionalArgs.put("password", "password");
|
||||||
|
|
||||||
this.senderMustBeMember = true;
|
this.senderMustBeMember = true;
|
||||||
this.senderMustBeModerator = true;
|
this.senderMustBeModerator = false;
|
||||||
this.senderMustBePlayer = true;
|
this.senderMustBePlayer = true;
|
||||||
|
|
||||||
this.permission = Permission.SETWARP.node;
|
this.permission = Permission.SETWARP.node;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -28,6 +35,14 @@ public class CmdSetFWarp extends FCommand {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Access access = myFaction.getAccess(fme, PermissableAction.SETWARP);
|
||||||
|
// This statement allows us to check if they've specifically denied it, or default to
|
||||||
|
// the old setting of allowing moderators to set warps.
|
||||||
|
if (access == Access.DENY || (access == Access.UNDEFINED && !assertMinRole(Role.MODERATOR))) {
|
||||||
|
fme.msg(TL.GENERIC_NOPERMISSION, "set warp");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
int maxWarps = P.p.getConfig().getInt("max-warps", 5);
|
int maxWarps = P.p.getConfig().getInt("max-warps", 5);
|
||||||
if (maxWarps <= myFaction.getWarps().size()) {
|
if (maxWarps <= myFaction.getWarps().size()) {
|
||||||
fme.msg(TL.COMMAND_SETFWARP_LIMIT, maxWarps);
|
fme.msg(TL.COMMAND_SETFWARP_LIMIT, maxWarps);
|
||||||
|
@ -18,7 +18,10 @@ public enum PermissableAction {
|
|||||||
ACCESS("access"),
|
ACCESS("access"),
|
||||||
DISBAND("disband"),
|
DISBAND("disband"),
|
||||||
PROMOTE("promote"),
|
PROMOTE("promote"),
|
||||||
PERMS("perms");
|
PERMS("perms"),
|
||||||
|
SETWARP("setwarp"),
|
||||||
|
WARP("warp"),
|
||||||
|
;
|
||||||
|
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user