aboutsummaryrefslogtreecommitdiff
path: root/server/src
diff options
context:
space:
mode:
Diffstat (limited to 'server/src')
-rw-r--r--server/src/data/mod.rs8
-rw-r--r--server/src/interaction.rs5
2 files changed, 9 insertions, 4 deletions
diff --git a/server/src/data/mod.rs b/server/src/data/mod.rs
index e5cd4552..17ebd5bf 100644
--- a/server/src/data/mod.rs
+++ b/server/src/data/mod.rs
@@ -307,6 +307,7 @@ pub fn build_data(
maps.sort_by_key(|(_, m)| m.players);
let mut tile_placeable_items = BTreeMap::new();
+ let mut tile_interactable_empty = HashSet::new();
for tile_name in map_in.collider.iter().chain(map_in.walkable.iter()) {
let tile = reg.register_tile(tile_name.to_string());
let whitelist = recipes
@@ -314,7 +315,13 @@ pub fn build_data(
.filter(|r| r.tile() == Some(tile))
.flat_map(|e| e.inputs())
.collect();
+ let int_empty = recipes
+ .iter()
+ .any(|r| r.tile() == Some(tile) && r.inputs().is_empty());
tile_placeable_items.insert(tile, whitelist);
+ if int_empty {
+ tile_interactable_empty.insert(tile);
+ }
}
let tile_walkable = map_in
.walkable
@@ -338,6 +345,7 @@ pub fn build_data(
maps,
tile_walkable,
tile_placeable_items,
+ tile_interactable_empty,
recipes,
item_names,
demands,
diff --git a/server/src/interaction.rs b/server/src/interaction.rs
index 8f591db1..5a8372ee 100644
--- a/server/src/interaction.rs
+++ b/server/src/interaction.rs
@@ -35,10 +35,7 @@ pub fn interact(
automated: bool,
packet_out: &mut VecDeque<PacketC>,
) {
- // let interactable = automated
- // || tile
- // .map(|tile| data.is_tile_interactable(tile))
- // .unwrap_or(true);
+ let _ = automated; //? what was this used for??
if other.is_none() {
if let Some(item) = this {
if let Some(active) = &mut item.active {