# 1. Setup & Integration

Um GWorld v2 in deinem Plugin zu nutzen, musst du es als Abhängigkeit (Dependency) hinzufügen.

## 1. Maven Dependency

Füge das `<span class="hljs-code">core</span>`-Modul von GWorld in deine `<span class="hljs-code">pom.xml</span>` ein. Da die API zur Laufzeit vom Server bereitgestellt wird, nutzen wir den Scope `<span class="hljs-code">provided</span>`.

```XML
<dependency>
  <groupId>de.gilljan</groupId>
  <artifactId>gworld-core</artifactId>
  <version>2.0.1-SNAPSHOT</version>
  <scope>provided</scope>
</dependency>
```

Wir verwenden die GitHub Maven Package Registry. Um diese zu verwenden, beachte bitte die Dokumentation von GitHub:   
[https://docs.github.com/de/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry#installing-a-package](https://docs.github.com/de/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry#installing-a-package)

## 2. plugin.yml

Damit dein Plugin sicher auf GWorld zugreifen kann, muss es *nach* GWorld geladen werden. Füge dazu den Eintrag in deine `plugin.yml` hinzu:

```YAML
depend: [GWorld]
# Alternativ, wenn GWorld optional ist:
# softdepend: [GWorld]
```

## 3. Zugriff auf die API

Der Haupteinstiegspunkt ist das Interface `GWorldAPI`. Du erhältst die Instanz über die statische Methode der Hauptklasse.

```JAVA
import de.gilljan.gworld.GWorld;
import de.gilljan.gworld.api.GWorldAPI;
import de.gilljan.gworld.api.IWorldManager;

public class MyPlugin extends JavaPlugin {
    
    private IWorldManager worldManager;

    @Override
    public void onEnable() {
        if (Bukkit.getPluginManager().isPluginEnabled("GWorld")) {
            // API Instanz abrufen
            GWorldAPI api = GWorld.getInstance();
            
            // Den Manager für Welten laden
            this.worldManager = api.getWorldManager();
        }
    }
}
```