aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorh-v-smacker <hans-von-smacker+github@gmail.com>2018-01-07 17:00:58 +0300
committerh-v-smacker <hans-von-smacker+github@gmail.com>2018-01-07 17:00:58 +0300
commit123d32840e308a61ea245741f017528b7907000e (patch)
tree5d1535f82fb7768fb751d5a357715e7a9ef6aedf
parent260b71b2eec88435a144078e30d2b91585243040 (diff)
downloadfreezer-123d32840e308a61ea245741f017528b7907000e.tar.gz
freezer-123d32840e308a61ea245741f017528b7907000e.tar.bz2
freezer-123d32840e308a61ea245741f017528b7907000e.zip
Fixed pelmeni
-rw-r--r--init.lua32
1 files changed, 20 insertions, 12 deletions
diff --git a/init.lua b/init.lua
index b1cce8f..73db9eb 100644
--- a/init.lua
+++ b/init.lua
@@ -123,7 +123,7 @@ local function freezer_node_timer(pos, elapsed)
-- takes both regular and river water
if inv:contains_item("src", "bucket:bucket_water") or
inv:contains_item("src", "bucket:bucket_river_water") then
- if inv:room_for_item("dst", "default:ice") then
+ if inv:room_for_item("dst", "default:ice") and inv:room_for_item("dst", "bucket:bucket_empty") then
inv:remove_item("src", "bucket:bucket_water")
inv:remove_item("src", "bucket:bucket_river_water")
inv:add_item("dst", "default:ice")
@@ -136,7 +136,7 @@ local function freezer_node_timer(pos, elapsed)
-- of them giving 1 hp, achieving 50% increase in efficiency through processing
if minetest.get_modpath("ethereal") then
if inv:contains_item("src", "ethereal:bucket_cactus") then
- if inv:room_for_item("dst", "freezer:cactus_popsicle 3") then
+ if inv:room_for_item("dst", "freezer:cactus_popsicle 3") and inv:room_for_item("dst", "bucket:bucket_empty") then
inv:remove_item("src", "ethereal:bucket_cactus")
inv:add_item("dst", "freezer:cactus_popsicle 3")
inv:add_item("dst", "bucket:bucket_empty")
@@ -147,7 +147,7 @@ local function freezer_node_timer(pos, elapsed)
-- and yet another liquid in a bucket, this time with no extravagance though
if minetest.get_modpath("mobs") and mobs and mobs.mod == "redo" then
if inv:contains_item("src", "mobs:bucket_milk") then
- if inv:room_for_item("dst", "freezer:milk_popsicle 3") then
+ if inv:room_for_item("dst", "freezer:milk_popsicle 3") and inv:room_for_item("dst", "bucket:bucket_empty") then
inv:remove_item("src", "mobs:bucket_milk")
inv:add_item("dst", "freezer:milk_popsicle 3")
inv:add_item("dst", "bucket:bucket_empty")
@@ -176,7 +176,7 @@ local function freezer_node_timer(pos, elapsed)
local input_name = input_stack:get_name();
if minetest.get_item_group(input_name, "juice") > 0 then
local output_name = input_name .. "_popsicle"
- while inv:room_for_item("dst", output_name) do
+ while inv:room_for_item("dst", output_name) and inv:room_for_item("dst", "vessels:drinking_glass") do
local removed = inv:remove_item("src", input_name)
if removed:get_count() > 0 then
inv:add_item("dst", output_name)
@@ -194,9 +194,13 @@ local function freezer_node_timer(pos, elapsed)
-- raw pelmeni -> pack of frozen pelmeni -> actual cooked pelmeni
if minetest.get_modpath("mobs") and mobs and mobs.mod == "redo" and minetest.get_modpath("farming") then
if inv:contains_item("src", "freezer:pelmeni_raw") then
- if inv:room_for_item("dst", "freezer:pelmeni_pack 3") then
- inv:remove_item("src", "freezer:pelmeni_raw")
- inv:add_item("dst", "freezer:pelmeni_pack 3")
+ while inv:room_for_item("dst", "freezer:pelmeni_pack 3") do
+ local removed = inv:remove_item("src", "freezer:pelmeni_raw")
+ if removed:get_count() > 0 then
+ inv:add_item("dst", "freezer:pelmeni_pack 3")
+ else
+ break
+ end
end
end
end
@@ -204,11 +208,15 @@ local function freezer_node_timer(pos, elapsed)
-- aspic
if minetest.get_modpath("mobs") and mobs and mobs.mod == "redo" and minetest.get_modpath("ethereal") then
if inv:contains_item("src", "freezer:meat_broth") then
- if inv:room_for_item("dst", "freezer:aspic 5") then
- inv:remove_item("src", "freezer:meat_broth")
- inv:add_item("dst", "freezer:aspic 5")
- inv:add_item("dst", "bucket:bucket_empty")
- end
+ while inv:room_for_item("dst", "freezer:aspic 5") and inv:room_for_item("dst", "bucket:bucket_empty") do
+ local removed = inv:remove_item("src", "freezer:meat_broth")
+ if removed:get_count() > 0 then
+ inv:add_item("dst", "freezer:aspic 5")
+ inv:add_item("dst", "bucket:bucket_empty")
+ else
+ break
+ end
+ end
end
end