add terror zones (#2)

This commit is contained in:
Héctor Giménez
2023-10-09 15:17:46 +09:00
committed by GitHub
parent 51ec9e0dca
commit 6e77a6494d
3 changed files with 28 additions and 8 deletions

View File

@@ -41,6 +41,7 @@ type Data struct {
OpenMenus OpenMenus OpenMenus OpenMenus
Roster Roster Roster Roster
HoverData HoverData HoverData HoverData
TerrorZones []area.Area
} }
type Room struct { type Room struct {

View File

@@ -39,6 +39,7 @@ func (gd *GameReader) GetData() data.Data {
OpenMenus: gd.openMenus(), OpenMenus: gd.openMenus(),
Roster: roster, Roster: roster,
HoverData: hover, HoverData: hover,
TerrorZones: gd.TerrorZones(),
} }
if playerUnitPtr == 0 { if playerUnitPtr == 0 {

18
pkg/memory/terrorzones.go Normal file
View File

@@ -0,0 +1,18 @@
package memory
import (
"github.com/hectorgimenez/d2go/pkg/data/area"
)
func (gd *GameReader) TerrorZones() (areas []area.Area) {
tz := gd.moduleBaseAddressPtr + 0x299E2D8
for i := 0; i < 7; i++ {
tzArea := gd.ReadUInt(tz+uintptr(i*Uint32), Uint32)
if tzArea != 0 {
areas = append(areas, area.Area(tzArea))
}
}
return
}