mons_rust/models/
next_input.rs

1use crate::*;
2
3#[derive(Debug, PartialEq, Eq, Hash, Clone, Copy)]
4pub enum NextInputKind {
5    MonMove,
6    ManaMove,
7    MysticAction,
8    DemonAction,
9    DemonAdditionalStep,
10    SpiritTargetCapture,
11    SpiritTargetMove,
12    SelectConsumable,
13    BombAttack,
14}
15
16#[derive(Debug, PartialEq, Eq, Hash, Clone)]
17pub struct NextInput {
18    pub input: Input,
19    pub kind: NextInputKind,
20    pub actor_mon_item: Option<Item>,
21}
22
23impl NextInput {
24    pub fn new(input: Input, kind: NextInputKind, actor_mon_item: Option<Item>) -> Self {
25        Self {
26            input,
27            kind,
28            actor_mon_item,
29        }
30    }
31}