Mirror von
https://github.com/IntellectualSites/FastAsyncWorldEdit.git
synchronisiert 2024-12-26 02:50:06 +01:00
Add option to disable commands
Dieser Commit ist enthalten in:
Ursprung
4632f0d4f3
Commit
99c4c2f35d
@ -69,6 +69,13 @@ public class Settings extends Config {
|
|||||||
public PATHS PATHS;
|
public PATHS PATHS;
|
||||||
@Create
|
@Create
|
||||||
public REGION_RESTRICTIONS_OPTIONS REGION_RESTRICTIONS_OPTIONS;
|
public REGION_RESTRICTIONS_OPTIONS REGION_RESTRICTIONS_OPTIONS;
|
||||||
|
@Create
|
||||||
|
public ENABLED_COMPONENTS ENABLED_COMPONENTS;
|
||||||
|
|
||||||
|
@Comment("Enable or disable core components")
|
||||||
|
public static final class ENABLED_COMPONENTS {
|
||||||
|
public boolean COMMANDS = true;
|
||||||
|
}
|
||||||
|
|
||||||
@Comment("Paths for various directories")
|
@Comment("Paths for various directories")
|
||||||
public static final class PATHS {
|
public static final class PATHS {
|
||||||
|
@ -25,6 +25,7 @@ import com.boydti.fawe.command.CFICommand;
|
|||||||
import com.boydti.fawe.command.MaskBinding;
|
import com.boydti.fawe.command.MaskBinding;
|
||||||
import com.boydti.fawe.command.PatternBinding;
|
import com.boydti.fawe.command.PatternBinding;
|
||||||
import com.boydti.fawe.config.BBC;
|
import com.boydti.fawe.config.BBC;
|
||||||
|
import com.boydti.fawe.config.Settings;
|
||||||
import com.boydti.fawe.object.FawePlayer;
|
import com.boydti.fawe.object.FawePlayer;
|
||||||
import com.boydti.fawe.object.exception.FaweException;
|
import com.boydti.fawe.object.exception.FaweException;
|
||||||
import com.boydti.fawe.object.task.ThrowableSupplier;
|
import com.boydti.fawe.object.task.ThrowableSupplier;
|
||||||
@ -257,71 +258,73 @@ public final class CommandManager {
|
|||||||
* Initialize the dispatcher
|
* Initialize the dispatcher
|
||||||
*/
|
*/
|
||||||
public synchronized void setupDispatcher() {
|
public synchronized void setupDispatcher() {
|
||||||
DispatcherNode graph = new CommandGraph().builder(builder).commands();
|
if (Settings.IMP.ENABLED_COMPONENTS.COMMANDS) {
|
||||||
|
DispatcherNode graph = new CommandGraph().builder(builder).commands();
|
||||||
|
|
||||||
for (Map.Entry<Object, String[]> entry : methodMap.entrySet()) {
|
for (Map.Entry<Object, String[]> entry : methodMap.entrySet()) {
|
||||||
// add command
|
// add command
|
||||||
String[] aliases = entry.getValue();
|
String[] aliases = entry.getValue();
|
||||||
if (aliases.length == 0) {
|
if (aliases.length == 0) {
|
||||||
graph = graph.registerMethods(entry.getKey());
|
graph = graph.registerMethods(entry.getKey());
|
||||||
} else {
|
} else {
|
||||||
graph = graph.group(aliases).registerMethods(entry.getKey()).parent();
|
graph = graph.group(aliases).registerMethods(entry.getKey()).parent();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
for (Map.Entry<CommandCallable, String[][]> entry : commandMap.entrySet()) {
|
for (Map.Entry<CommandCallable, String[][]> entry : commandMap.entrySet()) {
|
||||||
String[][] aliases = entry.getValue();
|
String[][] aliases = entry.getValue();
|
||||||
CommandCallable callable = entry.getKey();
|
CommandCallable callable = entry.getKey();
|
||||||
if (aliases[0].length == 0) {
|
if (aliases[0].length == 0) {
|
||||||
graph = graph.register(callable, aliases[1]);
|
graph = graph.register(callable, aliases[1]);
|
||||||
} else {
|
} else {
|
||||||
graph = graph.group(aliases[0]).register(callable, aliases[1]).parent();
|
graph = graph.group(aliases[0]).register(callable, aliases[1]).parent();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
commandMap.clear();
|
commandMap.clear();
|
||||||
methodMap.clear();
|
methodMap.clear();
|
||||||
|
|
||||||
dispatcher = graph
|
dispatcher = graph
|
||||||
.group("/anvil")
|
.group("/anvil")
|
||||||
.describeAs("Anvil command")
|
.describeAs("Anvil command")
|
||||||
.registerMethods(new AnvilCommands(worldEdit)).parent()
|
.registerMethods(new AnvilCommands(worldEdit)).parent()
|
||||||
.registerMethods(new CFICommand(worldEdit, builder))
|
.registerMethods(new CFICommand(worldEdit, builder))
|
||||||
.registerMethods(new BiomeCommands(worldEdit))
|
.registerMethods(new BiomeCommands(worldEdit))
|
||||||
.registerMethods(new ChunkCommands(worldEdit))
|
.registerMethods(new ChunkCommands(worldEdit))
|
||||||
.registerMethods(new ClipboardCommands(worldEdit))
|
.registerMethods(new ClipboardCommands(worldEdit))
|
||||||
.registerMethods(new OptionsCommands(worldEdit))
|
.registerMethods(new OptionsCommands(worldEdit))
|
||||||
.registerMethods(new GenerationCommands(worldEdit))
|
.registerMethods(new GenerationCommands(worldEdit))
|
||||||
.registerMethods(new HistoryCommands(worldEdit))
|
.registerMethods(new HistoryCommands(worldEdit))
|
||||||
.registerMethods(new NavigationCommands(worldEdit))
|
.registerMethods(new NavigationCommands(worldEdit))
|
||||||
.registerMethods(new RegionCommands(worldEdit))
|
.registerMethods(new RegionCommands(worldEdit))
|
||||||
.registerMethods(new ScriptingCommands(worldEdit))
|
.registerMethods(new ScriptingCommands(worldEdit))
|
||||||
.registerMethods(new SelectionCommands(worldEdit))
|
.registerMethods(new SelectionCommands(worldEdit))
|
||||||
.registerMethods(new SnapshotUtilCommands(worldEdit))
|
.registerMethods(new SnapshotUtilCommands(worldEdit))
|
||||||
.registerMethods(new BrushOptionsCommands(worldEdit))
|
.registerMethods(new BrushOptionsCommands(worldEdit))
|
||||||
.registerMethods(new ToolCommands(worldEdit))
|
.registerMethods(new ToolCommands(worldEdit))
|
||||||
.registerMethods(new UtilityCommands(worldEdit))
|
.registerMethods(new UtilityCommands(worldEdit))
|
||||||
.registerSubMethods(new WorldEditCommands(worldEdit))
|
.registerSubMethods(new WorldEditCommands(worldEdit))
|
||||||
.registerSubMethods(new SchematicCommands(worldEdit))
|
.registerSubMethods(new SchematicCommands(worldEdit))
|
||||||
.registerSubMethods(new SnapshotCommands(worldEdit))
|
.registerSubMethods(new SnapshotCommands(worldEdit))
|
||||||
.groupAndDescribe(BrushCommands.class)
|
.groupAndDescribe(BrushCommands.class)
|
||||||
.registerMethods(new BrushCommands(worldEdit))
|
.registerMethods(new BrushCommands(worldEdit))
|
||||||
.registerMethods(new ToolCommands(worldEdit))
|
.registerMethods(new ToolCommands(worldEdit))
|
||||||
.registerMethods(new BrushOptionsCommands(worldEdit))
|
.registerMethods(new BrushOptionsCommands(worldEdit))
|
||||||
.register(adapt(new ShapedBrushCommand(new DeformCommand(), "worldedit.brush.deform")), "deform")
|
.register(adapt(new ShapedBrushCommand(new DeformCommand(), "worldedit.brush.deform")), "deform")
|
||||||
.register(adapt(new ShapedBrushCommand(new ApplyCommand(new ReplaceParser(), "Set all blocks within region"), "worldedit.brush.set")), "set")
|
.register(adapt(new ShapedBrushCommand(new ApplyCommand(new ReplaceParser(), "Set all blocks within region"), "worldedit.brush.set")), "set")
|
||||||
.register(adapt(new ShapedBrushCommand(new PaintCommand(), "worldedit.brush.paint")), "paint")
|
.register(adapt(new ShapedBrushCommand(new PaintCommand(), "worldedit.brush.paint")), "paint")
|
||||||
.register(adapt(new ShapedBrushCommand(new ApplyCommand(), "worldedit.brush.apply")), "apply")
|
.register(adapt(new ShapedBrushCommand(new ApplyCommand(), "worldedit.brush.apply")), "apply")
|
||||||
.register(adapt(new ShapedBrushCommand(new PaintCommand(new TreeGeneratorParser("treeType")), "worldedit.brush.forest")), "forest")
|
.register(adapt(new ShapedBrushCommand(new PaintCommand(new TreeGeneratorParser("treeType")), "worldedit.brush.forest")), "forest")
|
||||||
.register(adapt(new ShapedBrushCommand(ProvidedValue.create(new Deform("y-=1", Mode.RAW_COORD), "Raise one block"), "worldedit.brush.raise")), "raise")
|
.register(adapt(new ShapedBrushCommand(ProvidedValue.create(new Deform("y-=1", Mode.RAW_COORD), "Raise one block"), "worldedit.brush.raise")), "raise")
|
||||||
.register(adapt(new ShapedBrushCommand(ProvidedValue.create(new Deform("y+=1", Mode.RAW_COORD), "Lower one block"), "worldedit.brush.lower")), "lower")
|
.register(adapt(new ShapedBrushCommand(ProvidedValue.create(new Deform("y+=1", Mode.RAW_COORD), "Lower one block"), "worldedit.brush.lower")), "lower")
|
||||||
.parent()
|
.parent()
|
||||||
.group("superpickaxe", "pickaxe", "sp").describeAs("Super-pickaxe commands")
|
.group("superpickaxe", "pickaxe", "sp").describeAs("Super-pickaxe commands")
|
||||||
.registerMethods(new SuperPickaxeCommands(worldEdit))
|
.registerMethods(new SuperPickaxeCommands(worldEdit))
|
||||||
.parent().graph().getDispatcher();
|
.parent().graph().getDispatcher();
|
||||||
|
|
||||||
if (platform != null) {
|
if (platform != null) {
|
||||||
platform.registerCommands(dispatcher);
|
platform.registerCommands(dispatcher);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren