class_name AdtPlacementPosition
extends RefCounted

## Immutable MDDF/MODF position in ADT file field order.
## `x_offset_yards` and `z_offset_yards` are measured from the north-west map
## extent; `height_yards` is the vertical field stored between them.

var x_offset_yards: float:
	get:
		return _x_offset_yards

var height_yards: float:
	get:
		return _height_yards

var z_offset_yards: float:
	get:
		return _z_offset_yards

var _x_offset_yards: float
var _height_yards: float
var _z_offset_yards: float


## Creates an ADT placement position in on-disk X/height/Z field order.
func _init(x_offset_yards_value: float, height_yards_value: float, z_offset_yards_value: float) -> void:
	_x_offset_yards = x_offset_yards_value
	_height_yards = height_yards_value
	_z_offset_yards = z_offset_yards_value
