fixed homes

This commit is contained in:
DaTTV 2025-02-23 16:10:58 +01:00
parent 088ce798c6
commit 916881e628
4 changed files with 14 additions and 11 deletions

View file

@ -8,7 +8,6 @@ import net.kyori.adventure.text.minimessage.MiniMessage;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;

View file

@ -17,9 +17,7 @@ import java.util.Map;
import java.util.UUID;
public class VanishCommand extends SimpleCommand {
private final Map<UUID, Boolean> vanishedPlayers = new HashMap();
private final Map<UUID, Boolean> vanishedPlayers = new HashMap<>();
public VanishCommand() {

View file

@ -43,7 +43,8 @@ public class Homes {
}
try (FileReader reader = new FileReader(file)) {
// Use a TypeToken to handle the Map<String, LocationJson> structure
Type type = new TypeToken<Map<String, LocationJson>>() {}.getType();
Type type = new TypeToken<Map<String, LocationJson>>() {
}.getType();
Map<String, LocationJson> jsonMap = GSON.fromJson(reader, type);
if (jsonMap == null) {
return;
@ -58,17 +59,19 @@ public class Homes {
}
LocationJson locJson = entry.getValue();
// Assume the default world "world" for homes
World world = Bukkit.getWorld("world");
if (world == null) {
LOGGER.warning("Default world 'world' not found. Skipping home for " + uuid);
continue;
}
try {
double x = Double.parseDouble(locJson.x);
double y = Double.parseDouble(locJson.y);
double z = Double.parseDouble(locJson.z);
float yaw = Float.parseFloat(locJson.yaw);
float pitch = Float.parseFloat(locJson.pitch);
String worldName = locJson.world;
World world = Bukkit.getWorld(worldName);
if (world == null) {
LOGGER.warning("World '%s' not found. Skipping home for %s".formatted(worldName, uuid));
continue;
}
Location location = new Location(world, x, y, z, yaw, pitch);
homes.put(uuid, location);
} catch (NumberFormatException ex) {
@ -94,6 +97,7 @@ public class Homes {
locJson.z = String.valueOf(location.getZ());
locJson.yaw = String.valueOf(location.getYaw());
locJson.pitch = String.valueOf(location.getPitch());
locJson.world = location.getWorld().getName();
jsonMap.put(entry.getKey().toString(), locJson);
}
File file = new File(FILE_PATH);
@ -138,5 +142,6 @@ public class Homes {
String z;
String yaw;
String pitch;
String world;
}
}

View file

@ -4,6 +4,7 @@
"y": "",
"z": "",
"yaw": "",
"pitch": ""
"pitch": "",
"world": ""
}
}