diff --git a/README.md b/README.md index a3b50be..b6199dd 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,131 @@ -# TitleManager - +# TitleManager +**Version 3.0.0** + +Ein umfassendes Title/Subtitle-Manager-Plugin für Bukkit/Spigot-Server. + +## Features +- 📜 Titel und Untertitel mit Animationen +- 📢 Action Bar Messages +- 👥 Player List Header/Footer +- 📊 Scoreboard Management +- 🎬 Umfangreiche Animations-Unterstützung +- 🔌 PlaceholderAPI Integration +- 🎨 Farbunterstützung (Hex-Farben, Chat-Farben) +- 🔄 Hot-Reload Funktionalität +- 🌐 BungeeCord Support +- 📝 Konfigurierbar + +## Anforderungen +- **Java**: 21 oder höher +- **Minecraft Server**: 1.21.x (Spigot/Paper) + +## Installation + +### Aus Quelle bauen +```bash +mvn clean package +``` + +Die fertige JAR-Datei befindet sich in `target/titlemanager-3.0.0.jar` + +### Plugin installieren +1. Kopiere die JAR-Datei in den `plugins/` Ordner deines Servers +2. Starte deinen Server neu +3. Das Plugin erstellt automatisch die Konfigurationsdatei +4. Konfiguriere das Plugin in `plugins/TitleManager/config.yml` +5. Lade das Plugin mit `/tm reload` neu + +## Befehle +``` +/tm reload - Plugin neu laden und Konfiguration erneuern +/tm help - Zeige Hilfe an +/titlemanager - Alias für /tm +``` + +## Permissions +``` +titlemanager.command.main - Zugriff auf TitleManager Befehle +titlemanager.command.reload - Darf Plugin neu laden +titlemanager.* - Alle Permissions +``` + +## Konfiguration +Die Hauptkonfiguration befindet sich in `plugins/TitleManager/config.yml` + +Beispiel: +```yaml +# Globale Einstellungen +settings: + debug: false + update-check: true + +# Animation Einstellungen +animations: + enabled: true + default-duration: 100 +``` + +## Entwicklung + +### Projektstruktur +``` +TitleManager/ +├── src/ +│ ├── main/ +│ │ ├── java/io/mviper/mc/titlemanager/ +│ │ │ ├── api/v2/ # Öffentliche API +│ │ │ ├── internal/ # Interne Komponenten +│ │ │ └── TitleManagerPlugin.java +│ │ └── resources/ +│ │ └── plugin.yml +│ └── test/ +├── pom.xml # Maven-Konfiguration +└── README.md +``` + +### API Nutzung für Plugin-Entwickler +```java +import io.mviper.mc.titlemanager.api.v2.TitleManagerAPI; +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; + +public class MyPlugin extends JavaPlugin { + @Override + public void onEnable() { + // TitleManager API erhalten + TitleManagerAPI api = (TitleManagerAPI) Bukkit.getPluginManager() + .getPlugin("TitleManager"); + + if (api != null) { + // Titel an Spieler senden + Player player = Bukkit.getPlayer("PlayerName"); + if (player != null) { + api.sendTitle(player, "§6Willkommen!"); + api.sendSubtitle(player, "§eZum Server!"); + api.sendActionbar(player, "§aGuten Spieltag!"); + } + } + } +} +``` + +### API Methoden +- **Titel/Untertitel**: `sendTitle()`, `sendSubtitle()`, `sendTitles()` +- **Action Bar**: `sendActionbar()` +- **Player List**: `setHeader()`, `setFooter()`, `setHeaderAndFooter()` +- **Scoreboard**: `giveScoreboard()`, `setScoreboardTitle()`, `setScoreboardValue()` +- **Animationen**: `containsAnimations()`, `getRegisteredAnimations()`, `addAnimation()` +- **Platzhalter**: `replaceText()`, `containsPlaceholders()` + +## Lizenz +TitleManager ist unter der MIT License lizenziert. Siehe [LICENSE.md](LICENSE.md) für Details. + +## Support +- 🐛 Bug Reports: +- 💬 Diskussionen: GitHub Discussions +- 📖 Dokumentation: Siehe Wiki + +## Danksagungen +- Bukkit/Spigot Community +- PlaceholderAPI +- Alle Contributors