fix!(lua.endpoints): allow use of consumables during BLIND_SELECT
- Dominant language
- Python
- Stars
- 72
- Forks
- 18
- PR merge metrics
- No merged PRs in 30d
Description
The `use` endpoint rejects valid consumable use during `BLIND_SELECT` that the game permits. Verified against `vendors/lovely/dump/` and confirmed empirically.
## Bug
`src/lua/endpoints/use.lua` `requires_state` omits `BLIND_SELECT`, so using a consumable during blind selection returns `INVALID_STATE`. The game allows it: `Card:can_use_consumeable` (`card.lua:1763` in the dump) only excludes `HAND_PLAYED`/`DRAW_TO_HAND`/`PLAY_TAROT`.
Empirical: used Hermit during blind select → money 15→30, consumable consumed, state stayed `BLIND_SELECT`.
## Fix
Add `G.STATES.BLIND_SELECT` to `requires_state` **and** the completion-detection `state_restored` whitelist (~L224). Both must change or the endpoint hangs.
Sibling of #202.
Contributor guide
Assessment
This issue has not been assessed yet.