Module:Test: Difference between revisions

From Heroes 3 wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 3: Line 3:
function p.test(frame)
function p.test(frame)
local items = loadData("Creatures")
local items = loadData("Creatures")
return getKeys(items) .. "<br>" .. getValues(items)
-- return getKeys(items) .. "<br>" .. getValues(items)
return getValues(items)
end
end



Revision as of 20:35, 28 March 2025

{{#invoke:test|test}}

Lua error at line 21: attempt to concatenate field 'name' (a nil value).


local p = {}

function p.test(frame)
	local items = loadData("Creatures")
	-- return getKeys(items) .. "<br>" .. getValues(items)
	return getValues(items)
end

function getKeys(items)
	local result = ""
	for k, v in pairs(items) do
		result = result .. k .. ", "
	end
	result = result:sub(1, -3)
	return result
end

function getValues(items)
	local result = ""
	for k, v in pairs(items) do
		result = result .. v["name"] .. "'s attack is " .. v["attack"] .. ", "
	end
	result = result:sub(1, -3)
	return result
end

function loadData(name)
	if mw.title.new(name, 828).exists then
		return mw.loadData("Module:" .. name)
	end
	return nil
end

return p