diff --git a/ArmorStands.md b/ArmorStands.md index 0d368c8..e68392f 100644 --- a/ArmorStands.md +++ b/ArmorStands.md @@ -1,90 +1,80 @@ -# 🛠️ ArmorStands & NPCs +# ArmorStand & NPC System -Ein GUI-basierter Editor für ArmorStands mit erweiterten Funktionen für interaktive NPCs, die sogar auf die Spielwelt reagieren. - ---- +Ein hochoptimiertes Modul für interaktive NPCs, die nicht nur dekorativ sind, sondern intelligent auf Spieler und die Ingame-Zeit reagieren. ## 📊 Befehlsübersicht | Befehl | Beschreibung | Berechtigung | -|:-------|:--------|:-------------|:-------------| -| `/nexustools` | Öffnet die Editor-GUI | `nexuslobby.armorstand.use` | -| `/nexuscmd` | Bindet Befehle an Klicks | `nexuslobby.armorstand.cmd` | -| `/nexustools dynamic` | **Schaltet dynamische Effekte um** | `nexuslobby.admin` | +|--------|--------------|--------------| +| `/nexustools` | Öffnet die Editor-GUI für den fokussierten NPC | `nexuslobby.armorstand.use` | +| `/nexuscmd ` | Bindet einen Befehl an den NPC (Rechtsklick) | `nexuslobby.armorstand.cmd` | +| `/nexustools dynamic` | Aktiviert/Deaktiviert die KI-Logik (Schwert/Fackel) | `nexuslobby.admin` | ---- +## 🌓 Dynamic ArmorStands (KI-Modul) -## 🌓 Neu: Dynamic ArmorStands +Das `DynamicArmorStandModule` sorgt für eine lebendige Atmosphäre in der Lobby. Ein markierter NPC nutzt folgende Automatismen: -Mit dem `DynamicArmorStandModule` reagieren deine NPCs automatisch auf die Umgebung. Wenn du einen ArmorStand mit `/asdynamic` markierst, geschehen folgende Dinge: +* **⚔️ Wachdienst-Modus (Spieler-Nähe):** + * Erkennt Spieler im Umkreis von 2 Blöcken. + * Der NPC zieht flüssig sein Schwert (Main-Hand) und geht in eine Abwehr-Pose. + * Sobald der Spieler den Bereich verlässt, wird das Schwert weggesteckt. -* **🌙 Nacht-Modus (20:00 - 06:00):** Der ArmorStand nimmt automatisch eine **Fackel** in die Off-Hand. -* **🌧️ Wetter-Logik:** Bei Regen oder Sturm setzt der ArmorStand automatisch einen **Lederhelm** (Regenschutz) auf. -* **Persistent:** Diese Einstellung wird im `PersistentDataContainer` des Entities gespeichert und bleibt auch nach einem Server-Neustart erhalten. +* **🌙 Nacht-Logik (13.000 - 23.000 Ticks):** + * Der NPC rüstet automatisch eine Fackel in der Off-Hand aus. + * Sternen-Effekt: Ein Partikel-Emitter (`WAX_OFF`) spawnt Sterne exakt an der Fackelspitze (mathematisch berechnet: vorn-links-oben). ---- +* **💾 Persistenz:** Dank `PersistentDataContainer` bleiben alle KI-Einstellungen auch nach einem Server-Restart oder Chunk-Reload erhalten. -## 🎨 ArmorStand Editor (/nexustools) +## 🎨 ArmorStand Editor (`/nexustools`) ### Verwendung -1. Schaue den gewünschten ArmorStand direkt an. -2. Führe `/nexustools` aus. -3. Nutze die GUI, um folgende Eigenschaften anzupassen: +1. Schaue den gewünschten ArmorStand direkt an (max. 5 Blöcke Distanz). +2. Führe `/nexustools` aus, um das Menü zu öffnen. -| Funktion | Effekt | -|:---------|:-------| -| **Kopf/Körper** | Stufenloses Drehen der Körperteile. | -| **Arme** | Schaltet die Sichtbarkeit von Armen um. | -| **Sichtbarkeit** | Macht den Stand unsichtbar (ideal für NPCs). | -| **Basisplatte** | Entfernt die Steinplatte am Boden. | -| **Gravitation** | Lässt den ArmorStand in der Luft schweben. | +| Funktion | Icon | Effekt | +|----------|------|--------| +| Kopf/Körper | `PLAYER_HEAD` | Stufenlose Rotation aller Gliedmaßen. | +| Arme | `STICK` | Schaltet Arme an/aus (Nötig für Items). | +| Sichtbarkeit | `GLASS_PANE` | Macht den Stand unsichtbar (für NPC-Namen). | +| Dynamic KI | `NETHER_STAR` | Aktiviert Schwert-Abwehr & Nacht-Fackel. | +| Fackel-Sterne | `GOLD_NUGGET` | Schaltet die Partikel-Effekte der Fackel ein. | +| Gravitation | `FEATHER` | Lässt den NPC in der Luft schweben. | +| Baseplate | `STONE_SLAB` | Entfernt die Steinplatte am Boden. | -> **Tipp:** Halte **Shift (Schleichen)** während des Klickens in der GUI gedrückt, um das Feintuning (kleinere Grad-Schritte) zu nutzen. +**Tipp:** Halte Shift (Schleichen) während der Rotation gedrückt, um das Feintuning (1°-Schritte) zu nutzen. ---- +## 📜 Command Binding (`/nexuscmd`) -## 📜 Command Binding (/nexuscmd) - -Du kannst jeden beliebigen Befehl an einen ArmorStand binden. Dieser wird ausgeführt, sobald ein Spieler den Stand anklickt. - -### Verwendung -```bash -/nexuscmd -``` - -Platzhalter `{player}` verwenden, um den Klicker anzusprechen. +Macht NPCs interaktiv. Nutze den Platzhalter `{player}` für spielerspezifische Aktionen. ### Beispiele -* `/nexuscmd spawn` - Teleportiert den Spieler zum Spawn. -* `/nexuscmd say Hallo {player}, willkommen!` - Der NPC begrüßt den Spieler. -* `/nexuscmd serverswitcher` - Öffnet das Server-Menü. +* `/nexuscmd serverswitcher` – Öffnet das Portal-Menü. +* `/nexuscmd tell {player} §aViel Erfolg bei deinem Abenteuer!` – Persönliche Nachricht. +* `/nexuscmd spawn` – Teleportiert den Spieler zurück zum Startpunkt. ---- - -## ⚙️ Konfiguration (armorstands.yml) +## ⚙️ Konfiguration (`armorstands.yml`) ```yaml -# Einstellungen für das Dynamic-Modul & Editor +# Globale Einstellungen settings: - require-creative: false # Nutzung auch im Survival erlauben - update-interval-ticks: 100 # Prüfung der Dynamic-Stands (alle 5 Sek) - allow-command-blocks: true + update-interval-ticks: 5 # KI-Prüfungsrate (0.25 Sek für flüssige Animation) + particle-type: "WAX_OFF" + detection-range: 2.0 gui: - title: "§8» §6ArmorStand Editor" - tools: - dynamic: "§bDynamische Effekte (Zeit/Wetter)" - invisible: "§eSichtbarkeit" - arms: "§eArme anzeigen" + title: "§0§lNPC-EDITOR" + items: + dynamic_on: "§2§lKI AKTIVIERT" + dynamic_off: "§c§lKI DEAKTIVIERT" + stars_enabled: "§6Sternen-Effekt: §aAN" ``` ---- +## 💡 Best Practice: Der "Viper-Torwächter" -## 💡 Anwendungsbeispiel: Der "Lobby-Wächter" +Um einen optimalen Eindruck in der weißen Lobby zu hinterlassen: -1. Platziere einen ArmorStand am Eingang. -2. Nutze `/nexustools`, um ihm Arme zu geben und die Platte zu entfernen. -3. Rüste ihn mit deiner Server-Rüstung aus. -4. Nutze `/asdynamic`, damit er nachts eine Fackel hält und bei Regen nicht nass wird. -5. Nutze `/nexuscmd say Viel Spaß auf dem Netzwerk, {player}!`, damit er Spieler grüßt. \ No newline at end of file +1. Platziere den Stand, gib ihm eine dunkle Rüstung (Kontrast!). +2. Nutze `/nexustools`, aktiviere Arme und die Dynamic KI. +3. Setze einen Befehl mit `/nexuscmd`, der die Spieler zum Haupt-Spielmodus führt. +4. **Ergebnis:** Ein NPC, der nachts den Weg leuchtet, bei Annäherung salutiert/das Schwert zieht und per Klick als Wegweiser dient. \ No newline at end of file