diff --git a/README.md b/README.md index 618f6b5..b96f525 100644 --- a/README.md +++ b/README.md @@ -275,11 +275,39 @@ else if ((int)state > 21) } ``` +**ModalManager.cs:25-30, 55-59, 81-84** +- Null check a statikus konstruktorban a modalUIPrefab betöltés előtt +- Ha null, csak log-ol és visszatér gracefully +- ShowModal() ellenőrzi hogy modalInst létezik-e + - Ha nem, log-olja a modal tartalmát: "MODAL (not shown - UI missing): Title - Message" +- HideModal() null-safe lett +- Megakadályozza a TypeInitializationException-t + +**Érintett kód részletek:** +```csharp +// ModalManager.cs statikus konstruktor +if (PrefabManager.modalUIPrefab == null) +{ + Main.helper.Log("WARNING: ModalManager cannot initialize - modalUIPrefab is null"); + instantiated = true; + return; +} + +// ShowModal metódus +if (modalInst == null) +{ + Main.helper.Log($"MODAL (not shown - UI missing): {title} - {message}"); + return; +} +``` + **Eredmények:** - ✅ Nincs crash ha az asset bundle hiányzik - ✅ Világos hibaüzenetek a felhasználónak - ✅ Graceful degradation - a mod többi része működik - ✅ Útmutatás a probléma megoldásához +- ✅ ModalManager biztonságosan hívható bárhonnan +- ✅ Modal üzenetek log-olva még ha nem is jelennek meg **MEGJEGYZÉS:** Az asset bundle fájl jelenleg hiányzik a mod könyvtárából. A multiplayer UI funkciók működéséhez szükséges a "serverbrowserpkg" fájl hozzáadása.