@@ -0,0 +1,1525 @@
+package com.ktarian.kitling.factionsstub.command.chat;%0A %0Aimport org.spongepowered.api.text.Texts;%0Aimport org.spongepowered.api.util.command.spec.CommandSpec;%0Aimport org.spongepowered.api.util.command.CommandException;%0Aimport org.spongepowered.api.util.command.CommandResult;%0Aimport org.spongepowered.api.util.command.CommandSource;%0Aimport org.spongepowered.api.util.command.args.CommandContext;%0Aimport org.spongepowered.api.util.command.spec.CommandExecutor;%0A%0Aimport com.ktarian.kitling.factionsstub.command.chat.GlobalChatCommand;%0Aimport com.ktarian.kitling.factionsstub.command.chat.AlliedChatCommand;%0Aimport com.ktarian.kitling.factionsstub.command.chat.FactionChatCommand;%0A%0Apublic class ChatCommand implements CommandExecutor %7B%0A   %0A  public CommandResult execute(CommandSource src, CommandContext args) throws CommandException %7B%0A    src.sendMessage(Texts.of(%22Chat Stub.%22));%0A    // Stub. Need to rotate between calling the subcommands here.%0A    return CommandResult.success()%0A  %7D%0A   %0A  public CommandSpec init() %7B%0A    CommandSpec cmdGlobalChat = new GlobalChatCommand().init();%0A    CommandSpec cmdAlliedChat = new AlliedChatCommand().init();%0A    CommandSpec cmdFactionChat = new FactionChatCommand().init();%0A     %0A    return new CommandSpec.builder()%0A      .description(Texts.of(%22Factions chat mode switcher.%22))%0A      .permission(%22factions.chat%22)%0A      .executor(this)%0A      .child(cmdGlobalChat, %22global%22, %22g%22)%0A      .child(cmdAlliedChat, %22allied%22, %22a%22)%0A      .child(cmdFactionChat, %22faction%22, %22f%22)%0A      .build();%0A  %7D%0A%7D%0A

Create ChatCommand.java