From d5ff69d1d9efd683d852562af6cfddac5ac69879 Mon Sep 17 00:00:00 2001 From: Gábriel <38207624+gabriel1379@users.noreply.github.com> Date: Mon, 25 Mar 2024 19:45:57 +0100 Subject: [PATCH] Add Everness sandstone compressor recipes (#634) --- technic/tools/vacuum.lua | 25 ++++++++++++------------- 1 files changed, 12 insertions(+), 13 deletions(-) diff --git a/technic/tools/vacuum.lua b/technic/tools/vacuum.lua index 86e6b64..a715d99 100644 --- a/technic/tools/vacuum.lua +++ b/technic/tools/vacuum.lua @@ -14,24 +14,23 @@ wear_represents = "technic_RE_charge", on_refill = technic.refill_RE_charge, on_use = function(itemstack, user, pointed_thing) - local meta = minetest.deserialize(itemstack:get_metadata()) - if not meta or not meta.charge then + local meta = technic.get_stack_meta(itemstack) + local charge = meta:get_int("technic:charge") + if charge < vacuum_charge_per_object then return end - if meta.charge > vacuum_charge_per_object then - minetest.sound_play("vacuumcleaner", { - to_player = user:get_player_name(), - gain = 0.4, - }) - end + minetest.sound_play("vacuumcleaner", { + to_player = user:get_player_name(), + gain = 0.4, + }) local pos = user:get_pos() local inv = user:get_inventory() for _, object in ipairs(minetest.get_objects_inside_radius(pos, vacuum_range)) do local luaentity = object:get_luaentity() if not object:is_player() and luaentity and luaentity.name == "__builtin:item" and luaentity.itemstring ~= "" then if inv and inv:room_for_item("main", ItemStack(luaentity.itemstring)) then - meta.charge = meta.charge - vacuum_charge_per_object - if meta.charge < vacuum_charge_per_object then + charge = charge - vacuum_charge_per_object + if charge < vacuum_charge_per_object then return end inv:add_item("main", ItemStack(luaentity.itemstring)) @@ -44,9 +43,9 @@ end end end - - technic.set_RE_wear(itemstack, meta.charge, vacuum_max_charge) - itemstack:set_metadata(minetest.serialize(meta)) + + meta:set_int("technic:charge", charge) + technic.set_RE_wear(itemstack, charge, vacuum_max_charge) return itemstack end, }) -- Gitblit v1.8.0