Impl game event type build
parent
011826762f
commit
6ac68214ce
|
|
@ -26,23 +26,28 @@ pub enum GameEventType {
|
|||
|
||||
impl GameEventType {
|
||||
fn from_string(s: String) -> GameEventType {
|
||||
match s.as_ref() {
|
||||
"Null" => return GameEventType::Null,
|
||||
"GameStart" => return GameEventType::GameStart,
|
||||
"RoleSet" => return GameEventType::RoleSet,
|
||||
"ElectionPend" => return GameEventType::ElectionPend,
|
||||
"ElectionSet" => return GameEventType::ElectionSet,
|
||||
"VoteSet" => return GameEventType::VoteSet,
|
||||
"CardPend" => return GameEventType::CardPend,
|
||||
"CardPick" => return GameEventType::CardPick,
|
||||
"PolicySet" => return GameEventType::PolicySet,
|
||||
"SpecialInspect" => return GameEventType::SpecialInspect,
|
||||
"SpecialSelect" => return GameEventType::SpecialSelect,
|
||||
"SpecialKill" => return GameEventType::SpecialKill,
|
||||
"SpecialPeek" => return GameEventType::SpecialPeek,
|
||||
"GameStop" => return GameEventType::GameStop,
|
||||
_ => return GameEventType::Null,
|
||||
let cases = vec![
|
||||
GameEventType::Null,
|
||||
GameEventType::GameStart,
|
||||
GameEventType::RoleSet,
|
||||
GameEventType::ElectionPend,
|
||||
GameEventType::ElectionSet,
|
||||
GameEventType::VoteSet,
|
||||
GameEventType::CardPend,
|
||||
GameEventType::CardPick,
|
||||
GameEventType::PolicySet,
|
||||
GameEventType::SpecialInspect,
|
||||
GameEventType::SpecialSelect,
|
||||
GameEventType::SpecialKill,
|
||||
GameEventType::SpecialPeek,
|
||||
GameEventType::GameStop,
|
||||
];
|
||||
for c in &cases {
|
||||
if format!("{:?}", c) == s {
|
||||
return *c;
|
||||
}
|
||||
}
|
||||
GameEventType::Null
|
||||
}
|
||||
|
||||
fn build(&self) -> GameEvent {
|
||||
|
|
|
|||
Loading…
Reference in New Issue