BungeeMain / src / main / java / com / lifeknight / relaymcbungeemain / commands / staff / SudoCommand.java
SudoCommand.java
Raw
package com.lifeknight.relaymcbungeemain.commands.staff;

import com.lifeknight.relaymcbungeemain.commands.CommandUtilities;
import com.lifeknight.relaymcbungeemain.player.SmartPlayer;
import com.lifeknight.relayutils.basic.Miscellaneous;
import com.lifeknight.relayutils.basic.Text;
import net.md_5.bungee.api.CommandSender;
import net.md_5.bungee.api.plugin.Command;

public class SudoCommand extends Command {
    public SudoCommand() {
        super("sudo", null);
    }

    @Override
    public void execute(CommandSender sender, String[] arguments) {
        if (!CommandUtilities.isAdministrator(sender)) {
            CommandUtilities.sendInsufficientPermissionsMessage(sender);
            return;
        }

        if (arguments.length < 2) {
            CommandUtilities.sendUsageMessage(sender, "/sudo [player] [message]");
        } else {
            String name = arguments[0];
            SmartPlayer smartPlayer = SmartPlayer.getSmartPlayerOrNick(name);
            if (smartPlayer == null) {
                CommandUtilities.noPlayerFound(sender, name);
            } else if (!smartPlayer.isOnline()) {
                CommandUtilities.sendErrorMessage(sender, "That player is not online!");
            } else {
                String toChat = Text.concatenateArguments(Miscellaneous.from(arguments, 1));
                smartPlayer.chat(toChat);
                CommandUtilities.sendSuccessMessage(sender, "Made %s run %s.", smartPlayer.getFormattedName(), toChat);
            }
        }
    }
}