Skip to main content

cardinal_kernel/model/
action.rs

1use crate::ids::{CardId, PlayerId, ZoneId};
2
3#[derive(Debug, Clone)]
4pub enum Action {
5    PassPriority,
6    Concede,
7
8    // Example: play a card from a zone (usually hand)
9    PlayCard {
10        card: CardId,
11        from: ZoneId,
12    },
13
14    // Example: choose target for a pending choice
15    ChooseTarget {
16        choice_id: u32,
17        target: TargetRef,
18    },
19}
20
21#[derive(Debug, Clone)]
22pub enum TargetRef {
23    Player(PlayerId),
24    Card(CardId),
25}