Module:Profession info: Difference between revisions

From Brighter Shores Wiki
Jump to navigation Jump to search
Content added Content deleted
No edit summary
No edit summary
Line 37: Line 37:
:done()
:done()
:tag('td')
:tag('td')
:wikitext(exparg(args.exp))
:wikitext(exparg(args.xp))
:done()
:done()
:done()
:done()

Revision as of 22:10, 26 November 2024

Module documentation
This documentation is transcluded from Module:Profession info/doc. [edit] [history] [purge]
This module does not have any documentation. Please consider adding documentation at Module:Profession info/doc. [edit]
Module:Profession info's function main is invoked by Template:Profession info.
Module:Profession info requires Module:Edit button.
Module:Profession info requires Module:Param Parse.
Module:Profession info requires Module:Quantity box.

local p = {}
local editbutton = require('Module:Edit button')
local edit = editbutton("'''?''' (edit)")
local hc = require('Module:Param Parse').has_content
local qty = require('Module:Quantity box')._main

function p.main(frame)
	local args = frame:getParent().args
	
	local function exparg(xp)
		if xp ~= '' then
			return qty(xp)
		else
			return qty(0) .. edit
		end
	end
	
	local out = mw.html.create('table')
		:addClass('wikitable')
		:tag('tr')
			:tag('th')
				:attr{ colspan = '2' }
				:wikitext(args.name)
			:done()
		:done()
		:tag('tr')
			:tag('th')
				:wikitext('Level required')
			:done()
			:tag('td')
				:wikitext(hc(args.level) and (args.level) or edit)
			:done()
		:done()
		:tag('tr')
			:tag('th')
				:wikitext('[['..args.profession..'|'..args.profession..' XP]]')
			:done()
			:tag('td')
				:wikitext(exparg(args.xp))
			:done()
		:done()
	
	return out
end

return p