Module:Principle

From Corsair Cove Official Wiki

Documentation for this module may be created at Module:Principle/doc

local p = {}
local prData = mw.loadData("Module:PrincipleData")

local sizeMap = {
	xs = 16,
	sm = 32,
	md = 64,
	lg = 96,
	xl = 128,
}

function p.icon(frame)
	local args = frame.args
	local principle = args[1] or args.principle or ""
	local size = args.size or "xs"
	local px = sizeMap[size] or sizeMap.xs

	local entry = prData[principle]
	local filename = entry and entry.icon_file or "T Button SelectionBorder Default.png"

	return string.format(
		"[[File:%s|x%dpx|link=%s|%s]] [[%s]]",
		filename, px, principle, principle, principle
	)
end

return p