TCS taxonomy v0.8
Deal
Experimental: structure may change in a subsequent edition. This page is pinned to v0.8.
Transfer cards one at a time from a source onto one or more target piles; at the default pile_position: top each pile receives them reversed, and in departure order at pile_position: bottom
Source fragment
The following is documentation data, not a standalone document or validation schema. Resolve references against the original source schema.
{
"id": "deal",
"description": "Transfer cards one at a time from a source onto one or more target piles; at the default pile_position: top each pile receives them reversed, and in departure order at pile_position: bottom",
"labels": {
"en": "Deal",
"es": "Repartir",
"fr": "Distribuer",
"de": "Austeilen"
},
"family_ref": "true-deals",
"aliases": [
"distribute"
],
"action_contract": {
"requires": [
"source"
],
"parameters": {
"count": {
"required": false,
"description": "Number of cards transferred",
"domain": "integer >= 1 | all",
"default": "all"
},
"piles": {
"required": false,
"description": "Target pile references receiving cards, top to bottom of the list (post-state-effects.md §2)",
"domain": "array",
"default": [
"target"
]
},
"distribution": {
"required": false,
"description": "How cards are apportioned across piles",
"domain": [
"round_robin",
"pile_by_pile"
],
"default": "round_robin"
},
"source_position": {
"required": false,
"description": "Position within source the cards are dealt from",
"domain": "top | bottom | integer >= 1",
"default": "top"
},
"pile_position": {
"required": false,
"description": "Insertion position within each receiving pile",
"domain": [
"top",
"bottom"
],
"default": "top"
},
"face": {
"required": false,
"description": "Resulting face orientation of the dealt cards",
"domain": [
"face_up",
"face_down",
"kept"
],
"default": "kept"
}
},
"post_state_invariant": "Cards leave source one at a time from source_position and land on the named target pile(s) at pile_position; with pile_position: top each receiving pile's arrival order is the reverse of departure order, and it is kept with pile_position: bottom. No card identity, mark, crimp or jog changes.",
"post_state": {
"state_schema_ref": "https://tamaraspec.org/schema/tcs-playing-cards-state-0.1.json",
"effects": [
{
"op": "move",
"select": {
"position": {
"param": "source_position"
},
"count": {
"param": "count"
}
},
"from": "source",
"to": {
"param": "piles"
},
"arrival": "singly",
"at": {
"param": "pile_position"
},
"face": {
"param": "face"
},
"distribution": {
"param": "distribution"
}
}
]
}
}
}Verbatim JSON · Source: schemas/tcs-taxonomy-0.8.json/verbs/deal