Module:Game Credits: Difference between revisions

From JoJo's Bizarre Encyclopedia - JoJo Wiki
Jump to navigation Jump to search
Content deleted Content added
mNo edit summary
mNo edit summary
Line 9: Line 9:
local name = ""
local name = ""
local bg2 = frame:getParent().args["bg2"]
local bg2 = frame:getParent().args["bg2"] or "Game2" -- Default value
if bg2 == nil then
bg2 = "Game2" -- Default value
end
local i = 1
local i = 1
while frame:getParent().args["name" .. i] ~= nil and frame:getParent().args["role" .. i] ~= nil do
while frame:getParent().args["name" .. i] ~= nil and frame:getParent().args["role" .. i] ~= nil do
role = frame:getParent().args["role" .. i]
role = frame:getParent().args["role" .. i]
rolejp = preDefinedRoles[role][2] or frame:getParent().args["rolejp" .. i] or ""
rolejp = preDefinedRoles[role] and preDefinedRoles[role][2] or frame:getParent().args["rolejp" .. i] or ""
role = preDefinedRoles[role][1] or role
role = preDefinedRoles[role] and preDefinedRoles[role][1] or role
if rolejp ~= "" then
if rolejp ~= "" then
rolejp = " {{S|" .. rolejp .. "}}"
rolejp = " {{S|" .. rolejp .. "}}"

Revision as of 16:27, 13 January 2024

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 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" 
		}}
		i = i + 1
	end
	
	return frame:preprocess(output)
end

return p