SteamWar/BauSystem2.0
Archiviert
12
0

Fix some stuff
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful

Signed-off-by: yoyosource <yoyosource@nidido.de>
Dieser Commit ist enthalten in:
yoyosource 2022-06-11 16:26:10 +02:00
Ursprung a0476da4d8
Commit 11ae4721f6
7 geänderte Dateien mit 93 neuen und 14 gelöschten Zeilen

Datei anzeigen

@ -504,11 +504,14 @@ UNSIGN_HELP=§8/§eunsign §8- §7Make a signed book writable again
SIMULATOR_HELP = §8/§esimulator §8-§7 Gives you the simulator wand
SIMULATOR_CREATE_HELP = §8/§esimulator create §8[§7name§8] §8-§7 Create a new simulator
SIMULATOR_CHANGE_HELP = §8/§esimulator change §8-§7 Change your simulator wand selection
SIMULATOR_DELETE_HELP = §8/§esimulator delete §8[§7name§8] §8-§7 Deletes the simulator
SIMULATOR_START_HELP = §8/§esimulator start §8[§7name§8] §8-§7 Starts the simulator
SIMULATOR_NO_PERMS = §cYou are not allowed to use the simulator here
SIMULATOR_NO_SIM_IN_HAND = §cNo simulator item selected
SIMULATOR_GUI_SELECT_SIM = Simulator selection
SIMULATOR_NAME_ALREADY_EXISTS = §cSimulator already exists
SIMULATOR_NOT_EXISTS = §cSimulator does not exist
SIMULATOR_CREATE = §aSimulator created
SIMULATOR_EDIT_LOCATION = §7Edit position
SIMULATOR_EDIT_PROPERTIES = §7Edit properties
@ -538,6 +541,8 @@ SIMULATOR_POSITION_Y = §7y-Position
SIMULATOR_POSITION_Z = §7z-Position
SIMULATOR_BACK = §eBack
SIMULATOR_DELETED = §cSimulator deleted
## GUI
SIMULATOR_POSITION_EDIT = §eEdit position
SIMULATOR_POSITION_ADD = §eSet position
@ -551,9 +556,13 @@ SIMULATOR_GUI_TNT_SPAWN_LORE_6 = §7y§8: §e{0}
SIMULATOR_GUI_TNT_SPAWN_LORE_7 = §7z§8: §e{0}
SIMULATOR_GUI_TNT_GROUP_NAME = §eTNT group
SIMULATOR_GUI_TNT_GROUP_LORE_1 = §7Element count§8: §e{0}
SIMULATOR_GUI_TNT_GROUP_LORE_2 = §7Tick§8: §e{0}
SIMULATOR_GUI_TNT_GROUP_LORE_3 = §7
SIMULATOR_GUI_TNT_GROUP_LORE_4 = §7x§8: §e{0}
SIMULATOR_GUI_TNT_GROUP_LORE_5 = §7y§8: §e{0}
SIMULATOR_GUI_TNT_GROUP_LORE_6 = §7z§8: §e{0}
SIMULATOR_GUI_TNT_DISABLED = §cDisabled
SIMULATOR_GUI_NAME = Simulator
SIMULATOR_GUI_DELETE = §cDelete TNT
SIMULATOR_GUI_START = §eStart
SIMULATOR_GUI_AUTO_TRACE = §eAutoTrace§8: §7{0}
SIMULATOR_GUI_MOVE_ALL = §eMove all

Datei anzeigen

@ -505,11 +505,14 @@ UNSIGN_HELP=§8/§eunsign §8- §7Mache ein Buch beschreibbar
SIMULATOR_HELP = §8/§esimulator §8-§7 Legt dir den Simulatorstab ins Inventar
SIMULATOR_CREATE_HELP = §8/§esimulator create §8[§7name§8] §8-§7 Erstelle einen neuen Simulator
SIMULATOR_CHANGE_HELP = §8/§esimulator change §8-§7 Wechsel zu einem anderen Simulator
SIMULATOR_DELETE_HELP = §8/§esimulator delete §8[§7name§8] §8-§7 Löscht den Simulator
SIMULATOR_START_HELP = §8/§esimulator start §8[§7name§8] §8-§7 Startet die Simulation
SIMULATOR_NO_PERMS = §cDu darfst hier nicht den Simulator nutzen
SIMULATOR_NO_SIM_IN_HAND = §cKein Simulator Item gewählt
SIMULATOR_GUI_SELECT_SIM = Simulator wählen
SIMULATOR_NAME_ALREADY_EXISTS = §cSimulator existiert bereits
SIMULATOR_NOT_EXISTS = §cSimulator existiert nicht
SIMULATOR_CREATE = §aSimulator erstellt
SIMULATOR_EDIT_LOCATION = §7Editiere Positionen
SIMULATOR_EDIT_PROPERTIES = §7Editiere Eigenschaften
@ -539,19 +542,18 @@ SIMULATOR_POSITION_Y = §7y-Position
SIMULATOR_POSITION_Z = §7z-Position
SIMULATOR_BACK = §eZurück
SIMULATOR_DELETED = §cSimulator gelöscht
## GUI
SIMULATOR_POSITION_EDIT = §ePosition bearbeiten
SIMULATOR_POSITION_ADD = §ePosition setzen
SIMULATOR_GUI_TNT_SPAWN_NAME = §eTNT
SIMULATOR_GUI_TNT_SPAWN_LORE_1 = §7TNT-Anzahl§8: §e{0}
SIMULATOR_GUI_TNT_SPAWN_LORE_2 = §7Tick§8: §e{0}
SIMULATOR_GUI_TNT_SPAWN_LORE_3 = §7Lebensdauer§8: §e{0}
SIMULATOR_GUI_TNT_SPAWN_LORE_4 = §7
SIMULATOR_GUI_TNT_SPAWN_LORE_5 = §7x§8: §e{0}
SIMULATOR_GUI_TNT_SPAWN_LORE_6 = §7y§8: §e{0}
SIMULATOR_GUI_TNT_SPAWN_LORE_7 = §7z§8: §e{0}
SIMULATOR_GUI_TNT_GROUP_NAME = §eTNT Gruppe
SIMULATOR_GUI_TNT_GROUP_LORE_1 = §7Elementanzahl§8: §e{0}
SIMULATOR_GUI_TNT_DISABLED = §cDisabled
SIMULATOR_GUI_NAME = Kanonensimulator
SIMULATOR_GUI_DELETE = §cTNT löschen
SIMULATOR_GUI_START = §eStarten
SIMULATOR_GUI_AUTO_TRACE = §eAutoTrace§8: §7{0}
SIMULATOR_GUI_MOVE_ALL = §eAlle Verschieben

Datei anzeigen

@ -26,13 +26,13 @@ import de.steamwar.bausystem.features.simulator.gui.SimulatorSelectionGUI;
import de.steamwar.bausystem.linkage.LinkageType;
import de.steamwar.bausystem.linkage.Linked;
import de.steamwar.bausystem.utils.ItemUtils;
import de.steamwar.command.GuardCheckType;
import de.steamwar.command.GuardChecker;
import de.steamwar.command.GuardResult;
import de.steamwar.command.SWCommand;
import de.steamwar.command.*;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import java.util.Collection;
@Linked(LinkageType.COMMAND)
public class SimulatorCommand extends SWCommand {
@ -66,6 +66,45 @@ public class SimulatorCommand extends SWCommand {
BauSystem.MESSAGE.send("SIMULATOR_CREATE", p);
}
@Register(value = "delete", description = "SIMULATOR_DELETE_HELP")
public void delete(@Guard Player p, @Mapper("simulators") String name) {
if (!SimulatorStorage.getSimulatorNames().contains(name)) {
BauSystem.MESSAGE.send("SIMULATOR_NOT_EXISTS", p);
return;
}
SimulatorStorage.delete(name);
BauSystem.MESSAGE.send("SIMULATOR_DELETED", p);
}
@Register(value = "start", description = "SIMULATOR_START_HELP")
public void start(@Guard Player p, @Mapper("simulators") String name) {
TNTSimulator tntSimulator = SimulatorStorage.getSimulator(name);
if (tntSimulator == null) {
BauSystem.MESSAGE.send("SIMULATOR_NOT_EXISTS", p);
return;
}
// SimulatorStorage.start(name);
}
@Mapper("simulators")
public TypeMapper<String> allSimulators() {
return new TypeMapper<String>() {
@Override
public String map(CommandSender commandSender, String[] previousArguments, String s) {
if (SimulatorStorage.getSimulatorNames().contains(s)) {
return s;
} else {
return null;
}
}
@Override
public Collection<String> tabCompletes(CommandSender commandSender, String[] strings, String s) {
return SimulatorStorage.getSimulatorNames();
}
};
}
@ClassGuard(value = Player.class, local = true)
public GuardChecker guardChecker() {
return (commandSender, guardCheckType, strings, s) -> {

Datei anzeigen

@ -98,6 +98,10 @@ public class SimulatorStorage implements Enable, Disable {
}
}
public static void delete(String name) {
tntSimulators.remove(name);
}
public static void removeSimulator(ItemStack itemStack) {
if (!ItemUtils.isItem(itemStack, "simulator")) {
return;

Datei anzeigen

@ -32,6 +32,8 @@ import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.inventory.InventoryClickEvent;
import org.bukkit.event.player.PlayerDropItemEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerItemHeldEvent;
import org.bukkit.event.player.PlayerMoveEvent;
@ -47,7 +49,6 @@ import java.util.function.Function;
public class TNTSimulatorListener implements Listener {
private boolean permissionCheck(Player player) {
if (true) return true;
if (!Permission.hasPermission(player, Permission.WORLD)) {
BauSystem.MESSAGE.send("SIMULATOR_NO_PERMS", player);
return false;
@ -103,6 +104,11 @@ public class TNTSimulatorListener implements Listener {
simulatorShowHide(e.getPlayer(), i -> i.getItem(e.getPreviousSlot()), i -> i.getItem(e.getNewSlot()), e.getPlayer().getLocation());
}
@EventHandler
public void onPlayerDropItem(PlayerDropItemEvent e) {
simulatorShowHide(e.getPlayer(), i -> e.getItemDrop().getItemStack(), i -> null, e.getPlayer().getLocation());
}
private void simulatorShowHide(Player player, Function<PlayerInventory, ItemStack> oldItemFunction, Function<PlayerInventory, ItemStack> newItemFunction, Location location) {
TNTSimulator oldSimulator = SimulatorStorage.getSimulator(oldItemFunction.apply(player.getInventory()));
SimulatorCursor.hide(player, oldSimulator);

Datei anzeigen

@ -194,8 +194,14 @@ public class TNTElement implements SimulatorElement {
}
public void setTickOffset(int tickOffset) {
if (tickOffset < 0) tickOffset = 0;
if (tickOffset > 400) tickOffset = 400;
if (getTickOffset() - this.tickOffset + tickOffset < 0) {
this.tickOffset = -this.getParentTickOffset();
return;
}
if (getTickOffset() - this.tickOffset + tickOffset > 400) {
this.tickOffset = 400 - this.getParentTickOffset();
return;
}
this.tickOffset = tickOffset;
}

Datei anzeigen

@ -123,6 +123,11 @@ public class TNTGroup implements SimulatorElement {
public SWItem menu(Player p) {
List<String> lore = new ArrayList<>();
lore.add(BauSystem.MESSAGE.parse("SIMULATOR_GUI_TNT_GROUP_LORE_1", p, elements.size()));
lore.add(BauSystem.MESSAGE.parse("SIMULATOR_GUI_TNT_GROUP_LORE_2", p, tickOffset));
lore.add(BauSystem.MESSAGE.parse("SIMULATOR_GUI_TNT_GROUP_LORE_3", p));
lore.add(BauSystem.MESSAGE.parse("SIMULATOR_GUI_TNT_GROUP_LORE_4", p, position.getX()));
lore.add(BauSystem.MESSAGE.parse("SIMULATOR_GUI_TNT_GROUP_LORE_5", p, position.getY()));
lore.add(BauSystem.MESSAGE.parse("SIMULATOR_GUI_TNT_GROUP_LORE_6", p, position.getZ()));
if (disabled) {
lore.add("");
lore.add(BauSystem.MESSAGE.parse("SIMULATOR_GUI_TNT_DISABLED", p));
@ -141,6 +146,14 @@ public class TNTGroup implements SimulatorElement {
public void setTickOffset(int tickOffset) {
if (tickOffset < 0) tickOffset = 0;
if (tickOffset > 400) tickOffset = 400;
for (TNTElement tntElement : elements) {
if (tntElement.getTickOffset() - this.tickOffset + tickOffset < 0) {
tickOffset = Math.max(tickOffset, -tntElement.getOwnTickOffset());
}
if (tntElement.getTickOffset() - this.tickOffset + tickOffset > 400) {
tickOffset = Math.min(tickOffset, 400 - tntElement.getOwnTickOffset());
}
}
this.tickOffset = tickOffset;
}