e568853aae
Several of 1.12.1's client-side cast gates were missing, so the server refused casts the client refuses itself: - The caster validator (`0x6094f0`) now runs its rungs in the bytes' order. Indoors and outdoors are judged by the entity outdoors test (`0x6706f0`). - The crowd-control exemption checks every aura type (`0x6e9ca0`). - The binder stops at the first arm that holds, with that arm's guards (`0x6e5b40`). - TryCast refuses three more cases: - ranged without ammo, which also greys the button; - ranged without a ranged weapon (`0x6e4e13`); - the while-looting effects (`0x6e4ca2`). - A cast on cooldown with no target says not ready. Tests pin each rung and the greying through the bar's own site. The learn and tame rungs remain. Part of #1202 Fixes #1581 Fixes #1586 Fixes #675 Fixes #1199 Fixes #1294 Fixes #2132 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>