Panel Manager Improvements (#85)

* Panel Manager Improvements

- Now maps instead of slices for easy traverse
- Function for easy and safe traverse of paths
- Removed constant updates of Panel Manager to reduce usage. It will now be called on demand.
- Updated some functions to use the new Panel Manager.

* Remove unused struct members

* Added IsDismissalModalPresent (error popup)

* Correct function return for char select screen and dismissal modal

* Add error checking to IsDismissableModalPresent
This commit is contained in:
Arto Simonyan
2025-03-04 01:09:22 +02:00
committed by GitHub
parent 4a7e782343
commit 844439002c
3 changed files with 118 additions and 117 deletions

View File

@@ -26,34 +26,28 @@ const (
)
type Data struct {
AreaOrigin Position
Corpse Corpse
Monsters Monsters
Corpses Monsters
Game OnlineGame
PlayerUnit PlayerUnit
NPCs NPCs
Inventory Inventory
Objects Objects
Entrances Entrances
AdjacentLevels []Level
Rooms []Room
OpenMenus OpenMenus
Widgets map[string]map[string]interface{}
Panels []Panel
Roster Roster
HoverData HoverData
TerrorZones []area.ID
Quests quest.Quests
KeyBindings KeyBindings
LegacyGraphics bool
IsOnline bool
IsIngame bool
IsInCharCreationScreen bool
IsInCharSelectionScreen bool
IsInLobby bool
HasMerc bool
ActiveWeaponSlot int
AreaOrigin Position
Corpse Corpse
Monsters Monsters
Corpses Monsters
Game OnlineGame
PlayerUnit PlayerUnit
NPCs NPCs
Inventory Inventory
Objects Objects
Entrances Entrances
AdjacentLevels []Level
Rooms []Room
OpenMenus OpenMenus
Roster Roster
HoverData HoverData
TerrorZones []area.ID
Quests quest.Quests
KeyBindings KeyBindings
LegacyGraphics bool
IsIngame bool
HasMerc bool
ActiveWeaponSlot int
}
type Room struct {
@@ -85,7 +79,7 @@ type Panel struct {
ExtraText2 string
ExtraText3 string
PanelParent string
PanelChildren []Panel
PanelChildren map[string]Panel
Depth int
}