Module:Game Credits

From JoJo's Bizarre Encyclopedia - JoJo Wiki
Revision as of 17:00, 13 January 2024 by KojoB (talk | contribs)
Jump to navigation Jump to search

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

local p = {}

local preDefinedRoles = mw.loadData( 'Module:Game Credits/roles' )

function p.main(frame)
	local output = ""
	local role = ""
	local rolejp = ""
	local name = ""
	local collapse = frame.args[1]
	
	local bg2 = frame:getParent().args["bg2"] or "Game2" -- Default value
	
	local i = 1
	while frame:getParent().args["name" .. i] ~= nil and frame:getParent().args["role" .. i] ~= nil do
		role = frame:getParent().args["role" .. i]
		rolejp = preDefinedRoles[role] and preDefinedRoles[role][2] or frame:getParent().args["rolejp" .. i] or ""
		role = preDefinedRoles[role] and preDefinedRoles[role][1] or role
		if rolejp ~= "" then
			rolejp =  " {{S|" .. rolejp .. "}}"
		end
		
		name = frame:getParent().args["name" .. i]
		
		output = output .. frame:expandTemplate{ title = "Row", args = {
			"'''" .. role .. "'''" .. rolejp, 
			name, 
			bg1 = bg2, 
			border = "#3f3e3e54", 
			w1 = "15%", 
			Image = "True" 
		}}
	
		if i == collapse then
			output = output .. "{{!}}Div2="
		end
		
		i = i + 1
	end
	
	return frame:preprocess(output)
end

return p