de40cb1bf2
A verb's events used to fire only after its call returned. So a `PLAYER_TARGET_CHANGED` listener ran after the swing had gone out and the cast had resumed. In 1.12.1, `SignalEvent` (`0x703e50`) runs every listener before it returns. `UiScript::signal_point` now lends the host back at the reference's signal points inside a call. Held items replay, and a listener's own calls nest. The selection verbs signal `PET_BAR_UPDATE` (`0x493a18`) before the send, and `PLAYER_TARGET_CHANGED` (`0x49389c`) before the re-swing. StartAttack now selects its target (`0x5eccaa`) and stops again when its target test refuses (`0x5ecc37`). The switch latch tests the old selection (`0x49365f`-`0x4936a3`). A clear sends the selection as it stands (`0x493a49`). Nesting stops at 8 levels (`Deviation:`; the reference allows 200, `0x6f65ae`). Tests pin the wire order, nesting, a panic, the stack and the census. Part of #2271 Fixes #2276 Fixes #2277 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>