Module:FPS diff
From ALttP Speedrunning Wiki
Documentation for this module may be created at diff/doc&action=edit&redlink=1 Module:FPS diff/doc
local p = {} local SNES_fps = 60.0988 local frames_per_hour = 60 * 60 local color_lose = '#FF0000' local color_same = '#0000FF' local color_gain = '#00AA00' function p.main(frame) local args = frame:getParent().args local fps = args.fps or nil if fps then fps = tonumber(fps, 10) else fps = SNES_fps end local diff = (SNES_fps - fps) * frames_per_hour local sign local color if diff > 0 then -- >0 means the snes has more frames per hour, so this system is losing sign = '−' color = color_lose elseif diff < 0 then sign = '+' color = color_gain else sign = '±' color = color_same end diff = math.floor(math.abs(diff)) local diff_seconds = math.floor(diff/60) local diff_frames = diff%60 local ret = mw.html.create('span') :css({ color = color }) :wikitext(string.format('%s% 2ds%02df', sign, diff_seconds, diff_frames)) return ret end function p.snes_fps() return SNES_fps end return p