Add JSON storage support for clans, homes, and protected blocks

- Implemented the **Clan** class to load, reload, and save clan data (including chunk locations and ownership) using Gson and the Paper API.
 - Added the **Homes** class to manage player home locations, converting JSON-stored coordinates into Bukkit `Location` objects.
 - Created **ProtectedBlocks** and **ProtectedBlock** classes to handle protected block data (owner, key, and block location) from JSON.
This commit is contained in:
DaTTV 2025-02-16 18:35:41 +01:00
parent e7fc7f199f
commit d724d64334
12 changed files with 500 additions and 6 deletions

9
.idea/compiler.xml generated
View file

@ -1,6 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<annotationProcessing>
<profile name="Gradle Imported" enabled="true">
<outputRelativeToContentRoot value="true" />
<processorPath useClasspath="false">
<entry name="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.projectlombok/lombok/1.18.36/5a30490a6e14977d97d9c73c924c1f1b5311ea95/lombok-1.18.36.jar" />
</processorPath>
<module name="BlazeSMP.main" />
</profile>
</annotationProcessing>
<bytecodeTargetLevel target="21" />
</component>
</project>

3
.idea/misc.xml generated
View file

@ -1,6 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="FrameworkDetectionExcludesConfiguration">
<file type="web" url="file://$PROJECT_DIR$" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="temurin-21" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>

View file

@ -1,5 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<module version="4">
<component name="AdditionalModuleElements">
<content url="file://$MODULE_DIR$/../../build/generated/sources/annotationProcessor/java/main">
<sourceFolder url="file://$MODULE_DIR$/../../build/generated/sources/annotationProcessor/java/main" isTestSource="false" generated="true" />
</content>
</component>
<component name="FacetManager">
<facet type="minecraft" name="Minecraft">
<configuration>