yasuki_core.engine.rules.decisions.ChooseCards#

class ChooseCards(seat, candidates, minimum, maximum, resolver, source_id)[source]#

The seat must choose between minimum and maximum of the candidate cards — a variable-count target, as when a triggered effect targets “zero to two” cards. The chosen ids feed the named resolver, whose effects apply once the choice is made. The candidates are the cards the effect may legally target, all in play, so a client renders them as board selections.

Attributes:
minimumint

The fewest cards the seat may choose — zero when the effect is optional.

maximumint

The most cards the seat may choose.

resolverstr

The registered choice resolver that turns the chosen ids into effects.

source_idstr

The card whose effect raised the choice, passed to the resolver.

Methods

ChooseCards.__init__(seat, candidates, ...)

ChooseCards.accepts(response)

Return whether response is a structurally well-formed answer to this request — the right shape, drawn from candidates.

Attributes

minimum

maximum

resolver

source_id