src/main/java/com/viper/autosortchest/Main.java aktualisiert
This commit is contained in:
@@ -38,7 +38,7 @@ public class Main extends JavaPlugin implements Listener, CommandExecutor {
|
|||||||
private FileConfiguration config;
|
private FileConfiguration config;
|
||||||
private final Map<UUID, Map<Material, Long>> fullChestMessageTracker = new HashMap<>();
|
private final Map<UUID, Map<Material, Long>> fullChestMessageTracker = new HashMap<>();
|
||||||
private static final long MESSAGE_COOLDOWN = 5 * 60 * 1000; // 5 Minuten in Millisekunden
|
private static final long MESSAGE_COOLDOWN = 5 * 60 * 1000; // 5 Minuten in Millisekunden
|
||||||
private static final String CONFIG_VERSION = "1.3";
|
private static final String CONFIG_VERSION = "1.4";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEnable() {
|
public void onEnable() {
|
||||||
@@ -79,6 +79,16 @@ public class Main extends JavaPlugin implements Listener, CommandExecutor {
|
|||||||
updateConfig();
|
updateConfig();
|
||||||
updateExistingSigns();
|
updateExistingSigns();
|
||||||
|
|
||||||
|
// ASCII ART LOGO
|
||||||
|
getLogger().info("");
|
||||||
|
getLogger().info(" ___ _ _____ _ _____ _ _ ");
|
||||||
|
getLogger().info(" / _ \\ | | / ___| | | / __ \\ | | | ");
|
||||||
|
getLogger().info("/ /_\\ \\_ _| |_ ___ \\ `--. ___ _ __| |_| / \\/ |__ ___ ___| |_ ");
|
||||||
|
getLogger().info("| _ | | | | __/ _ \\ `--. \\/ _ \\| '__| __| | | '_ \\ / _ \\/ __| __|");
|
||||||
|
getLogger().info("| | | | |_| | || (_) /\\__/ / (_) | | | |_| \\__/\\ | | | __/\\__ \\ |_ ");
|
||||||
|
getLogger().info("\\_| |_/\\__,_|\\__\\___/\\____/ \\___/|_| \\__|\\____/_| |_|\\___||___/\\__|");
|
||||||
|
getLogger().info("");
|
||||||
|
|
||||||
getLogger().info("AutoSortChest Plugin aktiviert! Version: " + getDescription().getVersion());
|
getLogger().info("AutoSortChest Plugin aktiviert! Version: " + getDescription().getVersion());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -720,17 +730,11 @@ public class Main extends JavaPlugin implements Listener, CommandExecutor {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 2. FALL: ITEM ZUWEISEN (Klick + Item in Hand)
|
|
||||||
String line2Clean = ChatColor.stripColor((String) (lines[2] != null ? lines[2] : ""));
|
|
||||||
|
|
||||||
if (line2Clean.isEmpty()) {
|
// 2. FALL: ITEM ZUWEISEN / AKTUALISIEREN (Klick + Item in Hand)
|
||||||
if (itemInHand == null || itemInHand.getType() == Material.AIR) {
|
// ERWEITERUNG: Wir prüfen nicht mehr, ob Zeile 2 leer ist. Wenn ein Item in der Hand ist, wird es aktualisiert.
|
||||||
player.sendMessage(getMessage("no-item-in-hand"));
|
if (itemInHand != null && itemInHand.getType() != Material.AIR) {
|
||||||
event.setCancelled(true);
|
// Prüfe, ob der Spieler das Recht hat (Owner oder unbeansprucht)
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Wenn das Schild noch KEINEN Owner hat, darf jeder es "übernehmen"
|
|
||||||
if (!pureOwnerName.isEmpty() && !pureOwnerName.equalsIgnoreCase("Unknown") && !isOwner) {
|
if (!pureOwnerName.isEmpty() && !pureOwnerName.equalsIgnoreCase("Unknown") && !isOwner) {
|
||||||
player.sendMessage(getMessage("not-your-chest"));
|
player.sendMessage(getMessage("not-your-chest"));
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
@@ -743,7 +747,7 @@ public class Main extends JavaPlugin implements Listener, CommandExecutor {
|
|||||||
|
|
||||||
sign.setLine(0, getSignColor(colorType, "line1") + "[asc]");
|
sign.setLine(0, getSignColor(colorType, "line1") + "[asc]");
|
||||||
sign.setLine(1, getSignColor(colorType, "line2") + "ziel");
|
sign.setLine(1, getSignColor(colorType, "line2") + "ziel");
|
||||||
sign.setLine(2, getSignColor(colorType, "line3") + itemInHand.getType().name());
|
sign.setLine(2, getSignColor(colorType, "line3") + itemInHand.getType().name()); // Item wird überschrieben
|
||||||
|
|
||||||
// Wenn noch kein Name da war, setze ihn
|
// Wenn noch kein Name da war, setze ihn
|
||||||
String finalLine4 = line3Raw;
|
String finalLine4 = line3Raw;
|
||||||
@@ -760,7 +764,7 @@ public class Main extends JavaPlugin implements Listener, CommandExecutor {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Zugriffsschutz für konfigurierte Truhen
|
// Zugriffsschutz für konfigurierte Truhen (wenn kein Item in Hand zum Updaten)
|
||||||
// Wenn nicht Owner und NICHT öffentlich -> Zugriff verweigern
|
// Wenn nicht Owner und NICHT öffentlich -> Zugriff verweigern
|
||||||
if (!isOwner && !isChestPublic(sign)) {
|
if (!isOwner && !isChestPublic(sign)) {
|
||||||
player.sendMessage(getMessage("not-your-chest"));
|
player.sendMessage(getMessage("not-your-chest"));
|
||||||
@@ -879,7 +883,9 @@ public class Main extends JavaPlugin implements Listener, CommandExecutor {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2. FALL: ITEM ZUWEISEN
|
// 2. FALL: ITEM ZUWEISEN (Nur wenn Zeile 2 leer ist - Logik beibehalten für Klick auf Truhe)
|
||||||
|
// Hinweis: Um das Item zu aktualisieren, sollte das Schild angeklickt werden, nicht die Truhe direkt.
|
||||||
|
// Dies verhindert, dass man versehentlich die Sortierung ändert, wenn man Items in die Truhe legen will.
|
||||||
String line2Clean = ChatColor.stripColor((String) (lines[2] != null ? lines[2] : ""));
|
String line2Clean = ChatColor.stripColor((String) (lines[2] != null ? lines[2] : ""));
|
||||||
if (line2Clean.isEmpty()) {
|
if (line2Clean.isEmpty()) {
|
||||||
if (itemInHand == null || itemInHand.getType() == Material.AIR) {
|
if (itemInHand == null || itemInHand.getType() == Material.AIR) {
|
||||||
|
|||||||
Reference in New Issue
Block a user