12 Commits
Author SHA1 Message Date
Dolobarsch 90de51b1a0 Aktualisiere BP_Campfire.uasset
Die Datei `BP_Campfire.uasset` wurde geändert
2026-09-14 13:41:00 +02:00
Dolobarsch a5eb673c6e Interaktionsoptionen und UI-Verbesserungen
Neue Methode `RefreshFocusedOptions()` hinzugefügt, um die Optionen des fokussierten Akteurs nach einer Interaktion zu aktualisieren. Änderungen an der Navigation im Kontextmenü: Begrenzte Navigation ersetzt zyklische Navigation.

`FInteractionOption` erweitert um `TextColorOverride` und `HighlightColorOverride`, um individuelle Farben für Optionen zu ermöglichen.

UI-Widgets (`InteractionOptionEntryWidget`) angepasst, um Hintergrund- und Hervorhebungsfarben dynamisch zu setzen. Hinweistext für sekundäre Interaktionen zeigt nun spezifische Optionennamen an.
2026-09-11 01:52:59 +02:00
Dolobarsch e4fb702a1c "Hold-to-Interact"-System hinzugefügt
Ein neues "Hold-to-Interact"-System wurde implementiert, das es Spielern ermöglicht, durch Halten einer Taste mit Objekten zu interagieren.

- `UInteractionComponent` erweitert, um den Fortschritt des Halte-Timers zu berechnen und über das neue `OnInteractHoldProgressChanged`-Event zu übertragen.
- Neues Widget `UInteractionPromptWidget` eingeführt, das die Fortschrittsanzeige und Interaktionsaufforderungen modular handhabt.
- Veraltete Logik aus `UInteractionContextMenuWidget` entfernt und in `UInteractionPromptWidget` ausgelagert.
- Zwei neue Widgets (`WBP_InteractionBar.uasset`, `WBP_InteractionQuick.uasset`) hinzugefügt.
- Logging und neue Abhängigkeiten (`USegmentedBarWidget`) integriert.
- Verbesserte Modularität und Benutzererfahrung durch visuelles Feedback und klare Trennung der Logik.
2026-09-05 21:57:27 +02:00
Dolobarsch a36eaf27bc Optimierung von Kollisions- und Hardwareeinstellungen
Die Datei `DefaultEngine.ini` wurde aktualisiert, um neue Kollisionsprofile hinzuzufügen und bestehende zu überarbeiten. Ein neuer Kanal `Interactable` wurde hinzugefügt. Alte Profile und Kanäle wurden mithilfe von Redirects auf neue Namen umgeleitet.

Die `TargetedHardwareClass` wurde auf `Desktop` gesetzt, und die `DefaultGraphicsPerformance` wurde auf `Maximum` geändert, um die Leistung für Desktop-Systeme zu optimieren.

`ActiveGameNameRedirects` und `ActiveClassRedirects` wurden hinzugefügt, um alte Spiel- und Klassennamen auf neue Namen für das Projekt `KingshearthLegacy` umzuleiten.

Die Datei `BP_Campfire.uasset` wurde ebenfalls geändert, jedoch sind die Änderungen binär und nicht im Detail sichtbar.
2026-09-05 19:09:47 +02:00
Dolobarsch 0b34a9742a Verbesserung der Interaktionslogik und UI-Optimierung
Die Änderungen umfassen:
- Projektname in `DefaultGame.ini` auf "Kingshearth Legacy" geändert.
- Neue Konsolenvariablen für CommonUI hinzugefügt.
- `ListView` ersetzt `VerticalBox` für Kontextmenü-Optionen.
- `FInteractionOption` um `Icon` und `PromptOverride` erweitert.
- Debugging-Logs in `InteractionComponent.cpp` hinzugefügt.
- Neue Klassen: `UInteractionOptionEntryWidget` und `UInteractionOptionListItem`.
- Verbesserte Eingabeaufforderungslogik und Sichtbarkeitssteuerung.
- Binärdateien (`.uasset`) aktualisiert und neue hinzugefügt.
2026-09-05 19:01:41 +02:00
Dolobarsch fd08fe4804 Interaktionslogik und UI-Aufforderungen verbessert
Neue Funktion `GetInteractableDisplayName` in `Interactable.h` hinzugefügt, um benutzerfreundliche Objektnamen für Interaktionsaufforderungen bereitzustellen.

Die Logik in `InteractionContextMenuWidget.cpp` wurde überarbeitet:
- Aufforderungen werden ausgeblendet, wenn keine Optionen verfügbar sind.
- Objektnamen werden in die Aufforderungen integriert.
- Zusätzliche Hinweise für sekundäre Interaktionen und Kontextmenüs hinzugefügt.

Binärdateien (`BP_BerryBush.uasset`, `BP_Campfire.uasset`, `BP_ThirdPersonCharacter.uasset`, `WBP_InteractionContextMenu.uasset`) aktualisiert.
2026-09-05 03:13:51 +02:00
Dolobarsch 8099d69a23 Neues Interaktionssystem implementiert
Einführung eines modularen Interaktionssystems:
- Hinzufügen der `IInteractable`- und `IInteractionLookupProvider`-Schnittstellen.
- Implementierung der `UInteractionComponent` zur Steuerung von Interaktionen (Tippen, Halten, Kontextmenü).
- Integration der `InteractionComponent` in `KingshearthLegacyCharacter`.
- Hinzufügen des `InteractionContextMenuWidget` für UI-Interaktionen.
- Änderungen an `PlayerHUDWidget`, um Interaktions-Widgets zu unterstützen.
- Neue Assets und Konfigurationsänderungen für Kollisionen und Redirects.
- Verbesserte Modularität und Benutzerfreundlichkeit durch klare Trennung von Logik und Darstellung.
2026-09-05 03:04:12 +02:00
Dolobarsch b55eda5e51 Neues Menüsystem implementiert
Ein flexibles Menüsystem wurde hinzugefügt, das ein Hauptmenü und ein In-Game-Menü umfasst. Das Hauptmenü bietet Optionen wie "Neues Spiel starten", "Optionen" und "Credits". Das In-Game-Menü ermöglicht Pausenfunktionen wie "Fortsetzen", "Optionen" und "Zum Desktop beenden".

Neue Klassen wurden eingeführt, darunter `MenuManagerSubsystem` zur Verwaltung von Menübildschirmen, `MenuScreenWidget` als Basisklasse für Menüs sowie spezifische Widgets wie `MainMenuWidget`, `InGameMenuWidget` und `OptionsMenuWidget`.

Zusätzlich wurden stilisierte Schaltflächen (`MenuButtonWidget`) und ein neuer `MenuPlayerController` für menübasierte Levels implementiert. Änderungen an `KingshearthLegacyPlayerController` ermöglichen die Steuerung des In-Game-Menüs. Binäre Assets für Menüs und UI wurden hinzugefügt.
2026-09-05 00:33:04 +02:00
Dolobarsch 64f4a59b0b Integriere Gameplay Ability System (GAS)
Ersetze HealthComponent und StaminaComponent durch GAS-basierte AttributeSets (`UHealthAttributeSet`, `UStaminaAttributeSet`) und füge `UAbilitySystemComponent` hinzu.

Implementiere neue GameplayEffects (`UGE_HealthDamage`, `UGE_HealthHealing`, `UGE_HealthDebuff`, `UGE_StaminaFatiguePenalty`) und eine Modifikator-Berechnung (`UMMC_MaxStaminaFatiguePenalty`).

Erweitere `AKingshearthLegacyCharacter` um Methoden zur Attributmanipulation (`ApplyDamage`, `SpendStamina`, etc.) und Stamina-Regeneration.

Aktualisiere UI-Widgets (`HealthBarWidget`, `StaminaBarWidget`) zur Nutzung der neuen AttributeSets. Entferne Legacy-Code für Health- und Stamina-Komponenten.

Füge neue Assets (Niagara-Systeme, Materialien, Texturen) hinzu und passe Projektkonfiguration an (z. B. `GameplayAbilities`-Modul, `r.Substrate`).
2026-09-04 22:54:46 +02:00
Dolobarsch 495424a2b2 Füge HealthDebuff-Mechanik hinzu
Die HealthComponent wurde erweitert, um einen neuen `HealthDebuff`-Wert zu unterstützen, der einen Teil der maximalen Gesundheit des Charakters unbrauchbar macht.

- Neue Methoden `GetHealthDebuff`, `SetHealthDebuff` und `GetEffectiveMaxHealth` hinzugefügt.
- `CurrentHealth` wird nun gegen den effektiven Maximalwert (`GetEffectiveMaxHealth`) begrenzt.
- Neues Event `OnHealthDebuffChanged` implementiert, um Änderungen am Debuff zu signalisieren.
- HealthBar-Widget aktualisiert, um den `HealthDebuff` dynamisch anzuzeigen.
- Sprint-Logik verbessert: Sprinten nur möglich, wenn der Charakter am Boden ist.
- Binärdateien (`BP_ThirdPersonCharacter.uasset`, `WBP_StaminaBar.uasset`) geändert.
2026-08-28 00:01:16 +02:00
Dolobarsch 83cc8f592e Sprint- und Ausdauermechanik hinzugefügt
Die Sprint-Funktionalität wurde in `AKingshearthLegacyCharacter` implementiert, einschließlich neuer Methoden (`StartSprint`, `StopSprint`, `Tick`) und Eigenschaften (`SprintSpeedMultiplier`, `SprintStaminaDrainRate`, etc.). Die Eingabeverarbeitung wurde entsprechend erweitert.

Eine neue `UStaminaComponent` wurde hinzugefügt, die Ausdauer, Fatigue und Regeneration verwaltet. Ereignisse wie `OnStaminaChanged` und `OnExhausted` ermöglichen die Überwachung von Änderungen.

Die Benutzeroberfläche wurde angepasst: `UPlayerHUDWidget` und `UStaminaBarWidget` unterstützen nun die Anzeige der Ausdauer. Alte, fest codierte Werte wurden entfernt, und die Widgets sind nun dynamisch an die `StaminaComponent` gebunden.

Zusätzlich wurden Änderungen an `.uasset`-Dateien vorgenommen, um die neuen Mechaniken in Unreal Engine zu unterstützen.
2026-08-27 23:43:11 +02:00
Dolobarsch 78730ce939 Initial Commit 2026-08-27 21:42:15 +02:00