diff --git a/d2core/d2map/region.go b/d2core/d2map/region.go index 5f962e1a..2dfd2bae 100644 --- a/d2core/d2map/region.go +++ b/d2core/d2map/region.go @@ -268,7 +268,7 @@ func (mr *MapRegion) loadEntities() []MapEntity { var entities []MapEntity for _, object := range mr.ds1.Objects { - worldX, worldY := mr.getTileWorldPosition(object.X, object.Y) + worldX, worldY := mr.getSubTileWorldPosition(object.X, object.Y) switch object.Lookup.Type { case d2datadict.ObjectTypeCharacter: @@ -363,6 +363,10 @@ func (mr *MapRegion) advance(elapsed float64) { } } +func (mr *MapRegion) getSubTileWorldPosition(subTileX, subTileY int) (float64, float64) { + return float64(subTileX + (mr.tileRect.Left * 5)), float64(subTileY + (mr.tileRect.Top * 5)) +} + func (mr *MapRegion) getTileWorldPosition(tileX, tileY int) (float64, float64) { return float64(tileX + mr.tileRect.Left), float64(tileY + mr.tileRect.Top) }