85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
...
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
|
elseif slot == 'input' then
local metal = sorcery.data.metallookup[item:get_name()]
local mat = sorcery.matreg.lookup[item:get_name()]
local comp = sorcery.data.compat.grindables[item:get_name()]
if metal or (mat and mat.metal) or comp then
return item:get_count()
else
mat = item:get_definition()._matprop
if mat and mat.grindvalue then
return item:get_count()
end
end
end
return 0
end
................................................................................
-- allow grinding of armor and tools back to their
-- original components
local mat = sorcery.matreg.lookup[item:get_name()]
if mat and mat.metal then
metal = mat
end
end
local mp = item:get_definition()._matprop
or sorcery.data.compat.grindables[item:get_name()]
or {}
if metal then mp = {
hardness = mp.hardness or metal.data.hardness;
grindvalue = ((mp.grindvalue or metal.value) or (metal and constants.metal_grindvalue));
powder = mp.powder or metal.data.parts.powder;
|
|
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
...
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
elseif slot == 'input' then
local metal = sorcery.data.metallookup[item:get_name()]
local mat = sorcery.matreg.lookup[item:get_name()]
local comp = sorcery.data.compat.grindables[item:get_name()]
if metal or (mat and mat.metal) or comp then
return item:get_count()
else
mat = item:get_definition()._sorcery and
item:get_definition()._sorcery.material
if mat and mat.grindvalue then
return item:get_count()
end
end
end
return 0
end
................................................................................
-- allow grinding of armor and tools back to their
-- original components
local mat = sorcery.matreg.lookup[item:get_name()]
if mat and mat.metal then
metal = mat
end
end
local mp = (item:get_definition()._sorcery and
item:get_definition()._sorcery.material)
or sorcery.data.compat.grindables[item:get_name()]
or {}
if metal then mp = {
hardness = mp.hardness or metal.data.hardness;
grindvalue = ((mp.grindvalue or metal.value) or (metal and constants.metal_grindvalue));
powder = mp.powder or metal.data.parts.powder;
|