add servereval lmfao
This commit is contained in:
parent
0438ebd641
commit
39196aef5b
3 changed files with 64 additions and 0 deletions
6
pom.xml
6
pom.xml
|
@ -90,6 +90,12 @@
|
||||||
<artifactId>snakeyaml</artifactId>
|
<artifactId>snakeyaml</artifactId>
|
||||||
<version>1.29</version>
|
<version>1.29</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.luaj</groupId>
|
||||||
|
<artifactId>luaj-jse</artifactId>
|
||||||
|
<version>3.0.1</version>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
|
|
|
@ -0,0 +1,57 @@
|
||||||
|
package me.chayapak1.chomens_bot.commands;
|
||||||
|
|
||||||
|
import me.chayapak1.chomens_bot.command.Command;
|
||||||
|
import me.chayapak1.chomens_bot.command.CommandContext;
|
||||||
|
import net.kyori.adventure.text.Component;
|
||||||
|
import net.kyori.adventure.text.format.NamedTextColor;
|
||||||
|
import org.luaj.vm2.Globals;
|
||||||
|
import org.luaj.vm2.LuaValue;
|
||||||
|
import org.luaj.vm2.lib.jse.CoerceJavaToLua;
|
||||||
|
import org.luaj.vm2.lib.jse.JsePlatform;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class ServerEvalCommand implements Command {
|
||||||
|
public String name() { return "servereval"; }
|
||||||
|
|
||||||
|
public String description() {
|
||||||
|
return "Evaluate codes using LuaJ";
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> usage() {
|
||||||
|
final List<String> usages = new ArrayList<>();
|
||||||
|
usages.add("<{code}>");
|
||||||
|
|
||||||
|
return usages;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> alias() {
|
||||||
|
final List<String> aliases = new ArrayList<>();
|
||||||
|
aliases.add("");
|
||||||
|
|
||||||
|
return aliases;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int trustLevel() {
|
||||||
|
return 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Component execute(CommandContext context, String[] args, String[] fullArgs) {
|
||||||
|
try {
|
||||||
|
Globals globals = JsePlatform.standardGlobals();
|
||||||
|
|
||||||
|
globals.set("bot", CoerceJavaToLua.coerce(context.bot()));
|
||||||
|
|
||||||
|
LuaValue chunk = globals.load(String.join(" ", args));
|
||||||
|
|
||||||
|
LuaValue output = chunk.call();
|
||||||
|
|
||||||
|
context.sendOutput(Component.text(output.toString()).color(NamedTextColor.GREEN));
|
||||||
|
} catch (Exception e) {
|
||||||
|
return Component.text(e.toString()).color(NamedTextColor.RED);
|
||||||
|
}
|
||||||
|
|
||||||
|
return Component.text("success");
|
||||||
|
}
|
||||||
|
}
|
|
@ -37,6 +37,7 @@ public class CommandHandlerPlugin {
|
||||||
registerCommand(new UrbanCommand());
|
registerCommand(new UrbanCommand());
|
||||||
registerCommand(new ClearChatCommand());
|
registerCommand(new ClearChatCommand());
|
||||||
registerCommand(new ListCommand());
|
registerCommand(new ListCommand());
|
||||||
|
registerCommand(new ServerEvalCommand());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void registerCommand (Command command) {
|
public void registerCommand (Command command) {
|
||||||
|
|
Loading…
Reference in a new issue