Module:Principle

From Corsair Cove Official Wiki
Revision as of 12:12, 3 August 2026 by Dorce (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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