Files
PlayerDataSync/PlayerDataSync-Premium/premium/SETUP.md
DerGamer009 4aa5a2121b #0001
2026-02-08 03:41:09 +01:00

4.1 KiB

PlayerDataSync Premium - Setup Anleitung

Projektstruktur

Die Premium-Version benötigt alle Klassen aus PlayerDataSync, aber mit angepassten Package-Namen:

Package-Mapping

Von: com.example.playerdatasync.*
Zu: com.example.playerdatasync.premium.*

Zu kopierende Klassen

Alle folgenden Klassen müssen aus PlayerDataSync/src/main/java/com/example/playerdatasync/ nach PlayerDataSync-Premium/premium/src/main/java/com/example/playerdatasync/premium/ kopiert und Package-Namen angepasst werden:

Core

  • core/PlayerDataSync.javapremium/core/PlayerDataSyncPremium.java (bereits erstellt)

Database

  • database/ConnectionPool.javapremium/database/ConnectionPool.java
  • database/DatabaseManager.javapremium/database/DatabaseManager.java

Commands

  • commands/SyncCommand.javapremium/commands/SyncCommand.java
    • Premium-Befehle hinzufügen: /sync license validate, /sync license info, /sync update check

Listeners

  • listeners/PlayerDataListener.javapremium/listeners/PlayerDataListener.java
  • listeners/ServerSwitchListener.javapremium/listeners/ServerSwitchListener.java

Managers

  • managers/AdvancementSyncManager.javapremium/managers/AdvancementSyncManager.java
  • managers/BackupManager.javapremium/managers/BackupManager.java
  • managers/ConfigManager.javapremium/managers/ConfigManager.java
  • managers/MessageManager.javapremium/managers/MessageManager.java
  • managers/LicenseManager.javapremium/managers/LicenseManager.java (bereits erstellt)

Integration

  • integration/InventoryViewerIntegrationManager.javapremium/integration/InventoryViewerIntegrationManager.java

Utils

  • utils/InventoryUtils.javapremium/utils/InventoryUtils.java
  • utils/OfflinePlayerData.javapremium/utils/OfflinePlayerData.java
  • utils/PlayerDataCache.javapremium/utils/PlayerDataCache.java
  • utils/VersionCompatibility.javapremium/utils/VersionCompatibility.java

API

  • api/PremiumUpdateChecker.javapremium/api/PremiumUpdateChecker.java (bereits erstellt)
  • api/LicenseValidator.javapremium/api/LicenseValidator.java (bereits erstellt)

Resources

  • resources/config.ymlpremium/src/main/resources/config.yml (bereits erstellt)
  • resources/plugin.ymlpremium/src/main/resources/plugin.yml (bereits erstellt)
  • resources/messages_en.ymlpremium/src/main/resources/messages_en.yml
  • resources/messages_de.ymlpremium/src/main/resources/messages_de.yml

Anpassungen

1. Package-Namen ändern

Alle Klassen müssen von:

package com.example.playerdatasync.xxx;

zu:

package com.example.playerdatasync.premium.xxx;

2. Imports anpassen

Alle Imports müssen angepasst werden:

// Alt
import com.example.playerdatasync.database.DatabaseManager;

// Neu
import com.example.playerdatasync.premium.database.DatabaseManager;

3. SyncCommand erweitern

In SyncCommand.java müssen Premium-Befehle hinzugefügt werden:

case "license":
    return handleLicense(sender, args);

case "update":
    return handleUpdate(sender, args);

4. PlayerDataSyncPremium.java vervollständigen

Die Hauptklasse PlayerDataSyncPremium.java ist bereits erstellt, aber alle Methoden aus der originalen PlayerDataSync.java müssen kopiert werden.

Build

cd PlayerDataSync-Premium/premium
mvn clean package

Die JAR-Datei wird in target/PlayerDataSync-Premium-1.2.9-PREMIUM.jar erstellt.

Wichtige Hinweise

  1. License Key erforderlich: Die Premium-Version funktioniert nur mit einem gültigen Lizenzschlüssel
  2. API-Zugriff: Benötigt Internetverbindung für Lizenz-Validierung und Update-Checks
  3. Rate Limits: API hat ein Limit von 100 Requests/Stunde pro IP
  4. Caching: Lizenz-Validierung wird 30 Minuten gecacht

Nächste Schritte

  1. Alle Klassen aus PlayerDataSync kopieren
  2. Package-Namen anpassen
  3. Imports anpassen
  4. Premium-Befehle in SyncCommand hinzufügen
  5. Build und Test