diff options
Diffstat (limited to 'server/src/interaction.rs')
| -rw-r--r-- | server/src/interaction.rs | 11 | 
1 files changed, 7 insertions, 4 deletions
| diff --git a/server/src/interaction.rs b/server/src/interaction.rs index 7ef4a9b4..fadfe8d9 100644 --- a/server/src/interaction.rs +++ b/server/src/interaction.rs @@ -38,6 +38,11 @@ pub fn interact(          return;      } +    if !items.is_empty() && hand.is_none() { +        out(Take(items.len() - 1)); +        return; +    } +      if let Some(hi) = hand {          if allowed.contains(&hi) {              out(Put); @@ -66,6 +71,7 @@ pub fn interact(              match r.action {                  Action::Passive(_) => { +                    info!("use recipe {r:?}");                      *active = Some(ActiveRecipe {                          recipe: ri,                          progress: 0., @@ -85,14 +91,11 @@ pub fn interact(                      if !r.outputs.is_empty() {                          out(Take(r.outputs.len() - 1));                      } +                    items.clear();                      break 'rloop;                  }                  Action::Never => (),              }          }      } - -    if !items.is_empty() && hand.is_none() { -        out(Take(items.len() - 1)); -    }  } | 
