Don't put so many beds and workbenches into chests
This commit is contained in:
parent
64391ac48d
commit
8f0bab95d8
@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
goodies = {}
|
goodies = {}
|
||||||
|
|
||||||
goodies.max_stack = 6
|
goodies.max_stack_default = 6
|
||||||
goodies.max_items = 20
|
goodies.max_items = 20
|
||||||
|
|
||||||
goodies.types = {}
|
goodies.types = {}
|
||||||
@ -35,7 +35,7 @@ if minetest.get_modpath("village") ~= nil then
|
|||||||
["default:tree_oak"] = 2,
|
["default:tree_oak"] = 2,
|
||||||
}
|
}
|
||||||
goodies.types["tavern"] = {
|
goodies.types["tavern"] = {
|
||||||
["bed:bed"] = 8,
|
["bed:bed"] = { chance = 8, max_stack = 1},
|
||||||
["default:bucket"] = 20,
|
["default:bucket"] = 20,
|
||||||
["mobs:meat"] = 5,
|
["mobs:meat"] = 5,
|
||||||
["mobs:pork"] = 9,
|
["mobs:pork"] = 9,
|
||||||
@ -54,7 +54,7 @@ if minetest.get_modpath("village") ~= nil then
|
|||||||
|
|
||||||
-- jewels and gold
|
-- jewels and gold
|
||||||
if minetest.get_modpath("jewels") ~= nil then
|
if minetest.get_modpath("jewels") ~= nil then
|
||||||
goodies.types["house"]["jewels:bench"] = 24 -- jeweling benches
|
goodies.types["house"]["jewels:bench"] = { chance = 24, max_stack = 1} -- jeweling benches
|
||||||
goodies.types["house"]["jewels:jewel"] = 34
|
goodies.types["house"]["jewels:jewel"] = 34
|
||||||
goodies.types["tavern"]["jewels:jewel"] = 32
|
goodies.types["tavern"]["jewels:jewel"] = 32
|
||||||
goodies.types["forge"]["jewels:jewel"] = 30
|
goodies.types["forge"]["jewels:jewel"] = 30
|
||||||
@ -86,10 +86,18 @@ function goodies.fill(pos, ctype, pr, listname, keepchance)
|
|||||||
local item_amt = pr:next(1, size)
|
local item_amt = pr:next(1, size)
|
||||||
|
|
||||||
for i = 1, item_amt do
|
for i = 1, item_amt do
|
||||||
local chance = goodies.types[ctype][util.choice(goodies.types[ctype], pr)]
|
|
||||||
local item = util.choice(goodies.types[ctype], pr)
|
local item = util.choice(goodies.types[ctype], pr)
|
||||||
|
local goodie = goodies.types[ctype][item]
|
||||||
|
local chance, max_stack
|
||||||
|
if type(goodie) == "table" then
|
||||||
|
chance = goodie.chance
|
||||||
|
max_stack = goodie.max_stack
|
||||||
|
else
|
||||||
|
chance = goodie
|
||||||
|
max_stack = goodies.max_stack_default
|
||||||
|
end
|
||||||
if pr:next(1, chance) <= 1 then
|
if pr:next(1, chance) <= 1 then
|
||||||
local max = math.min(goodies.max_stack, minetest.registered_items[item].stack_max)
|
local max = math.min(max_stack, minetest.registered_items[item].stack_max)
|
||||||
local itemstr = item.." "..pr:next(1, max)
|
local itemstr = item.." "..pr:next(1, max)
|
||||||
inv:set_stack(listname, pr:next(1, size), ItemStack(itemstr))
|
inv:set_stack(listname, pr:next(1, size), ItemStack(itemstr))
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user