90 lines
2.5 KiB
Markdown
90 lines
2.5 KiB
Markdown
# 🚀 Guide de Démarrage Rapide - betterMcGuis
|
|
|
|
Ce guide vous accompagne dans l'installation, la configuration et la création de vos premières interfaces graphiques interactives (GUIs) avec la bibliothèque **betterMcGuis**.
|
|
|
|
---
|
|
|
|
## 📦 1. Installation
|
|
|
|
### Gradle (Kotlin DSL)
|
|
|
|
Ajoutez les dépôts et la dépendance dans votre fichier `build.gradle.kts` :
|
|
|
|
```kotlin
|
|
repositories {
|
|
mavenCentral()
|
|
maven("https://repo.papermc.io/repository/maven-public/")
|
|
}
|
|
|
|
dependencies {
|
|
// Intégration de betterMcGuis
|
|
implementation("fr.luc:betterMcGuis:1.0.0-SNAPSHOT")
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## ⚙️ 2. Initialisation dans votre Plugin Bukkit/Paper
|
|
|
|
Créez une instance de `BetterMcGuis` dans la méthode `onEnable()` de votre plugin et nettoyez-la proprement dans `onDisable()` :
|
|
|
|
```java
|
|
package fr.luc.monplugin;
|
|
|
|
import fr.luc.bettermcguis.BetterMcGuis;
|
|
import org.bukkit.plugin.java.JavaPlugin;
|
|
|
|
public class MonPlugin extends JavaPlugin {
|
|
|
|
private BetterMcGuis guiManager;
|
|
|
|
@Override
|
|
public void onEnable() {
|
|
// 1. Initialisation du gestionnaire et enregistrement automatique des écouteurs Bukkit
|
|
this.guiManager = BetterMcGuis.create(this);
|
|
|
|
// 2. Enregistrement d'écouteurs d'événements globaux (optionnel)
|
|
this.guiManager.registerListeners(new MonEcouteurDeGui());
|
|
|
|
getLogger().info("betterMcGuis est prêt !");
|
|
}
|
|
|
|
@Override
|
|
public void onDisable() {
|
|
// 3. Nettoyage des écouteurs et suppression des ressources
|
|
if (guiManager != null) {
|
|
guiManager.unregisterAll();
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## 💡 3. Votre Premier Menu en 5 Lignes
|
|
|
|
```java
|
|
public void ouvrirMenuBienvenue(Player player) {
|
|
BetterMcGuis.builder()
|
|
.title("<gradient:#00c6ff:#0072ff><bold>Menu de Bienvenue</bold></gradient>")
|
|
.rows(3)
|
|
.fillBorder(Material.BLACK_STAINED_GLASS_PANE)
|
|
.item(13, BetterMcGuis.item(Material.DIAMOND)
|
|
.name("<gold><bold>Réclamer le Cadeau</bold></gold>")
|
|
.lore("<gray>Cliquez pour recevoir 1 Diamant gratuit !</gray>")
|
|
.glowing(true)
|
|
.asGuiItem(ctx -> {
|
|
ctx.getPlayer().getInventory().addItem(new ItemStack(Material.DIAMOND));
|
|
ctx.replySuccess("Diamant reçu avec succès !");
|
|
ctx.close();
|
|
})
|
|
)
|
|
.build()
|
|
.open(player);
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
> 📖 **Étape suivante** : Découvrez la syntaxe complète du constructeur dans [02_GUI_BUILDER_DSL.md](02_GUI_BUILDER_DSL.md).
|