Skip to content

fix!(lua.endpoints): allow use of consumables during ROUND_EVAL #203

Description

@S1M0N38

The use endpoint rejects valid consumable use during ROUND_EVAL that the game permits. Verified against vendors/lovely/dump/ and confirmed empirically.

Bug

src/lua/endpoints/use.lua requires_state omits ROUND_EVAL, so using a consumable mid-eval 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, and G.FUNCS.use_card explicitly restores the G.round_eval UI offset.

Empirical: used Hermit mid-eval → money 4→8, consumable consumed, state stayed ROUND_EVAL.

Fix

Add G.STATES.ROUND_EVAL to requires_state and the completion-detection state_restored whitelist (~L224). Both must change or the endpoint hangs.

Sibling of #202.

Metadata

Metadata

Assignees

Labels

completed-in-devThis issue have been solved in dev branch

Type

Fields

No fields configured for Bug.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions