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
4 geänderte Dateien mit 4 neuen und 70 gelöschten Zeilen
Nur Änderungen aus Commit 6e18ba218f werden angezeigt - Alle Commits anzeigen

Datei anzeigen

@ -100,7 +100,6 @@ public class BauSystem extends JavaPlugin implements Listener {
getCommand("simulator").setExecutor(new CommandSimulator());
getCommand("simulator").setTabCompleter(new CommandSimulatorTabCompleter());
getCommand("redstonetester").setExecutor(new CommandRedstoneTester());
YoyoNow markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

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.
Veraltet
Review

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.
Veraltet
Review

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.
getCommand("redstonetester").setTabCompleter(new CommandRedstoneTesterTabCompleter());
getCommand("gui").setExecutor(new CommandGUI());
Bukkit.getPluginManager().registerEvents(this, this);

Datei anzeigen

@ -76,12 +76,12 @@ public class CommandGUI implements CommandExecutor, Listener {
player.performCommand("sim wand");
});
ItemStack redstoneWand = wand(player, RedstoneListener.WAND, "§8/§7redstonetester wand", Permission.build, "Du hast keine Buildrechte");
ItemStack redstoneWand = wand(player, RedstoneListener.WAND, "§8/§7redstonetester", Permission.build, "Du hast keine Buildrechte");
inv.setItem(37, redstoneWand, clickType -> {
if (Welt.noPermission(player, Permission.build))
return;
YoyoNow markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

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
player.closeInventory();
player.performCommand("redstonetester wand");
player.performCommand("redstonetester");
YoyoNow markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Diesen Check sollte man eher im redstonetester command machen

Diesen Check sollte man eher im redstonetester command machen
Veraltet
Review

Ok mache ich am Wochenende

Ok mache ich am Wochenende
});
inv.setItem(40, getMaterial("WOODEN_AXE", "WOOD_AXE"), "§eWorldedit Axt", getNoPermsLore(Arrays.asList("§8//§7wand"), player, "§cDu hast keine Worldeditrechte", Permission.worldedit), false, clickType -> {

Datei anzeigen

@ -31,11 +31,6 @@ import org.bukkit.entity.Player;
public class CommandRedstoneTester implements CommandExecutor {
private void help(Player player) {
player.sendMessage("§7Messe die Zeit zwischen der Aktivierung zweier Redstone Komponenten");
player.sendMessage("§8/§eredstonetester wand §8- §7Legt dir den Testerstab ins Inventar");
}
private boolean permissionCheck(Player player) {
YoyoNow markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

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

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

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

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

Ich hab die andere Zeile makiert

Ich hab die andere Zeile makiert
if (Welt.noPermission(player, Permission.build)) {
player.sendMessage(BauSystem.PREFIX + "§cDu darfst hier nicht den Redstonetester nutzen");
@ -49,23 +44,13 @@ public class CommandRedstoneTester implements CommandExecutor {
if (!(commandSender instanceof Player))
return false;
Player player = (Player) commandSender;
if (args.length == 0) {
help(player);
return false;
}
if (!permissionCheck(player)) {
YoyoNow markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Hier kann man auch noch die VersionedCallable nehmen. :D

Hier kann man auch noch die VersionedCallable nehmen. :D
return false;
}
switch (args[0].toLowerCase()) {
case "wand":
SWUtils.giveItemToPlayer(player, RedstoneListener.WAND);
break;
default:
help(player);
break;
}
player.sendMessage("§7Messe die Zeit zwischen der Aktivierung zweier Redstone Komponenten");
YoyoNow markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Hier noch der SW-Prefix

Hier noch der SW-Prefix
SWUtils.giveItemToPlayer(player, RedstoneListener.WAND);
return false;
}

Datei anzeigen

@ -1,50 +0,0 @@
/*
* This file is a part of the SteamWar software.
*
* Copyright (C) 2020 SteamWar.de-Serverteam
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
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.List;
public class CommandRedstoneTesterTabCompleter implements TabCompleter {
@Override
public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) {
if(!(sender instanceof Player)) return new ArrayList<>();
return commandTabComplete((Player) sender, args);
}
private List<String> commandTabComplete(Player player, String[] args) {
List<String> tabComplete = new ArrayList<>();
tabComplete.add("help");
tabComplete.add("wand");
if (args.length >= 2) {
return new ArrayList<>();
}
return SWUtils.manageList(tabComplete, args, 0);
}
}