From 019cd9a62d81e536e11b6bec99b3ea0b9dc8cde8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9ctor=20Gim=C3=A9nez?= Date: Tue, 4 Jun 2024 22:44:23 +0900 Subject: [PATCH] read legacy graphics --- pkg/data/data.go | 1 + pkg/memory/game_reader.go | 25 +++++++++++++++---------- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/pkg/data/data.go b/pkg/data/data.go index ab8fb46..fba9098 100644 --- a/pkg/data/data.go +++ b/pkg/data/data.go @@ -41,6 +41,7 @@ type Data struct { TerrorZones []area.ID Quests quest.Quests KeyBindings KeyBindings + LegacyGraphics bool } type Room struct { diff --git a/pkg/memory/game_reader.go b/pkg/memory/game_reader.go index ef26b3e..981e18a 100644 --- a/pkg/memory/game_reader.go +++ b/pkg/memory/game_reader.go @@ -47,16 +47,17 @@ func (gd *GameReader) GetData() data.Data { IsHovered: corpseUnit.IsHovered, Position: corpseUnit.Position, }, - Monsters: gd.Monsters(pu.Position, hover), - PlayerUnit: pu, - Inventory: gd.Inventory(rawPlayerUnits, hover), - Objects: gd.Objects(pu.Position, hover), - OpenMenus: gd.openMenus(), - Roster: roster, - HoverData: hover, - TerrorZones: gd.TerrorZones(), - Quests: gd.getQuests(gameQuestsBytes), - KeyBindings: gd.GetKeyBindings(), + Monsters: gd.Monsters(pu.Position, hover), + PlayerUnit: pu, + Inventory: gd.Inventory(rawPlayerUnits, hover), + Objects: gd.Objects(pu.Position, hover), + OpenMenus: gd.openMenus(), + Roster: roster, + HoverData: hover, + TerrorZones: gd.TerrorZones(), + Quests: gd.getQuests(gameQuestsBytes), + KeyBindings: gd.GetKeyBindings(), + LegacyGraphics: gd.LegacyGraphics(), } gd.previousRead = d @@ -189,3 +190,7 @@ func (gd *GameReader) InCharacterSelectionScreen() bool { func (gd *GameReader) GetSelectedCharacterName() string { return gd.Process.ReadStringFromMemory(gd.Process.moduleBaseAddressPtr+0x2149FF4, 0) } + +func (gd *GameReader) LegacyGraphics() bool { + return gd.ReadUInt(gd.moduleBaseAddressPtr+0x21F6388, Uint64) == 1 +}