From a45e0f473190c969f15d90799a0e76fc82284cfd Mon Sep 17 00:00:00 2001 From: M_Viper Date: Mon, 23 Feb 2026 14:39:37 +0100 Subject: [PATCH] Update from Git Manager GUI --- .../java/de/ticketsystem/model/Ticket.java | 27 ++++++++++++------- src/main/resources/plugin.yml | 2 +- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/src/main/java/de/ticketsystem/model/Ticket.java b/src/main/java/de/ticketsystem/model/Ticket.java index 981da94..f508f3d 100644 --- a/src/main/java/de/ticketsystem/model/Ticket.java +++ b/src/main/java/de/ticketsystem/model/Ticket.java @@ -110,26 +110,33 @@ public class Ticket implements ConfigurationSerializable { public Map serialize() { Map map = new HashMap<>(); map.put("id", id); - map.put("creatorUUID", creatorUUID.toString()); - map.put("creatorName", creatorName); - map.put("message", message); - map.put("world", worldName); + // Null-Schutz: SnakeYAML wirft NPE wenn Key oder Value null sind + map.put("creatorUUID", creatorUUID != null ? creatorUUID.toString() : ""); + map.put("creatorName", creatorName != null ? creatorName : ""); + map.put("message", message != null ? message : ""); + map.put("world", worldName != null ? worldName : "world"); map.put("x", x); map.put("y", y); map.put("z", z); map.put("yaw", yaw); map.put("pitch", pitch); - map.put("status", status.name()); + map.put("status", status != null ? status.name() : TicketStatus.OPEN.name()); if (createdAt != null) map.put("createdAt", createdAt.getTime()); if (claimedAt != null) map.put("claimedAt", claimedAt.getTime()); if (closedAt != null) map.put("closedAt", closedAt.getTime()); if (closeComment != null) map.put("closeComment", closeComment); - if (claimerUUID != null) { map.put("claimerUUID", claimerUUID.toString()); map.put("claimerName", claimerName); } - if (forwardedToUUID != null) { map.put("forwardedToUUID", forwardedToUUID.toString()); map.put("forwardedToName", forwardedToName); } + if (claimerUUID != null) { + map.put("claimerUUID", claimerUUID.toString()); + map.put("claimerName", claimerName != null ? claimerName : ""); + } + if (forwardedToUUID != null) { + map.put("forwardedToUUID", forwardedToUUID.toString()); + map.put("forwardedToName", forwardedToName != null ? forwardedToName : ""); + } map.put("playerDeleted", playerDeleted); - map.put("category", categoryKey); - map.put("priority", priority.name()); + map.put("category", categoryKey != null ? categoryKey : "general"); + map.put("priority", priority != null ? priority.name() : TicketPriority.NORMAL.name()); if (playerRating != null) map.put("playerRating", playerRating); map.put("claimerNotified", claimerNotified); // BungeeCord: Server-Name speichern - map.put("serverName", serverName); + map.put("serverName", serverName != null ? serverName : "unknown"); map.put("closeNotified", closeNotified); return map; } diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 9df353e..0f11f9b 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,5 +1,5 @@ name: TicketSystem -version: 1.0.6 +version: 1.0.7 main: de.ticketsystem.TicketPlugin api-version: 1.20 author: M_Viper