Territory Titles Toggle Command
This commit is contained in:
@@ -39,6 +39,7 @@ public class CmdFactions extends FactionsCommand
|
||||
public CmdFactionsMoney cmdFactionsMoney = new CmdFactionsMoney();
|
||||
public CmdFactionsSeeChunk cmdFactionsSeeChunk = new CmdFactionsSeeChunk();
|
||||
public CmdFactionsSeeChunkOld cmdFactionsSeeChunkOld = new CmdFactionsSeeChunkOld();
|
||||
public CmdFactionsTerritorytitles cmdFactionsTerritorytitles = new CmdFactionsTerritorytitles();
|
||||
public CmdFactionsStatus cmdFactionsStatus = new CmdFactionsStatus();
|
||||
public CmdFactionsClaim cmdFactionsClaim = new CmdFactionsClaim();
|
||||
public CmdFactionsUnclaim cmdFactionsUnclaim = new CmdFactionsUnclaim();
|
||||
@@ -91,6 +92,7 @@ public class CmdFactions extends FactionsCommand
|
||||
this.addSubCommand(this.cmdFactionsMoney);
|
||||
this.addSubCommand(this.cmdFactionsSeeChunk);
|
||||
this.addSubCommand(this.cmdFactionsSeeChunkOld);
|
||||
this.addSubCommand(this.cmdFactionsTerritorytitles);
|
||||
this.addSubCommand(this.cmdFactionsClaim);
|
||||
this.addSubCommand(this.cmdFactionsUnclaim);
|
||||
this.addSubCommand(this.cmdFactionsAccess);
|
||||
|
@@ -0,0 +1,65 @@
|
||||
package com.massivecraft.factions.cmd;
|
||||
|
||||
import com.massivecraft.factions.Perm;
|
||||
import com.massivecraft.massivecore.MassiveException;
|
||||
import com.massivecraft.massivecore.cmd.VisibilityMode;
|
||||
import com.massivecraft.massivecore.cmd.arg.ARBoolean;
|
||||
import com.massivecraft.massivecore.cmd.req.ReqHasPerm;
|
||||
import com.massivecraft.massivecore.cmd.req.ReqTitlesAvailable;
|
||||
import com.massivecraft.massivecore.mixin.Mixin;
|
||||
import com.massivecraft.massivecore.util.Txt;
|
||||
|
||||
public class CmdFactionsTerritorytitles extends FactionsCommand
|
||||
{
|
||||
// -------------------------------------------- //
|
||||
// CONSTRUCT
|
||||
// -------------------------------------------- //
|
||||
|
||||
public CmdFactionsTerritorytitles()
|
||||
{
|
||||
// Aliases
|
||||
this.addAliases("tt", "territorytitles");
|
||||
|
||||
// Args
|
||||
this.addArg(ARBoolean.get(), "on|off", "toggle");
|
||||
|
||||
// Requirements
|
||||
this.addRequirements(ReqHasPerm.get(Perm.TERRITORYTITLES.node));
|
||||
this.addRequirements(ReqTitlesAvailable.get());
|
||||
}
|
||||
|
||||
// -------------------------------------------- //
|
||||
// OVERRIDE
|
||||
// -------------------------------------------- //
|
||||
|
||||
@Override
|
||||
public VisibilityMode getVisibilityMode()
|
||||
{
|
||||
// We hide the command if titles aren't available.
|
||||
if ( ! Mixin.isTitlesAvailable()) return VisibilityMode.INVISIBLE;
|
||||
return super.getVisibilityMode();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void perform() throws MassiveException
|
||||
{
|
||||
// Args
|
||||
boolean before = msender.isTerritoryInfoTitles();
|
||||
boolean after = this.readArg(!before);
|
||||
String desc = Txt.parse(after ? "<g>ON" : "<b>OFF");
|
||||
|
||||
// NoChange
|
||||
if (after == before)
|
||||
{
|
||||
msg("<i>Territory titles is already %s<i>.", desc);
|
||||
return;
|
||||
}
|
||||
|
||||
// Apply
|
||||
msender.setTerritoryInfoTitles(after);
|
||||
|
||||
// Inform
|
||||
msg("<i>Territory titles is now %s<i>.", desc);
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user