Appearance
sdk.combat_shapes
Exact affected-tile resolution for player spells, runes and direct attacks.
lua
local M = require("sdk.combat_shapes")Constants
Lua 5.4 has no enums — these are integer (or string) fields on the module.
| Name | Value | Summary |
|---|---|---|
rotate | rotate | Rotate a shape by a facing. |
resolve
function · resolve(action)
Shape metadata only (no tiles). Use affected_tiles when safety needs the footprint.
affected_tiles
function · affected_tiles(action, context)
World tiles this action would hit. Same-floor + max_range checked when both ends exist. complete=false means facing was unknown and every rotation was unioned — treat as worst case.
registry
function · registry()
Raw Canary-derived shape/spell/rune tables. Tests assert against this, not a copy.