Drop- und Power-up-Visuals
Status: aktiv
Zweck
World-Drops nutzen austauschbare Godot-Szenen fuer die Darstellung. Pickup-Logik, Collision und Seed-Determinismus bleiben in WorldDrop3D / Shared Drop-Domain.
Ressourcen
| Rolle | Pfad |
|---|---|
| Catalog | res://Resources/Drops/DropVisualCatalog.tres |
| Recovery-Szenen | res://Features/Dungeons/Run/Drops/Visuals/{Ammo,Health,Armor}RestoreVisual.tscn |
| Power-up-Szenen | res://Features/Dungeons/Run/Drops/Visuals/PowerUps/*.tscn |
| Power-up-Presentation | res://Resources/Drops/PowerUps/*Presentation.tres |
| Factory | Features/Dungeons/Run/Drops/DropVisualFactory.cs |
WorldDrop3D.tscn referenziert den Catalog ueber [Export] VisualCatalog (kein String-Load pro Spawn).
Neues Recovery-Visual
- Szene mit Root
Node3Danlegen (nur Mesh/VFX/Licht/Animation). - Keine
CollisionShape3Dund keine Pickup-Skripte in der Visual-Szene. - Im
DropVisualCatalogden passenden Slot setzen (AmmoRestoreVisual/HealthRestoreVisual/ArmorRestoreVisual).
Neues Power-up-Visual
- Shared-Domain-Power-up wie bisher in
PhaseOnePowerUpCataloganlegen (Gameplay). - Visual-Szene mit Root
Node3Derstellen. - Game3D-
PowerUpDefinition-Resource anlegen oder erweitern: Id= stabile Shared-ID (z. B.powerup_overcharged_rounds)WorldVisualScene= die Visual-Szene- Resource in
DropVisualCatalog.PowerUpDefinitionseintragen. - Kein Switch und keine Factory-Aenderung noetig.
Fallback
Fehlt die Szene oder ist der Root kein Node3D, erzeugt DropVisualFactory das bisherige Development-Mesh und schreibt eine Warnung bzw. einen Error (DropKind, optional PowerUpId).