SteamWar/BauSystem2.0
Archiviert
12
0
Dieser Commit ist enthalten in:
yoyosource 2021-05-01 22:00:48 +02:00
Ursprung 5a8bf318e3
Commit a99542bd86
5 geänderte Dateien mit 59 neuen und 7 gelöschten Zeilen

Datei anzeigen

@ -1,4 +1,56 @@
package de.steamwar.bausystem.features.script.command.io; package de.steamwar.bausystem.features.script.command.io;
public class Input { import de.steamwar.bausystem.BauSystem;
import de.steamwar.bausystem.features.script.ScriptExecutor;
import de.steamwar.bausystem.features.script.SpecialCommand;
import de.steamwar.bausystem.features.script.variables.Value;
import de.steamwar.inventory.SWAnvilInv;
import org.bukkit.ChatColor;
public class Input implements SpecialCommand {
@Override
public String[] description() {
return new String[]{
"§einput §8<§7Variable§8> §8<§7Text§8>",
"",
"§7Fordere eine Eingabe von dem Spieler, welche in die Variable geschrieben wird. Der Text ist optional."
};
}
@Override
public String command() {
return "input";
}
@Override
public boolean execute(String[] command, ScriptExecutor scriptExecutor) {
if (command.length <= 1) {
scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas erste Argument fehlt und sollte ein Name sein");
return true;
}
StringBuilder st = new StringBuilder();
for (int i = 2; i < command.length; i++) {
if (i != 2) {
st.append(" ");
}
st.append(command[i]);
}
SWAnvilInv swAnvilInv = new SWAnvilInv(scriptExecutor.getPlayer(), ChatColor.translateAlternateColorCodes('&', st.toString()));
swAnvilInv.setCallback(s -> {
try {
long value = Long.parseLong(s);
scriptExecutor.getLocalVariables().putValue(command[1], new Value.LongValue(value));
} catch (NumberFormatException e) {
if (s.equalsIgnoreCase("true") || s.equalsIgnoreCase("false")) {
scriptExecutor.getLocalVariables().putValue(command[1], new Value.BooleanValue(s.equalsIgnoreCase("true")));
} else {
scriptExecutor.getLocalVariables().putValue(command[1], new Value.StringValue(s));
}
}
scriptExecutor.resume();
});
swAnvilInv.addCloseCallback(scriptExecutor::resume);
return false;
}
} }

Datei anzeigen

@ -27,11 +27,11 @@ public class Global implements SpecialCommand {
@Override @Override
public boolean execute(String[] command, ScriptExecutor scriptExecutor) { public boolean execute(String[] command, ScriptExecutor scriptExecutor) {
if (command.length <= 1) { if (command.length <= 1) {
scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas erste Argument fehlt und sollte ein Name"); scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas erste Argument fehlt und sollte ein Name sein");
return true; return true;
} }
if (command.length <= 2) { if (command.length <= 2) {
scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas zweite Argument fehlt und sollte ein Wert"); scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas zweite Argument fehlt und sollte ein Wert sein");
return true; return true;
} }
String varName = command[1]; String varName = command[1];

Datei anzeigen

@ -26,7 +26,7 @@ public class Unglobal implements SpecialCommand {
@Override @Override
public boolean execute(String[] command, ScriptExecutor scriptExecutor) { public boolean execute(String[] command, ScriptExecutor scriptExecutor) {
if (command.length <= 1) { if (command.length <= 1) {
scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas erste Argument fehlt und sollte ein Name"); scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas erste Argument fehlt und sollte ein Name sein");
return true; return true;
} }
scriptExecutor.getGlobalVariables().removeValue(command[1]); scriptExecutor.getGlobalVariables().removeValue(command[1]);

Datei anzeigen

@ -26,7 +26,7 @@ public class Unvar implements SpecialCommand {
@Override @Override
public boolean execute(String[] command, ScriptExecutor scriptExecutor) { public boolean execute(String[] command, ScriptExecutor scriptExecutor) {
if (command.length <= 1) { if (command.length <= 1) {
scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas erste Argument fehlt und sollte ein Name"); scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas erste Argument fehlt und sollte ein Name sein");
return true; return true;
} }
scriptExecutor.getLocalVariables().removeValue(command[1]); scriptExecutor.getLocalVariables().removeValue(command[1]);

Datei anzeigen

@ -27,11 +27,11 @@ public class Var implements SpecialCommand {
@Override @Override
public boolean execute(String[] command, ScriptExecutor scriptExecutor) { public boolean execute(String[] command, ScriptExecutor scriptExecutor) {
if (command.length <= 1) { if (command.length <= 1) {
scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas erste Argument fehlt und sollte ein Name"); scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas erste Argument fehlt und sollte ein Name sein");
return true; return true;
} }
if (command.length <= 2) { if (command.length <= 2) {
scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas zweite Argument fehlt und sollte ein Wert"); scriptExecutor.getPlayer().sendMessage(BauSystem.PREFIX + "§cDas zweite Argument fehlt und sollte ein Wert sein");
return true; return true;
} }
String varName = command[1]; String varName = command[1];