Difference between revisions of "Module:Damage display"

From ALttP Speedrunning Wiki
Jump to: navigation, search
Line 23: Line 23:
 
local ret = mw.html.create('div')
 
local ret = mw.html.create('div')
 
:attr('title', title)
 
:attr('title', title)
:css('line-height', '0')
+
:css({ ['line-height'] = '0',
 +
display = 'inline-block' })
  
 
if i > 0 then
 
if i > 0 then
Line 38: Line 39:
 
end
 
end
  
return tostring(ret)
+
return ret
 
end
 
end
  
 
return p
 
return p

Revision as of 14:44, 6 June 2019

Documentation for this module may be created at display/doc&action=edit&redlink=1 Module:Damage display/doc

local p = {}

function p.main(frame)
	local args = frame:getParent().args

	local dmg = args[1] or 0

	return p._main(dmg)
end

function p._main(d)
	local title = string.format('$%02X damage; (%s decimal)', d, d)

	local i = math.floor(d / 8)
	local f = d % 8

	if i == 0 and f == 0 then
			return mw.html.create('div')
							:wikitext('[[File:hit-0.png|link=]]')
							:done()
	end

	local ret = mw.html.create('div')
					:attr('title', title)
					:css({	['line-height'] = '0',
							display = 'inline-block' })

	if i > 0 then
		ret	:tag('div')
				:css('max-width', '36px')
				:wikitext(string.rep('[[File:hit-8.png|link=]]', i))
				:done()
	end

	if f > 0 then
		ret	:tag('div')
				:wikitext(string.format('[[File:hit-%s.png|link=]]', f))
				:done()
	end

	return ret
end

return p