diff options
author | Wuzzy <almikes@aol.com> | 2016-08-07 04:38:08 +0200 |
---|---|---|
committer | Wuzzy <almikes@aol.com> | 2016-08-07 04:38:08 +0200 |
commit | 80f99cffe7e72f3fb9b62cd6731b63d74c52cf74 (patch) | |
tree | d2d7d4ab0d26e700358ce26dcdd4508b7ffddc1a /api.lua | |
parent | 09c731cee064e30b2e15b235a2eb4bb05683122d (diff) |
Take count into account for complex node drops
Diffstat (limited to 'api.lua')
-rw-r--r-- | api.lua | 13 |
1 files changed, 12 insertions, 1 deletions
@@ -61,16 +61,27 @@ minetest.after(0.01, function() --[[ Extract single items from the table and save them into dedicated table to register them later, in order to avoid duplicates ]] local drop_memo = {} + --[[ Also take count into account ]] + local drop_count = {} for i=1,#def.drop.items do local itit = def.drop.items[i] for j=1,#itit.items do local dstack = ItemStack(itit.items[j]) if not dstack:is_empty() and dstack:get_name() ~= name then local dname = dstack:get_name() + local dcount = dstack:get_count() + if drop_count[dname] == nil then + drop_count[dname] = 0 + end if #itit.items == 1 and itit.rarity == 1 then + if drop_count[dname] == "digging_chance" then + drop_count[dname] = 0 + end drop_memo[dname] = "digging" + drop_count[dname] = drop_count[dname] + dcount elseif drop_memo[dname] ~= "digging" then drop_memo[dname] = "digging_chance" + drop_count[dname] = drop_count[dname] + dcount end end end @@ -79,7 +90,7 @@ minetest.after(0.01, function() unified_inventory.register_craft({ type = crafttype, items = {name}, - output = itemstring, + output = itemstring .. " " .. drop_count[itemstring], width = 0, }) end |