Saber-Factions/src/main/java/com/massivecraft/factions/cmd/CmdAutoHelp.java
2019-12-02 13:55:38 -05:00

49 lines
1.3 KiB
Java

package com.massivecraft.factions.cmd;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.zcore.CommandVisibility;
import com.massivecraft.factions.zcore.util.TL;
import java.util.ArrayList;
public class CmdAutoHelp extends FCommand {
/**
* @author FactionsUUID Team
*/
public CmdAutoHelp() {
this.aliases.add("?");
this.aliases.add("h");
this.aliases.add("help");
this.setHelpShort("");
this.optionalArgs.put("page", "1");
}
@Override
public void perform(CommandContext context) {
if (context.commandChain.size() == 0) {
return;
}
FCommand pcmd = context.commandChain.get(context.commandChain.size() - 1);
ArrayList<String> lines = new ArrayList<>(pcmd.helpLong);
for (FCommand scmd : pcmd.subCommands) {
if (scmd.visibility == CommandVisibility.VISIBLE) {
lines.add(scmd.getUsageTemplate(context, true));
}
// TODO deal with other visibilities
}
context.sendMessage(FactionsPlugin.getInstance().txt.getPage(lines, context.argAsInt(0, 1), TL.COMMAND_AUTOHELP_HELPFOR.toString() + pcmd.aliases.get(0) + "\""));
}
@Override
public TL getUsageTranslation() {
return TL.COMMAND_HELP_DESCRIPTION;
}
}