error corrected during json parsing
parent
4ba8120edd
commit
4ad92ab151
|
@ -181,50 +181,71 @@ minerdream.register_ore=function(i,tdef)
|
|||
minerdream.register_weapons(i,tdef)
|
||||
end
|
||||
|
||||
if tdef.tools~=nil then
|
||||
local adef=tdef.tools
|
||||
local ingot_name=minerdream.items[i].ingot_def.name
|
||||
for _,tool in pairs({"pick","axe","sword","shovel","spear"}) do
|
||||
if tdef[tool] ~= nil then
|
||||
local ttv=tdef[tool]
|
||||
if tdef.tools[tool] ~= nil then
|
||||
local ttv=tdef.tools[tool]
|
||||
for _,it in pairs({"range","maxlevel","tool_stick","fleshy","level","cracky","crumbly","choppy","snappy","use"}) do
|
||||
if ttv[it] == nil and adef[it] ~= nil then
|
||||
ttv[it] = adef[it]
|
||||
end
|
||||
end
|
||||
|
||||
local fleshy=ttv.fleshy or tdef.tools.fleshy or 4
|
||||
local uses=ttv.use or tdef.tools.use
|
||||
local tdesc=core.colorize("#"..tdef.tierd.color, S(i:gsub("^%l", string.upper)).." "..S(tool:gsub("^%l", string.upper)).."\n")..
|
||||
core.colorize("#A0A0A0", "tier: "..tdef.tierd.name.." ("..tdef.tierd.desc..")")
|
||||
-- check special attributes of tool definition and use fallback definitions
|
||||
if tdef.uses then
|
||||
tdesc=tdesc.."\n"..core.colorize("#A0A0A0",S("Uses")..": "..tdef.uses)
|
||||
if uses then
|
||||
tdesc=tdesc.."\n"..core.colorize("#A0A0A0",S("Uses")..": "..uses)
|
||||
end
|
||||
if ttv.maxlevel then
|
||||
tdesc=tdesc.."\n"..core.colorize("#A0A0A0",S("Max. Level")..": "..ttv.maxlevel)
|
||||
end
|
||||
if ttv.fleshy then
|
||||
tdesc=tdesc.."\n"..core.colorize("#A0A0A0",S("Damage")..": "..ttv.fleshy)
|
||||
tdesc=tdesc.."\n"..core.colorize("#A0A0A0",S("Damage")..": "..fleshy)
|
||||
end
|
||||
tt_def={description=tdesc,
|
||||
inventory_image=minerdream.modname.."_"..tool.."_"..i..".png",
|
||||
range=tdef.range or 2,
|
||||
tt_def={description=tdesc,uses=uses,
|
||||
inventory_image=ttv.inventory_image or minerdream.modname.."_"..tool.."_"..i..".png",
|
||||
range=ttv.range or tdef.tools.range or 2,
|
||||
groups={weapon=1},
|
||||
tool_capabilities={max_drop_level = 1,groupcaps={},
|
||||
damage_groups = {fleshy = ttv.fleshy or 4},},
|
||||
damage_groups = {fleshy = fleshy},},
|
||||
}
|
||||
-- check if values for capabitlites exist
|
||||
for _,gc in pairs({"cracky","crumbly","choppy","snappy"}) do
|
||||
if ttv[gc] ~= nil then
|
||||
local ml = 1
|
||||
if tdef.maxlevel ~=nil then
|
||||
ml=tdef.maxlevel
|
||||
end
|
||||
if ttv.maxlevel ~= nil then
|
||||
ml = ttv.maxlevel
|
||||
end
|
||||
local ml = ttv.maxlevel or tdef.tools.maxlevel or 1
|
||||
tt_def.tool_capabilities.groupcaps[gc]={times=table.copy(ttv[gc]),
|
||||
uses=tdef.uses,maxlevel=ml}
|
||||
end
|
||||
end
|
||||
toolname=minerdream.modname..":"..tool.."_"..i
|
||||
minetest.register_tool(toolname,tt_def)
|
||||
|
||||
local stick = ttv.tool_stick or "group:stick"
|
||||
minetest.register_craft({
|
||||
output=toolname,
|
||||
recipe=local_get_recipe(tool,ingot_name,stick)
|
||||
})
|
||||
|
||||
end
|
||||
end
|
||||
for _,tool in pairs({"helmet","chestplate","boots","leggings","shields"}) do
|
||||
if tdef[tool] ~= nil then
|
||||
local ttv=tdef[tool]
|
||||
tdesc=core.colorize("#"..tdef.tierd.color, S(i:gsub("^%l", string.upper)).." "..S(tool:gsub("^%l", string.upper)).."\n")..
|
||||
end
|
||||
if tdef["3d_armor"] ~= nil then
|
||||
local ingot_name=minerdream.items[i].ingot_def.name
|
||||
local adef=tdef["3d_armor"]
|
||||
for _,tool in pairs({"helmet","chestplate","boots","leggings","shield"}) do
|
||||
if tdef["3d_armor"][tool] ~= nil then
|
||||
local ttv=tdef["3d_armor"][tool]
|
||||
for _,it in pairs({"fleshy","heal","speed","gravity","jump","level","cracky","crumbly","choppy","snappy","use"}) do
|
||||
if ttv[it] == nil and adef[it] ~= nil then
|
||||
ttv[it] = adef[it]
|
||||
end
|
||||
end
|
||||
local tdesc=core.colorize("#"..tdef.tierd.color, S(i:gsub("^%l", string.upper)).." "..S(tool:gsub("^%l", string.upper)).."\n")..
|
||||
core.colorize("#A0A0A0", "tier: "..tdef.tierd.name.." ("..tdef.tierd.desc..")")
|
||||
if ttv.fleshy then
|
||||
tdesc=tdesc.."\n"..core.colorize("#A0A0A0",S("Defense")..": "..ttv.fleshy)
|
||||
|
@ -242,7 +263,7 @@ minerdream.register_ore=function(i,tdef)
|
|||
tdesc=tdesc.."\n"..core.colorize("#A0A0A0",S("Jump force")..": "..(ttv.jump*100).."%")
|
||||
end
|
||||
tt_def={description=tdesc,
|
||||
inventory_image=minerdream.modname.."_inv_"..tool.."_"..i..".png",
|
||||
inventory_image=ttv.inventory_image or minerdream.modname.."_inv_"..tool.."_"..i..".png",
|
||||
damage_groups = {level = ttv.level or 2},
|
||||
armor_groups={fleshy=ttv.fleshy or 10},
|
||||
groups={armor_heal=ttv.heal,armor_use=ttv.use,
|
||||
|
@ -259,12 +280,20 @@ minerdream.register_ore=function(i,tdef)
|
|||
tt_def.groups.armor_legs=1
|
||||
elseif tool == "boots" then
|
||||
tt_def.groups.armor_feet=1
|
||||
elseif tool == "shields" then
|
||||
elseif tool == "shield" then
|
||||
tt_def.groups.armor_shield=1
|
||||
end
|
||||
|
||||
toolname=minerdream.modname..":"..tool.."_"..i
|
||||
armor:register_armor(toolname,tt_def)
|
||||
|
||||
local stick = ttv.tool_stick or "group:stick"
|
||||
minetest.register_craft({
|
||||
output=toolname,
|
||||
recipe=local_get_recipe(tool,ingot_name,stick)
|
||||
})
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue