Files
odinsea-elixir/lib/odinsea/game/movement/relative.ex
2026-02-14 23:12:33 -07:00

30 lines
760 B
Elixir

defmodule Odinsea.Game.Movement.Relative do
@moduledoc """
Relative life movement - small position adjustments.
Ported from Java RelativeLifeMovement.java
Used for:
- Small adjustments (commands 1, 2)
- Float movements (commands 33, 34, 36)
- Fine-tuning position
Contains relative offset from current position.
"""
@type t :: %__MODULE__{
command: integer(), # Movement command type (1, 2, 33, 34, 36)
x: integer(), # X offset (delta from current)
y: integer(), # Y offset (delta from current)
stance: integer(), # New stance/move action
duration: integer() # Movement duration in ms
}
defstruct [
:command,
:x,
:y,
:stance,
:duration
]
end