×
Create a new article
Write your page title here:
We currently have 6 articles on NOISZ Wiki. Type your article name above or click on one of the titles below and start writing!



NOISZ Wiki
6Articles

Module:Character Infobox: Difference between revisions

No edit summary
No edit summary
 
(33 intermediate revisions by the same user not shown)
Line 4: Line 4:
local args = frame:getParent().args
local args = frame:getParent().args
local infobox = capiunto.create( {
local infobox = capiunto.create( {
title1 = {{PAGENAME}}
title = tostring(mw.title.getCurrentTitle())
    } )
    } )
:addImage('Image', args.image1, args.caption )
if args.image1 then
:addRow( 'Voice', args.voice )
infobox:addImage('[[File:' .. args.image1 .. '|200px]]', args.caption )
:addRow( 'JP Name', args.jpname )
end
:addHeader( 'Physical' )
local attributes =
:addRow( 'Also known as', args.also_known_as )
{
:addRow( 'Eye Colour', args.eye_colour )
{'Voice', args.voice },
:addRow( 'Hair Colour', args.hair_colour )
{ 'JP Name', args.jpname },
:addRow( 'Height', args.height )
{ 'Also known as', args.also_known_as }
:addHeader( 'Biographical' )
}
:addRow( 'Age', args.age )
local physical =
:addRow ( 'Birthday', args.birthday )
{
:addRow ( 'Likes', args.likes )
{ 'Eye Colour', args.eye_colour },
:addRow ( 'Dislikes', args.dislikes )
{ 'Hair Colour', args.hair_colour },
:addRow ( 'Relationships', args.relationships )
{ 'Height', args.height }
}
local biographical =
{
{ 'Age', args.age },
{ 'Birthday', args.birthday },
{ 'Likes', args.likes },
{ 'Dislikes', args.dislikes },
{ 'Relationships', args.relationships }
}
if args.voice or args.jpname or args.also_known_as then
for _, row in ipairs(attributes) do
local label, value = row[1], row[2]
if value and value ~= '' then
          infobox:addRow(label, value)
end
end
end
if args.eye_colour or args.hair_colour or args.height then
infobox:addHeader( 'Physical' )
for _, row in ipairs(physical) do
local label, value = row[1], row[2]
if value and value ~= '' then
          infobox:addRow(label, value)
end
end
end
if args.age or args.birthday or args.likes or args.dislikes or args.relationships then
infobox:addHeader( 'Biographical' )
for _, row in ipairs(biographical) do
local label, value = row[1], row[2]
if value and value ~= '' then
          infobox:addRow(label, value)
end
end
end
     return infobox
     return infobox
end
end


return p
return p

Latest revision as of 10:01, 4 June 2025

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

local capiunto = require 'capiunto'
local p = {}
function p.main(frame) 
	local args = frame:getParent().args
	local infobox = capiunto.create( {
		title = tostring(mw.title.getCurrentTitle())
    	} )
	if args.image1 then
		infobox:addImage('[[File:' .. args.image1 .. '|200px]]', args.caption )
	end
	local attributes = 
	{
		{'Voice', args.voice },
		{ 'JP Name', args.jpname },
		{ 'Also known as', args.also_known_as }
	}
	local physical = 
	{
		{ 'Eye Colour', args.eye_colour },
		{ 'Hair Colour', args.hair_colour },
		{ 'Height', args.height }
	}
	local biographical = 
	{
		{ 'Age', args.age },
		{ 'Birthday', args.birthday },
		{ 'Likes', args.likes },
		{ 'Dislikes', args.dislikes },
		{ 'Relationships', args.relationships }
	}
	if args.voice or args.jpname or args.also_known_as then
		for _, row in ipairs(attributes) do
			local label, value = row[1], row[2]
			if value and value ~= '' then
           		infobox:addRow(label, value)
			end
		end
	end
	if args.eye_colour or args.hair_colour or args.height then
		infobox:addHeader( 'Physical' )
		for _, row in ipairs(physical) do
			local label, value = row[1], row[2]
			if value and value ~= '' then
           		infobox:addRow(label, value)
			end
		end
	end
	if args.age or args.birthday or args.likes or args.dislikes or args.relationships then
		infobox:addHeader( 'Biographical' )
		for _, row in ipairs(biographical) do
			local label, value = row[1], row[2]
			if value and value ~= '' then
           		infobox:addRow(label, value)
			end
		end
	end
	
    return infobox
end

return p