diff options
author | metamuffin <metamuffin@disroot.org> | 2025-09-21 23:03:57 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-09-21 23:03:59 +0200 |
commit | b44e489132ec7befec39a61bda5adcef159cbbcb (patch) | |
tree | 21f77c77810e9f9cfe3935375cf76bca8e7e527a /server/bot/src/algos/simple.rs | |
parent | 697903afa0e63d8138a30c3e7f54b1cc483c6807 (diff) | |
download | hurrycurry-b44e489132ec7befec39a61bda5adcef159cbbcb.tar hurrycurry-b44e489132ec7befec39a61bda5adcef159cbbcb.tar.bz2 hurrycurry-b44e489132ec7befec39a61bda5adcef159cbbcb.tar.zst |
Prioritize demands in waiter bot (fix #384)
Diffstat (limited to 'server/bot/src/algos/simple.rs')
-rw-r--r-- | server/bot/src/algos/simple.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/server/bot/src/algos/simple.rs b/server/bot/src/algos/simple.rs index 06bf76ab..f232062a 100644 --- a/server/bot/src/algos/simple.rs +++ b/server/bot/src/algos/simple.rs @@ -139,12 +139,12 @@ impl<S> Context<'_, S> { _ => None, }) } - pub fn find_demands(&self) -> Vec<(ItemIndex, IVec2)> { + pub fn find_demands_with_table(&self) -> Vec<(ItemIndex, IVec2, f32)> { self.game .players .iter() .filter_map(|(_, pl)| match &pl.communicate_persist { - Some((Message::Item(item), _)) => { + Some((Message::Item(item), timeout)) => { let pos = pl.movement.position.as_ivec2(); [IVec2::X, IVec2::Y, -IVec2::X, -IVec2::Y] .into_iter() @@ -155,7 +155,7 @@ impl<S> Context<'_, S> { .is_some_and(|t| self.game.data.tile_interact[t.kind.0]) }) .map(|off| pos + off) - .map(|pos| (*item, pos)) + .map(|pos| (*item, pos, timeout.remaining)) } _ => None, }) |