13
0

Merge pull request 'Integrate replay and color options' (#115) from replayColor into master
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful

Reviewed-on: #115
Dieser Commit ist enthalten in:
Lixfel 2022-03-16 16:37:53 +01:00
Commit d96cf47eff
5 geänderte Dateien mit 68 neuen und 15 gelöschten Zeilen

Datei anzeigen

@ -85,7 +85,7 @@ public class GUI {
}
Material mat = SWItem.getMaterial(node.getItem());
inv.setItem(5, mat, "§e" + mat.name(), Arrays.asList("§7Zum Ändern", "§7anklicken"), false, click -> {
inv.setItem(node.isDir()?7:5, mat, "§e" + mat.name(), Arrays.asList("§7Zum Ändern", "§7anklicken"), false, click -> {
changeItem(player, node, back);
});
if(!node.isDir()) {
@ -96,6 +96,25 @@ public class GUI {
player.closeInventory();
SchematicCommandUtils.download(player, node);
});
if(node.getSchemtype().fightType()) {
inv.setItem(14, SWItem.getMaterial(node.replaceColor() ? "PINK_WOOL" : "LIGHT_GRAY_WOOL"), "Farbersetzung", Arrays.asList("§7Aktuell: " + (node.replaceColor()?"§aAn":"§cAus"), "§7Zum Ändern", "§7anklicken"), false, clickType -> {
node.setReplaceColor(!node.replaceColor());
info(player, node, back);
});
inv.setItem(13, SWItem.getMaterial(node.allowReplay() ? "EYE_OF_ENDER" : "ENDER_PEAR"), "Replay Wiedergabe", Arrays.asList("§7Aktuell: " + (node.replaceColor()?"§aAn":"§4Aus"), "§7Zum §lAusschaulten", "§7anklicken"), false, clickType -> {
if(node.allowReplay()) {
SWInventory confInv = new SWInventory(player, 9, "Wiedergabe der Schematic Dauerhaft sperren");
confInv.setItem(0, SWItem.getDye(1), (byte) 1, "§aAbbrechen", type -> {
info(player, node, back);
});
confInv.setItem(8, SWItem.getDye(10), (byte) 10, "§cBestätigen", type -> {
node.setAllowReplay(false);
info(player, node, back);
});
confInv.open();
}
});
}
}
SWItem skull = SWItem.getPlayerSkull("MHF_STEVE");
skull.setCallback(click -> {

Datei anzeigen

@ -30,7 +30,6 @@ import de.steamwar.schematicsystem.SchematicSystem;
import de.steamwar.sql.*;
import net.md_5.bungee.api.ChatColor;
import net.md_5.bungee.api.chat.ClickEvent;
import net.md_5.bungee.api.chat.ComponentBuilder;
import net.md_5.bungee.api.chat.HoverEvent;
import net.md_5.bungee.api.chat.TextComponent;
import org.bukkit.Bukkit;
@ -362,6 +361,19 @@ public class SchematicCommand extends SWCommand {
SchematicCommandUtils.download(player, node);
}
@Register("lockreplay")
public void lockreplay(Player player, SchematicNode node) {
node.setAllowReplay(false);
player.sendMessage(SchematicSystem.PREFIX + "Replays von Kämpfen mit " + node.getName() + " können ab sofort nicht mehr betrachtet werden");
}
@Register("replacecolor")
public void replacecolor(Player player, SchematicNode node) {
boolean state = !node.replaceColor();
node.setReplaceColor(state);
player.sendMessage(SchematicSystem.PREFIX + "In Kämpfen " + node.getName() + " werden pinke Blöcke " + (state ? "" : "nicht ") + "ersetzt");
}
@Register("dir")
@Register("ordner")
@Register("mkdir")

Datei anzeigen

@ -62,6 +62,8 @@ public class SchematicCommandHelp {
"§8/§7schem §emove §8[§7Schematic§8] [§7Neuer Pfad§8] - §7Verschiebe eine Schematic",
"§8/§7schem §erename §8[§7Schematic§8] [§7Neuer Name§8] - §7Gib der Schematic einen neuen Namen",
"§8/§7schem §echangetype §8[§7Schematic§8] - §7Ändert die Art deiner Schematic",
"§8/§7schem §elockreplay §8[§7Schematic§8] - §7Sperrt Replays mit der Schematic",
"§8/§7schem §ereplacecolor §8[§7Schematic§8] - §7Ändert Farbersetzung in der Arena",
"§8/§7schem §edelete §8[§7Schematic§8] - §7Löscht eine Schematic"
}),
MEMBER("Besitzrechte", "Schematics mit anderen teilen", new String[]{

Datei anzeigen

@ -195,6 +195,12 @@ public class SchematicCommandUtils {
if (node.getRank() > 0) {
player.sendMessage("§7Rang: §e" + node.getRank());
}
if (node.getSchemtype().fightType()) {
player.sendMessage("§7Farbersetzung: §e" + (node.replaceColor() ? "ja" : "nein"));
player.sendMessage("§7Replaywiedergabe: §e" + (node.allowReplay() ? "gestattet" : "untersagt"));
}
player.sendMessage("§7Format: §e" + (node.getSchemFormat() ? ".schem" : ".schematic"));
List<CheckedSchematic> checkedSchematics = CheckedSchematic.getLastDeclined(player.getUniqueId());
for (CheckedSchematic checkedSchematic : checkedSchematics) {
@ -407,23 +413,35 @@ public class SchematicCommandUtils {
}
if (extend == null) {
SWInventory inv = new SWInventory(player, 9, "Schematic ausfahren");
inv.setItem(0, SWItem.getDye(10), (byte) 10, "§eSchematic ausfahren", click -> {
new PrepareSchemPacket(SteamwarUser.get(player.getUniqueId()), node, type).send(player);
player.sendMessage(SchematicSystem.PREFIX + "§aDer Vorbereitungsserver wird gestartet");
player.closeInventory();
});
inv.setItem(8, SWItem.getDye(7), (byte) 7, "§eDirekt einsenden", click -> {
node.setSchemtype(type.checkType());
player.sendMessage(SchematicSystem.PREFIX + "§aDie Schematic wird zeitnah überprüft");
player.closeInventory();
});
inv.setCallback(-999, click -> player.closeInventory());
inv.open();
submitSchemGUI(player, node, type);
} else if (extend == SchematicCommand.Extend.AUSFAHREN) {
new PrepareSchemPacket(SteamwarUser.get(player.getUniqueId()), node, type).send(player);
player.sendMessage(SchematicSystem.PREFIX + "§aDer Vorbereitungsserver wird gestartet");
}
}
}
private static void submitSchemGUI(Player player, SchematicNode node, SchematicType type) {
SWInventory inv = new SWInventory(player, 9, "Schematic ausfahren");
inv.setItem(0, SWItem.getMaterial("SIGN"), node.allowReplay() ? "§cReplay sperren" : "§aReplay erlauben", click -> {
node.setAllowReplay(!node.allowReplay());
submitSchemGUI(player, node, type);
});
inv.setItem(1, SWItem.getMaterial(node.replaceColor() ? "PINK_WOOL" : "LIGHT_GRAY_WOOL"), node.replaceColor() ? "§cPink nicht zu Teamfarbe ersetzen" : "§aPink zu Teamfarbe ersetzen", click -> {
node.setReplaceColor(!node.replaceColor());
submitSchemGUI(player, node, type);
});
inv.setItem(7, SWItem.getDye(7), (byte) 7, "§eDirekt einsenden", click -> {
node.setSchemtype(type.checkType());
player.sendMessage(SchematicSystem.PREFIX + "§aDie Schematic wird zeitnah überprüft");
player.closeInventory();
});
inv.setItem(8, SWItem.getDye(10), (byte) 10, "§eSchematic ausfahren", click -> {
new PrepareSchemPacket(SteamwarUser.get(player.getUniqueId()), node, type).send(player);
player.sendMessage(SchematicSystem.PREFIX + "§aDer Vorbereitungsserver wird gestartet");
player.closeInventory();
});
inv.setCallback(-999, click -> player.closeInventory());
inv.open();
}
}

Datei anzeigen

@ -25,6 +25,7 @@
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArgs>-Xlint</compilerArgs>
</configuration>
</plugin>
</plugins>
@ -49,6 +50,7 @@
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.22</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>