Module:ClockPhase
Jump to navigation
Jump to search
This module implements {{ClockPhase}}
.
[view] [edit] [history] [refresh]The above documentation is transcluded from Module:ClockPhase/doc.
local p = {}
function p.base( f )
local arg = require( 'Module:ProcessArgs' ).merge( true )[1] or 0
local num = tonumber(arg)
local span = mw.html.create( 'span' )
span:addClass('minetip')
if type(num) == "number" then
span:attr( 'data-minetip-title', tostring(num) )
local pos = (num % 24000) / 24000
span:wikitext( require( [[Module:Sprite]] ).base( {
name = 'Clock',
sheetsize = 256,
size = 16,
pos = math.floor((pos * 64 + 48.74) % 64) + 1,
scale = 2,
} ) )
return tostring( span )
else
local keys = {
day = 1000,
noon = 6000,
sunset = 12000,
dusk = 12000,
night = 13000,
midnight = 18000,
sunrise = 23000,
dawn = 23000
}
local word = string.lower(arg)
if keys[word] ~= nil then
num = (keys[word] % 24000) / 24000
else
num = 0
end
span:attr( 'data-minetip-title', arg )
span:wikitext( require( [[Module:Sprite]] ).base( {
name = 'Clock',
sheetsize = 256,
size = 16,
pos = math.floor((num * 64 + 48.74) % 64) + 1,
scale = 2,
} ) )
return tostring( span )
end
end
return p