From 6dd12fd5619b189dbc53dc117d25eaf5695449e0 Mon Sep 17 00:00:00 2001 From: Joey Hines Date: Fri, 8 Dec 2023 19:43:45 -0700 Subject: [PATCH] Added vampires roles and buffed spy/agent --- src/game/listener/mod.rs | 2 +- src/game/role/mod.rs | 19 +++++++++++++++++++ src/game/role/spy.rs | 4 ++-- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/src/game/listener/mod.rs b/src/game/listener/mod.rs index 680c367..a7dc030 100644 --- a/src/game/listener/mod.rs +++ b/src/game/listener/mod.rs @@ -101,6 +101,6 @@ pub trait Listener: Debug + Send + Sync { _ctx: &mut ListenerContext, _msg: &WoxlfMessage, ) -> Result { - return Ok(EventStatus::Okay); + Ok(EventStatus::Okay) } } diff --git a/src/game/role/mod.rs b/src/game/role/mod.rs index 011ec86..11c5676 100644 --- a/src/game/role/mod.rs +++ b/src/game/role/mod.rs @@ -45,12 +45,19 @@ pub enum Role { Shepard, Dreamer, ApprenticeSeer, + Necromancer, + Helsing, + Priest, // Wolf Roles MasterWolf, WolfShaman, Wolf, WolfAgent, WolfDreamer, + // Vampires, + TheCount, + ThinBlood, + Vampire, // Custom Role Custom(String, RoleColor), } @@ -80,6 +87,12 @@ impl Display for Role { Role::ApprenticeSeer => "Apprentice Seer", Role::WolfAgent => "Wolf Agent", Role::WolfDreamer => "Wolf Dreamer", + Role::Necromancer => "Necromancer", + Role::Helsing => "Helsing", + Role::TheCount => "The Count", + Role::ThinBlood => "Thin Blood", + Role::Vampire => "Vampire", + Role::Priest => "Priest", }; write!(f, "{}", s) @@ -112,6 +125,12 @@ impl Role { Role::ApprenticeSeer => RoleColor::Blue, Role::WolfAgent => RoleColor::Red, Role::WolfDreamer => RoleColor::Red, + Role::Necromancer => RoleColor::Blue, + Role::Helsing => RoleColor::Blue, + Role::TheCount => RoleColor::Purple, + Role::ThinBlood => RoleColor::Green, + Role::Vampire => RoleColor::Purple, + Role::Priest => RoleColor::Blue, } } diff --git a/src/game/role/spy.rs b/src/game/role/spy.rs index b1970cf..d791a4b 100644 --- a/src/game/role/spy.rs +++ b/src/game/role/spy.rs @@ -60,8 +60,8 @@ impl Listener for SpyListener { return Ok(EventStatus::Okay); } - // 1/4 chance to intercept message - if thread_rng().gen_bool(0.25) { + // 50% chance to intercept message + if thread_rng().gen_bool(0.50) { println!("Sending a spy message..."); let msg_content = MessageBuilder::default()