Schemnodes Schematic System #93
@ -216,29 +216,31 @@ public class SchematicCommand extends SWCommand {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Register("addmember")
|
@Register("addmember")
|
||||||
public void addMember(Player player, SchematicNode node, SteamwarUser target) {
|
public void addMember(Player player, SchematicNode node, SteamwarUser... targets) {
|
||||||
SteamwarUser user = getUser(player);
|
SteamwarUser user = getUser(player);
|
||||||
if (node.getOwner() != user.getId()) {
|
if (node.getOwner() != user.getId()) {
|
||||||
player.sendMessage(SchematicSystem.PREFIX + "§cDu kannst nur auf deine eigenen Sachen jemanden hinzufügen.");
|
player.sendMessage(SchematicSystem.PREFIX + "§cDu kannst nur auf deine eigenen Sachen jemanden hinzufügen.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
List<SteamwarUser> added = new ArrayList<>();
|
||||||
|
for (SteamwarUser target: targets) {
|
||||||
if (user.getId() == target.getId()) {
|
if (user.getId() == target.getId()) {
|
||||||
player.sendMessage(SchematicSystem.PREFIX + "§cAlso bitte: Das ist deine eigene Schematic!");
|
player.sendMessage(SchematicSystem.PREFIX + "§cAlso bitte: Das ist deine eigene Schematic!");
|
||||||
return;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (target.getId() == 0) {
|
if (target.getId() == 0) {
|
||||||
player.sendMessage(SchematicSystem.PREFIX + "§cFür Public-Anträge bitte bei der Moderation melden");
|
player.sendMessage(SchematicSystem.PREFIX + "§cFür Public-Anträge bitte bei der Moderation melden");
|
||||||
return;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (NodeMember.getNodeMember(node.getId(), target.getId()) != null) {
|
if (NodeMember.getNodeMember(node.getId(), target.getId()) != null) {
|
||||||
player.sendMessage(SchematicSystem.PREFIX + "§cDieser Spieler ist bereits auf diese Schematic geaddet");
|
player.sendMessage(SchematicSystem.PREFIX + "§c" + target.getUserName() + " ist bereits auf diese Schematic geaddet");
|
||||||
return;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
NodeMember.createNodeMember(node.getId(), target.getId());
|
NodeMember.createNodeMember(node.getId(), target.getId());
|
||||||
player.sendMessage(SchematicSystem.PREFIX + "Der Spieler §e" + target.getUserName() + " §7hat nun Zugriff auf die Schematic §e" + node.generateBreadcrumbs(user));
|
added.add(target);
|
||||||
|
|
||||||
Player t = Bukkit.getPlayer(target.getUUID());
|
Player t = Bukkit.getPlayer(target.getUUID());
|
||||||
if (t != null) {
|
if (t != null) {
|
||||||
@ -246,6 +248,11 @@ public class SchematicCommand extends SWCommand {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(!added.isEmpty()) {
|
||||||
|
player.sendMessage(SchematicSystem.PREFIX + (added.size()>1?"Die":"Der") + " Spieler §e" + added.stream().map(SteamwarUser::getUserName).reduce((s, s2) -> s + ", " + s2).get() + " §7" + (added.size()>1?"haben":"hat") + " nun Zugriff auf die Schematic §e" + node.generateBreadcrumbs(user));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Register("delmember")
|
@Register("delmember")
|
||||||
@Register("remmember")
|
@Register("remmember")
|
||||||
public void delMember(Player player, SchematicNode node, @Mapper("memberMapper") NodeMember member) {
|
public void delMember(Player player, SchematicNode node, @Mapper("memberMapper") NodeMember member) {
|
||||||
|
@ -32,7 +32,6 @@ public class SchematicCommandHelp {
|
|||||||
|
|
||||||
public static void printHelpMainPage(Player player) {
|
public static void printHelpMainPage(Player player) {
|
||||||
player.sendMessage("§e§lSchematicSystem §8§lHilfe");
|
player.sendMessage("§e§lSchematicSystem §8§lHilfe");
|
||||||
Chaoscaot markierte diese Unterhaltung als gelöst
Veraltet
|
|||||||
player.sendMessage("§7Kategorien§8:");
|
|
||||||
for (HelpPage page : HelpPage.values()) {
|
for (HelpPage page : HelpPage.values()) {
|
||||||
Chaoscaot markierte diese Unterhaltung als gelöst
Veraltet
Lixfel
hat
§7Kategorien§8: §7Kategorien§8:
|
|||||||
TextComponent pageComp = new TextComponent(page.mainText);
|
TextComponent pageComp = new TextComponent(page.mainText);
|
||||||
pageComp.setColor(ChatColor.GRAY);
|
pageComp.setColor(ChatColor.GRAY);
|
||||||
@ -51,7 +50,7 @@ public class SchematicCommandHelp {
|
|||||||
|
|
||||||
public enum HelpPage {
|
public enum HelpPage {
|
||||||
|
|
||||||
ANSICHT("Ansichtbefehle", "Suche oder lade Schematics", new String[]{
|
ANSICHT("Finden & Laden", "Suche oder lade Schematics", new String[]{
|
||||||
"§8/§7schem §einfo §8[§7Schematic§8] - §7Zeigt dir Informationen zur Schematic",
|
"§8/§7schem §einfo §8[§7Schematic§8] - §7Zeigt dir Informationen zur Schematic",
|
||||||
Chaoscaot markierte diese Unterhaltung als gelöst
Veraltet
Lixfel
hat
Suche oder lade Schematics (dein Hilfetext ist irgendwie schlicht falsch) Suche oder lade Schematics (dein Hilfetext ist irgendwie schlicht falsch)
|
|||||||
"§8/§7schem §elist §8- §7Zeigt dir deine Schematics an",
|
"§8/§7schem §elist §8- §7Zeigt dir deine Schematics an",
|
||||||
Chaoscaot markierte diese Unterhaltung als gelöst
Veraltet
Lixfel
hat
schem eigentlich immer noch in §7, erst der Subcommand in §e. schem eigentlich immer noch in §7, erst der Subcommand in §e.
|
|||||||
"§8/§7schem §elist public §8- §7Zeigt alle Public-Schematics",
|
"§8/§7schem §elist public §8- §7Zeigt alle Public-Schematics",
|
||||||
@ -59,7 +58,7 @@ public class SchematicCommandHelp {
|
|||||||
"§8/§7schem §eload §8[§7Schematic§8] - §7Lädt eine Schematic",
|
"§8/§7schem §eload §8[§7Schematic§8] - §7Lädt eine Schematic",
|
||||||
"§8/§7schem §edownload §8[§7Schematic§8] - §7Gibt dir einen Downloadlink (1 min gültig)"
|
"§8/§7schem §edownload §8[§7Schematic§8] - §7Gibt dir einen Downloadlink (1 min gültig)"
|
||||||
}),
|
}),
|
||||||
BEARBEITUNG("Bearbeitungsbefehle", "Modifizierung von Schematics und Ordnern", new String[]{
|
BEARBEITUNG("Speichern & Bearbeiten", "Modifizierung von Schematics und Ordnern", new String[]{
|
||||||
"§8/§7schem §esave §8[§7Schematic§8] - §7Speichert dein Clipboard als Schematic",
|
"§8/§7schem §esave §8[§7Schematic§8] - §7Speichert dein Clipboard als Schematic",
|
||||||
"§8/§7schem §eordner §8[§7Ordner§8] - §7Erstelle einen leeren Ordner",
|
"§8/§7schem §eordner §8[§7Ordner§8] - §7Erstelle einen leeren Ordner",
|
||||||
"§8/§7schem §emove §8[§7Schematic§8] [§7Neuer Pfad§8] - §7Verschiebe eine Schematic",
|
"§8/§7schem §emove §8[§7Schematic§8] [§7Neuer Pfad§8] - §7Verschiebe eine Schematic",
|
||||||
Chaoscaot markierte diese Unterhaltung als gelöst
Veraltet
Lixfel
hat
↓leer ↓leer
|
|||||||
@ -67,7 +66,7 @@ public class SchematicCommandHelp {
|
|||||||
"§8/§7schem §echangetype §8[§7Schematic§8] - §7Ändert die Art deiner Schematic",
|
"§8/§7schem §echangetype §8[§7Schematic§8] - §7Ändert die Art deiner Schematic",
|
||||||
"§8/§7schem §edelete §8[§7Schematic§8] - §7Löscht eine Schematic"
|
"§8/§7schem §edelete §8[§7Schematic§8] - §7Löscht eine Schematic"
|
||||||
}),
|
}),
|
||||||
MEMBER("Memberbefehle", "Schematics mit anderen teilen", new String[]{
|
MEMBER("Besitzrechte", "Schematics mit anderen teilen", new String[]{
|
||||||
"§8/§7schem §eaddmember §8[§7Schematic§8] §8[§7Spieler§8] - §7Fügt einen Spieler zu einer Schematic hinzu",
|
"§8/§7schem §eaddmember §8[§7Schematic§8] §8[§7Spieler§8] - §7Fügt einen Spieler zu einer Schematic hinzu",
|
||||||
"§8/§7schem §edelmember §8[§7Schematic§8] §8[§7Spieler§8] - §7Entfernt einen Spieler von einer Schematic",
|
"§8/§7schem §edelmember §8[§7Schematic§8] §8[§7Spieler§8] - §7Entfernt einen Spieler von einer Schematic",
|
||||||
"§8/§7schem §eclearmember §8[§7Schematic§8] - §7Entfernt alle Spieler von der Schematic",
|
"§8/§7schem §eclearmember §8[§7Schematic§8] - §7Entfernt alle Spieler von der Schematic",
|
||||||
|
@ -43,9 +43,9 @@ public class SchematicCommandUtils {
|
|||||||
|
|
||||||
private static final int CHUNK_SIZE = 15;
|
private static final int CHUNK_SIZE = 15;
|
||||||
private static final List<Player> PUBLIC_TOGGLED = new ArrayList<>();
|
private static final List<Player> PUBLIC_TOGGLED = new ArrayList<>();
|
||||||
|
private static final List<String> FORBIDDEN_NAMES = Collections.unmodifiableList(Arrays.asList("public"));
|
||||||
|
|
||||||
private SchematicCommandUtils() {
|
private SchematicCommandUtils() {}
|
||||||
}
|
|
||||||
|
|
||||||
public static boolean invalidSchemName(Player player, String[] layers) {
|
public static boolean invalidSchemName(Player player, String[] layers) {
|
||||||
for (String layer : layers) {
|
for (String layer : layers) {
|
||||||
@ -64,6 +64,10 @@ public class SchematicCommandUtils {
|
|||||||
player.sendMessage(SchematicSystem.PREFIX + "§cDer angegebene Schematicname enthält verbotene Zeichen");
|
player.sendMessage(SchematicSystem.PREFIX + "§cDer angegebene Schematicname enthält verbotene Zeichen");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
if(FORBIDDEN_NAMES.contains(layer.toLowerCase())) {
|
||||||
|
player.sendMessage(SchematicSystem.PREFIX + "§cDer Pfad darf nicht \"§l" + layer + "§c\" enthalten");
|
||||||
|
return true;
|
||||||
Chaoscaot markierte diese Unterhaltung als gelöst
Veraltet
Lixfel
hat
:( :(
|
|||||||
|
}
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
In neuem Issue referenzieren
Einen Benutzer sperren
Hässlicher gehts ja wohl kaum.
§e§lSchematicSystem §8§lHilfe
Oder einfach gar kein Header?