diff options
author | metamuffin <metamuffin@disroot.org> | 2024-12-23 15:37:11 +0100 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2024-12-25 20:01:20 +0100 |
commit | b0df9b7c27a3d6316969d7feff4d912c3abf99f6 (patch) | |
tree | 118daa57feda8b571bd00bd22f6ff0dac4cc46de /server/bot/src/algos/simple.rs | |
parent | 2ceeea0e5fc245602618ec47f6ff1f91a094e130 (diff) | |
download | hurrycurry-b0df9b7c27a3d6316969d7feff4d912c3abf99f6.tar hurrycurry-b0df9b7c27a3d6316969d7feff4d912c3abf99f6.tar.bz2 hurrycurry-b0df9b7c27a3d6316969d7feff4d912c3abf99f6.tar.zst |
two-handed server
Diffstat (limited to 'server/bot/src/algos/simple.rs')
-rw-r--r-- | server/bot/src/algos/simple.rs | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/server/bot/src/algos/simple.rs b/server/bot/src/algos/simple.rs index 14eb38c4..5a7e61a0 100644 --- a/server/bot/src/algos/simple.rs +++ b/server/bot/src/algos/simple.rs @@ -21,7 +21,7 @@ use crate::{ }; use hurrycurry_client_lib::Game; use hurrycurry_protocol::{ - glam::IVec2, ItemIndex, Message, PlayerID, Recipe, RecipeIndex, TileIndex, + glam::IVec2, Hand, ItemIndex, Message, PlayerID, Recipe, RecipeIndex, TileIndex, }; use log::{debug, warn}; @@ -106,16 +106,17 @@ impl State for Simple { impl<S> Context<'_, S> { pub fn is_hand_item(&self, item: ItemIndex) -> bool { - self.game - .players - .get(&self.me) - .is_some_and(|p| p.item.as_ref().is_some_and(|i| i.kind == item)) + self.game.players.get(&self.me).is_some_and(|p| { + p.items[Hand::Left.index()] + .as_ref() + .is_some_and(|i| i.kind == item) + }) } pub fn is_hand_occupied(&self) -> bool { self.game .players .get(&self.me) - .map(|p| p.item.is_some()) + .map(|p| p.items[Hand::Left.index()].is_some()) .unwrap_or(false) } pub fn find_demand(&self) -> Option<(ItemIndex, IVec2)> { |