Split gcmd sub cmds out n other stuff

This commit is contained in:
Seth
2020-07-31 21:10:44 -07:00
parent 891e5c2f12
commit 76bb2d08ac
21 changed files with 431 additions and 255 deletions

View File

@ -3,8 +3,11 @@ package me.totalfreedom.totalfreedommod.command;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Set;
import lombok.Getter;
import me.totalfreedom.totalfreedommod.FreedomService;
import me.totalfreedom.totalfreedommod.util.FLog;
import org.reflections.Reflections;
public class CommandLoader extends FreedomService
{
@ -52,6 +55,26 @@ public class CommandLoader extends FreedomService
return false;
}
public void loadCommands()
{
Reflections commandDir = new Reflections("me.totalfreedom.totalfreedommod.command");
Set<Class<? extends FreedomCommand>> commandClasses = commandDir.getSubTypesOf(FreedomCommand.class);
for (Class<? extends FreedomCommand> commandClass : commandClasses)
{
try
{
FLog.debug("Loading command class " + commandClass.getSimpleName());
add(commandClass.newInstance());
}
catch (InstantiationException | IllegalAccessException | ExceptionInInitializerError ex)
{
FLog.warning("Failed to register command: /" + commandClass.getSimpleName().replace("Command_" , ""));
}
}
}
public int getCommandAmount()
{
return commands.size();