SteamWar/BauSystem
Archiviert
13
0

RedstoneTester #202

Manuell gemergt
YoyoNow hat 29 Commits von RedstoneTester nach master 2021-04-01 18:21:40 +02:00 zusammengeführt
Besitzer

Closes: #201

Closes: #201
YoyoNow hat 2 Commits 2021-03-07 12:33:27 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-07 12:36:24 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-07 12:37:11 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-07 12:37:56 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-07 12:48:39 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-07 16:19:50 +01:00 hinzugefügt
Add plugin.yml redstonetester -> rt
YoyoNow hat 1 Commit 2021-03-07 16:30:22 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-07 16:37:24 +01:00 hinzugefügt
Optimize CommandSimulatorTabCompleter
Optimize CommandTNTTabComplete
Add TabCompleteUtils.manageList
YoyoNow hat 1 Commit 2021-03-07 16:48:05 +01:00 hinzugefügt
Chaoscaot hat 2021-03-07 23:32:28 +01:00 Änderungen angefragt
@ -0,0 +21,4 @@
import java.util.List;
public class TabCompleteUtils {
Besitzer

Why The Hell brauch das eine eigene Klasse? Man kann auch das mit den PlayerUtils zusammenlegen und eine SWUtils o.Ä. machen

Why The Hell brauch das eine eigene Klasse? Man kann auch das mit den PlayerUtils zusammenlegen und eine SWUtils o.Ä. machen
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +31,4 @@
private void help(Player player) {
player.sendMessage("§7Messe die Zeit zwischen der Aktivierung zweier Redstone Komponenten");
player.sendMessage("§8/§eredstonetester help §8- §7Zeigt diese Nachricht");
Besitzer

Könnte man bitte mal versuchen diese Command Syntaxen Konsistent halten?

Könnte man bitte mal versuchen diese Command Syntaxen Konsistent halten?
Autor
Besitzer

Die erste Zeile ist die help nachricht um das feature zu verstehen.

Die erste Zeile ist die help nachricht um das feature zu verstehen.
Besitzer

Ich hab die andere Zeile makiert

Ich hab die andere Zeile makiert
YoyoNow markierte diese Unterhaltung als gelöst
@ -52,16 +53,7 @@ public class CommandTNTTabComplete implements TabCompleter {
if (args.length >= 2) {
return new ArrayList<>();
}
return manageList(tabComplete, args, 0);
Besitzer

Dat sind aber net alle TabCompleter (Kann man eig. in einem eig. PR machen)

Dat sind aber net alle TabCompleter (Kann man eig. in einem eig. PR machen)
Autor
Besitzer

Und ich mache die Änderung da, wo ich dann sehe, dass ich Code dopplung habe, welche ich geändert haben möchte. Dafür kriegt ihr keinen zweiten PR. Sorry das wäre mir zu blöd.

Und ich mache die Änderung da, wo ich dann sehe, dass ich Code dopplung habe, welche ich geändert haben möchte. Dafür kriegt ihr keinen zweiten PR. Sorry das wäre mir zu blöd.
YoyoNow markierte diese Unterhaltung als gelöst
YoyoNow hat 1 Commit 2021-03-08 01:24:43 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-08 08:40:44 +01:00 hinzugefügt
YoyoNow hat ein Review von Chaoscaot 2021-03-08 08:41:17 +01:00 angefragt
YoyoNow hat 1 Commit 2021-03-08 08:47:38 +01:00 hinzugefügt
Chaoscaot hat 2021-03-08 10:07:51 +01:00 Änderungen angefragt
@ -0,0 +25,4 @@
import java.util.List;
public class SWUtils {
Besitzer

Kann man das nicht in einen eigenen PR machen?

Kann man das nicht in einen eigenen PR machen?
Autor
Besitzer

Ich würde dies nicht machen, weil das nur unnütz neue PR's macht und ich ja genau hier die Verbesserung dadurch mache.

Ich würde dies nicht machen, weil das nur unnütz neue PR's macht und ich ja genau hier die Verbesserung dadurch mache.
Besitzer

Mach es für die Prüfbarkeit in einen eigenen PR, man sollte nicht zwei große änderungen bzw. eine Änderung und ein Refactor in einem PR machen

Mach es für die Prüfbarkeit in einen eigenen PR, man sollte nicht zwei große änderungen bzw. eine Änderung und ein Refactor in einem PR machen
YoyoNow markierte diese Unterhaltung als gelöst
@ -81,0 +79,4 @@
ItemStack redstoneWand = wand(player, RedstoneListener.WAND, "§8/§7redstonetester", null, "");
inv.setItem(37, redstoneWand, clickType -> {
player.closeInventory();
player.performCommand("redstonetester");
Besitzer

Wenn man auf den Wand klickt, dann sollte man auch den Wand bekommen. Und keine Help message

Wenn man auf den Wand klickt, dann sollte man auch den Wand bekommen. Und keine Help message
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +97,4 @@
Player player = event.getPlayer();
Block block = event.getClickedBlock();
event.setCancelled(true);
Besitzer

Der sollte schon irgendeine Permission haben e.g. Build

Der sollte schon irgendeine Permission haben e.g. Build
Autor
Besitzer

Warum sollte man hierfür irgendeine Berechtigung haben brauchen?

Warum sollte man hierfür irgendeine Berechtigung haben brauchen?
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +102,4 @@
case RIGHT_CLICK_AIR:
if (player.isSneaking()) {
playerMap.remove(event.getPlayer());
player.sendMessage(BauSystem.PREFIX + "Positionen gelöscht§8.");
Besitzer

Warum hat der Punkt eine andere Farbe?

Warum hat der Punkt eine andere Farbe?
Autor
Besitzer

Weil Sonderzeichen bei uns immer dunkel grau sind.

Weil Sonderzeichen bei uns immer dunkel grau sind.
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +119,4 @@
}
private void sendLocation(Player player, String prefix, Location location) {
player.sendMessage(BauSystem.PREFIX + prefix + "§8: §e" + locationToString(location));
Besitzer

Wie wäre es, wenn man auf die Nachricht klickt, und dann zu diesem Punkt TPt wird?

Wie wäre es, wenn man auf die Nachricht klickt, und dann zu diesem Punkt TPt wird?
Autor
Besitzer

Ich weiß nicht wie sinnvoll das ist, weil du ja explizit auf den block clickst.

Ich weiß nicht wie sinnvoll das ist, weil du ja explizit auf den block clickst.
YoyoNow markierte diese Unterhaltung als gelöst
YoyoNow hat 1 Commit 2021-03-08 10:14:41 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-08 10:56:27 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-08 11:01:05 +01:00 hinzugefügt
YoyoNow hat ein Review von Chaoscaot 2021-03-08 11:01:52 +01:00 angefragt
YoyoNow hat 1 Commit 2021-03-08 12:40:45 +01:00 hinzugefügt
Chaoscaot hat 2021-03-08 20:14:43 +01:00 Änderungen angefragt
@ -0,0 +59,4 @@
}
switch (args[0].toLowerCase()) {
case "wand":
Besitzer

Bei nur einem Subbefehl, sollte man es gleich lassen und bei dem /redstonetester befehl den Wand geben.

Bei nur einem Subbefehl, sollte man es gleich lassen und bei dem /redstonetester befehl den Wand geben.
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +38,4 @@
private List<String> commandTabComplete(Player player, String[] args) {
List<String> tabComplete = new ArrayList<>();
tabComplete.add("help");
Besitzer

Der ist garnicht in der Helpmessage

Der ist garnicht in der Helpmessage
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +106,4 @@
case RIGHT_CLICK_AIR:
if (player.isSneaking()) {
playerMap.remove(event.getPlayer());
player.sendMessage(BauSystem.PREFIX + "Positionen gelöscht§8.");
Besitzer

Der Punkt braucht keine andere Farbe

Der Punkt braucht keine andere Farbe
YoyoNow markierte diese Unterhaltung als gelöst
@ -38,1 +40,4 @@
private static long ticksSinceServerStart = 0;
@SuppressWarnings("java:S4276")
public static final Supplier<Long> currentTick = () -> ticksSinceServerStart;
Besitzer

STATIC FINAL IST IM UPPERCASE

STATIC FINAL IST IM UPPERCASE
Autor
Besitzer

Nein an der Stelle werde ich es getrosst ignorieren, weil es so einfacher zu benutzen ist!

Nein an der Stelle werde ich es getrosst ignorieren, weil es so einfacher zu benutzen ist!
YoyoNow markierte diese Unterhaltung als gelöst
YoyoNow hat 1 Commit 2021-03-08 20:21:15 +01:00 hinzugefügt
YoyoNow hat ein Review von Chaoscaot 2021-03-08 20:21:25 +01:00 angefragt
Chaoscaot hat 2021-03-10 17:32:08 +01:00 Änderungen angefragt
@ -0,0 +35,4 @@
}
}
public static List<String> manageList(List<String> strings, String[] args, int index) {
Besitzer

Die SWUtils in einen eigenen PR

Die `SWUtils` in einen eigenen PR
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +49,4 @@
return false;
}
player.sendMessage("§7Messe die Zeit zwischen der Aktivierung zweier Redstone Komponenten");
Besitzer

Hier noch der SW-Prefix

Hier noch der SW-Prefix
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +25,4 @@
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.data.BlockData;
Besitzer

Mit BlockData wird es in der 1.12 etwas eng, aka. Nicht existent

Mit BlockData wird es in der 1.12 etwas eng, aka. Nicht existent
Autor
Besitzer

Wie soll man es alternativ lösen?

Wie soll man es alternativ lösen?
YoyoNow markierte diese Unterhaltung als gelöst
YoyoNow hat 2 Commits 2021-03-12 09:21:11 +01:00 hinzugefügt
# Conflicts:
#	BauSystem_API/src/de/steamwar/bausystem/SWUtils.java
#	BauSystem_Main/src/de/steamwar/bausystem/commands/CommandDetonatorTabCompleter.java
#	BauSystem_Main/src/de/steamwar/bausystem/commands/CommandSimulatorTabCompleter.java
#	BauSystem_Main/src/de/steamwar/bausystem/commands/CommandTNTTabComplete.java
YoyoNow hat 1 Commit 2021-03-12 09:22:41 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-12 10:45:04 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-20 12:34:46 +01:00 hinzugefügt
Fix CommandGUI RedstoneTester loading
YoyoNow hat ein Review von Chaoscaot 2021-03-20 12:34:59 +01:00 angefragt
YoyoNow hat 1 Commit 2021-03-20 12:42:14 +01:00 hinzugefügt
Chaoscaot hat 2021-03-20 12:59:02 +01:00 Änderungen angefragt
@ -99,6 +99,9 @@ public class BauSystem extends JavaPlugin implements Listener {
getCommand("script").setExecutor(new CommandScript());
getCommand("simulator").setExecutor(new CommandSimulator());
getCommand("simulator").setTabCompleter(new CommandSimulatorTabCompleter());
if (Core.getVersion() >= 15) {
Besitzer

Das kann man auch mit der VersionedRunnable machen.
btw: Anstat es nur 1.15 zu machen, könnte man es auch machen, dass man sich den Byte des Aktuellen Blockstates speichert und wenn dieser sich ändert dann wird das der Tester getriggert.

Das kann man auch mit der VersionedRunnable machen. btw: Anstat es nur 1.15 zu machen, könnte man es auch machen, dass man sich den Byte des Aktuellen Blockstates speichert und wenn dieser sich ändert dann wird das der Tester getriggert.
Autor
Besitzer

Ich glaube trotzdem, dass diese Sache nur für die 1.15 unsere main bau version gebraucht wird. Und ich finde dies so schöner, weil man dann nicht noch die doppelte verschaltelung der VersionedRunnable hat, welche nur einen Wert hat. Sind 2 Objekte weniger für die VM.

Ich glaube trotzdem, dass diese Sache nur für die 1.15 unsere main bau version gebraucht wird. Und ich finde dies so schöner, weil man dann nicht noch die doppelte verschaltelung der VersionedRunnable hat, welche nur einen Wert hat. Sind 2 Objekte weniger für die VM.
Besitzer

Aber trotzdem sollte man es einheitlich halten, und da auch wenn dann eine VersionedRunnable nutzen.
Sonst wäre das jetzt der einzigste ort, wo das so gemacht werden würde.

Aber trotzdem sollte man es einheitlich halten, und da auch wenn dann eine VersionedRunnable nutzen. Sonst wäre das jetzt der einzigste ort, wo das so gemacht werden würde.
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +45,4 @@
public class RedstoneListener implements Listener {
private static class RedstoneTester {
Besitzer

Innere Klassen kommen nach unten

Innere Klassen kommen nach unten
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +80,4 @@
}
private Map<Player, RedstoneTester> playerMap = new HashMap<>();
Besitzer

Warum ist das nicht Static?

Warum ist das nicht Static?
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +81,4 @@
}
private Map<Player, RedstoneTester> playerMap = new HashMap<>();
public static final ItemStack WAND = new SWItem(Material.BLAZE_ROD, "§eRedstonetester", Arrays.asList("§eLinksklick Block §8- §7Setzt die 1. Position", "§eRechtsklick Block §8- §7Setzt die 2. Position", "§eShift-Rechtsklick Luft §8- §7Zurücksetzten"), false, null).getItemStack();
Besitzer

Static nach ganz oben

Static nach ganz oben
YoyoNow markierte diese Unterhaltung als gelöst
@ -37,2 +39,4 @@
private static long nanoDOffset = 0;
private static long ticksSinceServerStart = 0;
@SuppressWarnings("java:S4276")
Besitzer

Etwas unnötig, meine ich

Etwas unnötig, meine ich
YoyoNow markierte diese Unterhaltung als gelöst
YoyoNow hat 1 Commit 2021-03-20 13:09:29 +01:00 hinzugefügt
YoyoNow hat ein Review von Chaoscaot 2021-03-20 13:10:35 +01:00 angefragt
Chaoscaot hat 2021-03-23 01:15:18 +01:00 Änderungen angefragt
@ -81,0 +81,4 @@
if (Welt.noPermission(player, Permission.build))
return;
player.closeInventory();
if (Core.getVersion() >= 15) {
Besitzer

Diesen Check sollte man eher im redstonetester command machen

Diesen Check sollte man eher im redstonetester command machen
Autor
Besitzer

Ok mache ich am Wochenende

Ok mache ich am Wochenende
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +100,4 @@
private boolean validBlock(Player player, BlockData block) {
if (block instanceof Powerable) return true;
if (block instanceof Piston) return true;
player.sendMessage(BauSystem.PREFIX + "Unbekannte Position");
Besitzer

§c

§c
YoyoNow markierte diese Unterhaltung als gelöst
YoyoNow hat 1 Commit 2021-03-25 10:41:10 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-25 10:44:54 +01:00 hinzugefügt
YoyoNow hat ein Review von Chaoscaot 2021-03-25 10:45:18 +01:00 angefragt
Chaoscaot hat 2021-03-25 11:26:38 +01:00 Änderungen angefragt
@ -0,0 +45,4 @@
if (!(commandSender instanceof Player))
return false;
Player player = (Player) commandSender;
if (Core.getVersion() >= 15) {
Besitzer

Hier kann man auch noch die VersionedCallable nehmen. :D

Hier kann man auch noch die VersionedCallable nehmen. :D
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +166,4 @@
return;
}
if (tick != null && loc2.equals(location)) {
player.sendMessage(BauSystem.PREFIX + "Differenz§8: §e" + (TPSUtils.currentTick.get() - tick) + "§8 - §7in GameTicks");
Besitzer

Ticks sollte hier reichen, vllt. in Klammern hinter die Ticks, die Ticks / 2 -> RedstoneTicks. Dann kann man auch nur Ticks schreiben und dem spieler ist klar, was was ist.

Ticks sollte hier reichen, vllt. in Klammern hinter die Ticks, die Ticks / 2 -> RedstoneTicks. Dann kann man auch nur Ticks schreiben und dem spieler ist klar, was was ist.
YoyoNow markierte diese Unterhaltung als gelöst
YoyoNow hat 1 Commit 2021-03-25 12:33:58 +01:00 hinzugefügt
YoyoNow hat 1 Commit 2021-03-25 12:34:52 +01:00 hinzugefügt
YoyoNow hat ein Review von Chaoscaot 2021-03-25 12:35:02 +01:00 angefragt
Zeanon hat die Änderungen 2021-04-01 18:20:15 +02:00 genehmigt
Zeanon hat einen Kommentar hinterlassen
Mitglied

Sieht gut aus, hab jetzt nichts mehr gefunden, was ich anzukreiden hätte

Sieht gut aus, hab jetzt nichts mehr gefunden, was ich anzukreiden hätte
YoyoNow hat 13 Commits 2021-04-01 18:21:21 +02:00 hinzugefügt
YoyoNow hat Commit 1d865806e7 in master 2021-04-01 18:21:40 +02:00 manuell gemerged
YoyoNow löschte die Branch RedstoneTester 2021-04-01 18:21:53 +02:00
Dieses Repo ist archiviert. Du kannst Pull-Requests nicht kommentieren.
Keine Beschreibung angegeben.