SteamWar/BauSystem
Archiviert
13
0

Add SWUtils #205

Manuell gemergt
YoyoNow hat 1 Commits von SWUtils nach master 2021-03-12 10:38:49 +01:00 zusammengeführt
12 geänderte Dateien mit 60 neuen und 96 gelöschten Zeilen

Datei anzeigen

@ -19,7 +19,7 @@
package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.PlayerUtils;
import de.steamwar.bausystem.SWUtils;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
@ -28,6 +28,6 @@ class CommandDebugStick_15 {
private CommandDebugStick_15(){}
static void giveStick(Player player){
PlayerUtils.giveItemToPlayer(player, new ItemStack(Material.DEBUG_STICK));
SWUtils.giveItemToPlayer(player, new ItemStack(Material.DEBUG_STICK));
}
}

Datei anzeigen

@ -23,7 +23,10 @@ import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
public class PlayerUtils {
import java.util.ArrayList;
import java.util.List;
public class SWUtils {
public static void giveItemToPlayer(Player player, ItemStack itemStack) {
ItemStack current = player.getInventory().getItemInMainHand();
@ -33,4 +36,18 @@ public class PlayerUtils {
}
}
public static List<String> manageList(List<String> strings, String[] args, int index) {
strings = new ArrayList<>(strings);
for (int i = strings.size() - 1; i >= 0; i--) {
if (!strings.get(i).startsWith(args[index])) {
strings.remove(i);
}
}
return strings;
}
public static List<String> manageList(List<String> strings, String[] args) {
return manageList(strings, args, args.length - 1);
}
}

Datei anzeigen

@ -21,7 +21,7 @@ package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.BauSystem;
import de.steamwar.bausystem.Permission;
import de.steamwar.bausystem.PlayerUtils;
import de.steamwar.bausystem.SWUtils;
import de.steamwar.bausystem.world.Detonator;
import de.steamwar.bausystem.world.Welt;
import org.bukkit.command.Command;
@ -63,7 +63,7 @@ public class CommandDetonator implements CommandExecutor {
case "wand":
case "detonator":
case "item":
PlayerUtils.giveItemToPlayer(player, Detonator.WAND);
SWUtils.giveItemToPlayer(player, Detonator.WAND);
player.updateInventory();
break;
case "remove":

Datei anzeigen

@ -19,41 +19,26 @@
package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.SWUtils;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.command.TabCompleter;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class CommandDetonatorTabCompleter implements TabCompleter {
private List<String> arguments = new ArrayList<>(Arrays.asList("wand", "reset", "detonate", "remove"));
@Override
public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) {
if(!(sender instanceof Player)) return new ArrayList<>();
return detonaterTabComplete((Player) sender, args);
}
private List<String> detonaterTabComplete(Player player, String[] args) {
List<String> tabComplete = new ArrayList<>();
tabComplete.add("wand");
tabComplete.add("reset");
tabComplete.add("detonate");
tabComplete.add("remove");
if (args.length >= 2) {
if (args.length != 1) {
return new ArrayList<>();
}
return manageList(tabComplete, args, 0);
}
private List<String> manageList(List<String> strings, String[] args, int index) {
for (int i = strings.size() - 1; i >= 0; i--) {
if (!strings.get(i).startsWith(args[index])) {
strings.remove(i);
}
}
return strings;
return SWUtils.manageList(arguments, args);
}
}

Datei anzeigen

@ -2,7 +2,7 @@ package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.BauSystem;
import de.steamwar.bausystem.Permission;
import de.steamwar.bausystem.PlayerUtils;
import de.steamwar.bausystem.SWUtils;
import de.steamwar.bausystem.tracer.record.RecordStateMachine;
import de.steamwar.bausystem.tracer.show.TraceShowManager;
import de.steamwar.bausystem.world.*;
@ -587,7 +587,7 @@ public class CommandGUI implements CommandExecutor, Listener {
openBauGui(player);
OPEN_INVS.add(player);
} else if ("item".equalsIgnoreCase(strings[0])) {
PlayerUtils.giveItemToPlayer(player, new ItemStack(Material.NETHER_STAR));
SWUtils.giveItemToPlayer(player, new ItemStack(Material.NETHER_STAR));
}
return true;
}

Datei anzeigen

@ -21,7 +21,7 @@
package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.PlayerUtils;
import de.steamwar.bausystem.SWUtils;
import org.bukkit.Material;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
@ -68,7 +68,7 @@ public class CommandScript implements CommandExecutor {
if (!(sender instanceof Player)) {
return false;
}
PlayerUtils.giveItemToPlayer((Player) sender, BOOK);
SWUtils.giveItemToPlayer((Player) sender, BOOK);
return false;
}

Datei anzeigen

@ -22,7 +22,7 @@ package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.BauSystem;
import de.steamwar.bausystem.Permission;
import de.steamwar.bausystem.PlayerUtils;
import de.steamwar.bausystem.SWUtils;
import de.steamwar.bausystem.world.TNTSimulator;
import de.steamwar.bausystem.world.Welt;
import org.bukkit.command.Command;
@ -59,7 +59,7 @@ public class CommandSimulator implements CommandExecutor {
if (args.length == 1) {
switch (args[0].toLowerCase()) {
case "wand":
PlayerUtils.giveItemToPlayer(player, TNTSimulator.WAND);
SWUtils.giveItemToPlayer(player, TNTSimulator.WAND);
break;
case "start":
TNTSimulator.get(player).start();

Datei anzeigen

@ -20,41 +20,27 @@
package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.SWUtils;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.command.TabCompleter;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class CommandSimulatorTabCompleter implements TabCompleter {
private List<String> arguments = new ArrayList<>(Arrays.asList("wand", "start", "delete"));
@Override
public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) {
if(!(sender instanceof Player)) return new ArrayList<>();
return simulatorTabComplete((Player) sender, args);
}
private List<String> simulatorTabComplete(Player player, String[] args) {
List<String> tabComplete = new ArrayList<>();
tabComplete.add("wand");
tabComplete.add("start");
tabComplete.add("delete");
if (args.length >= 2) {
if (args.length != 1) {
return new ArrayList<>();
}
return manageList(tabComplete, args, 0);
}
private List<String> manageList(List<String> strings, String[] args, int index) {
for (int i = strings.size() - 1; i >= 0; i--) {
if (!strings.get(i).startsWith(args[index])) {
strings.remove(i);
}
}
return strings;
return SWUtils.manageList(arguments, args);
}
}

Datei anzeigen

@ -20,7 +20,7 @@
package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.BauSystem;
import de.steamwar.bausystem.PlayerUtils;
import de.steamwar.bausystem.SWUtils;
import de.steamwar.inventory.SWItem;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
@ -47,7 +47,7 @@ public class CommandSkull implements CommandExecutor {
assert sm != null;
sm.setDisplayName("§e" + args[0] + "§8s Kopf");
is.setItemMeta(sm);
PlayerUtils.giveItemToPlayer(p, is);
SWUtils.giveItemToPlayer(p, is);
return false;
}

Datei anzeigen

@ -21,6 +21,7 @@
package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.SWUtils;
import de.steamwar.bausystem.world.Region;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@ -28,40 +29,24 @@ import org.bukkit.command.TabCompleter;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class CommandTNTTabComplete implements TabCompleter {
private List<String> arguments = new ArrayList<>(Arrays.asList("an", "on", "aus", "off"));
public CommandTNTTabComplete() {
if (Region.buildAreaEnabled()) arguments.addAll(Arrays.asList("testblock", "tb"));
}
@Override
public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) {
if(!(sender instanceof Player)) return new ArrayList<>();
return tntTabComplete(args);
}
private List<String> tntTabComplete(String[] args) {
List<String> tabComplete = new ArrayList<>();
tabComplete.add("an");
tabComplete.add("on");
tabComplete.add("aus");
tabComplete.add("off");
if (Region.buildAreaEnabled()) {
tabComplete.add("testblock");
tabComplete.add("tb");
}
if (args.length >= 2) {
if (args.length != 1) {
return new ArrayList<>();
}
return manageList(tabComplete, args, 0);
}
private List<String> manageList(List<String> strings, String[] args, int index) {
for (int i = strings.size() - 1; i >= 0; i--) {
if (!strings.get(i).startsWith(args[index])) {
strings.remove(i);
}
}
return strings;
return SWUtils.manageList(arguments, args);
}
}

Datei anzeigen

@ -19,10 +19,12 @@
package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.SWUtils;
import de.steamwar.bausystem.world.TPSUtils;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.command.TabCompleter;
import org.bukkit.entity.Player;
import java.util.ArrayList;
import java.util.Arrays;
@ -38,16 +40,11 @@ public class CommandTPSLimiterTabComplete implements TabCompleter {
@Override
public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) {
if(!(sender instanceof Player)) return new ArrayList<>();
if (args.length != 1) {
return new ArrayList<>();
}
List<String> validArguments = new ArrayList<>(arguments.size());
for (String s : arguments) {
if (s.startsWith(args[0])) {
validArguments.add(s);
}
}
return validArguments;
return SWUtils.manageList(arguments, args);
}
}

Datei anzeigen

@ -19,6 +19,7 @@
package de.steamwar.bausystem.commands;
import de.steamwar.bausystem.SWUtils;
import de.steamwar.bausystem.tracer.record.RecordStateMachine;
import de.steamwar.bausystem.tracer.record.RecordStatus;
import org.bukkit.command.Command;
@ -49,19 +50,12 @@ public class CommandTraceTabCompleter implements TabCompleter {
return tracerTabComplete((Player) sender, args);
}
private List<String> tracerTabComplete(Player player, String[] args) {
List<String> tabComplete = new ArrayList<>();
private List<String> tracerTabComplete(Player player, java.lang.String[] args) {
List<java.lang.String> tabComplete = new ArrayList<>();
for (TabComplete tab : tabCompletes) {
if (tab.test(player, args)) tabComplete.addAll(Arrays.asList(tab.getTabCompletes()));
}
return manageList(tabComplete, args);
}
private List<String> manageList(List<String> strings, String[] args) {
for (int i = strings.size() - 1; i >= 0; i--) {
if (!strings.get(i).startsWith(args[args.length - 1])) strings.remove(i);
}
return strings;
return SWUtils.manageList(tabComplete, args);
}
private static class TabComplete {