forked from Mineclonia/Mineclonia
Fix get_possible_enchantments to not return incompatible enchantments, even if treasure enchantments are allowed
This commit is contained in:
parent
10670d5c10
commit
1adb5857ef
|
@ -120,7 +120,7 @@ function mcl_enchanting.can_enchant(itemstack, enchantment, level)
|
|||
if itemname == "" then
|
||||
return false, "item missing"
|
||||
end
|
||||
local supported, primary = mcl_enchanting.item_supports_enchantment(itemstack:get_name(), enchantment)
|
||||
local supported, primary = mcl_enchanting.item_supports_enchantment(itemname, enchantment)
|
||||
if not supported then
|
||||
return false, "item not supported"
|
||||
end
|
||||
|
@ -288,8 +288,8 @@ end
|
|||
function mcl_enchanting.get_possible_enchantments(itemstack, enchantment_level, treasure)
|
||||
local possible_enchantments, weights, accum_weight = {}, {}, 0
|
||||
for enchantment, enchantment_def in pairs(mcl_enchanting.enchantments) do
|
||||
local supported, _, _, primary = mcl_enchanting.can_enchant(itemstack, enchantment, 1)
|
||||
if primary or treasure then
|
||||
local can_enchant, _, _, primary = mcl_enchanting.can_enchant(itemstack, enchantment, 1)
|
||||
if can_enchant and (primary or treasure) then
|
||||
table.insert(possible_enchantments, enchantment)
|
||||
accum_weight = accum_weight + enchantment_def.weight
|
||||
weights[enchantment] = accum_weight
|
||||
|
|
Loading…
Reference in New Issue