Template:Time: Difference between revisions

From Melvor Idle
No edit summary
m (Prefer modulo operator for accuracy)
Line 1: Line 1:
<onlyinclude><includeonly>{{#vardefine:Time|{{formatnum:{{{1|}}}|R}}}}{{#vardefine:Days|{{#expr:floor({{#var:Time}} / 86400)}}}}{{#vardefine:Time|{{#expr:{{#var:Time}} - {{#var:Days}} * 86400}}}}{{#vardefine:Hours|{{#expr:floor({{#var:Time}} / 3600)}}}}{{#vardefine:Time|{{#expr:{{#var:Time}} - {{#var:Hours}} * 3600}}}}{{#vardefine:Minutes|{{#expr:floor({{#var:Time}} / 60)}}}}{{#vardefine:Time|{{#expr:{{#var:Time}} - {{#var:Minutes}} * 60}}}}{{#vardefine:Seconds|{{#var:Time}}}}<!--
<onlyinclude><includeonly><!--
-->{{#ifexpr:{{#var:Days}} > 0|{{#var:Days}} day{{#ifexpr:{{#var:Days}}<>1|s}},&ensp;}}{{#ifexpr:{{#var:Hours}} > 0|{{#var:Hours}} hour{{#ifexpr:{{#var:Hours}}<>1|s}},&ensp;}}{{#ifexpr:{{#var:Minutes}} > 0|{{#var:Minutes}} minute{{#ifexpr:{{#var:Minutes}}<>1|s}},&ensp;}}{{#var:Seconds}} second{{#ifexpr:{{#var:Seconds}}<>1|s}}</includeonly></onlyinclude><noinclude>{{/doc}}</noinclude>
Definition of variables-->{{#vardefine:Time|{{formatnum:{{{1|}}}|R}}}}{{#vardefine:Days|{{#expr:floor({{#var:Time}} / 86400)}}}}{{#vardefine:Time|{{#expr:{{#var:Time}} mod 86400}}}}{{#vardefine:Hours|{{#expr:floor({{#var:Time}} / 3600)}}}}
{{#vardefine:Time|{{#expr:{{#var:Time}} mod 3600}}}}{{#vardefine:Minutes|{{#expr:floor({{#var:Time}} / 60)}}}}{{#vardefine:Time|{{#expr:{{#var:Time}} mod 60}}}}{{#vardefine:Seconds|{{#var:Time}}}}<!--
Output of template-->{{#ifexpr:{{#var:Days}} > 0|{{#var:Days}} day{{#ifexpr:{{#var:Days}}<>1|s}},&ensp;}}{{#ifexpr:{{#var:Hours}} > 0|{{#var:Hours}} hour{{#ifexpr:{{#var:Hours}}<>1|s}},&ensp;}}{{#ifexpr:{{#var:Minutes}} > 0|{{#var:Minutes}} minute{{#ifexpr:{{#var:Minutes}}<>1|s}},&ensp;}}{{#var:Seconds}} second{{#ifexpr:{{#var:Seconds}}<>1|s}}</includeonly></onlyinclude><noinclude>{{/doc}}</noinclude>

Revision as of 20:30, 1 April 2024

Takes in a number of seconds and converts it into "X days, X hours, X minutes, X seconds" For example, {{Time|900135}} becomes 10 days, 10 hours, 2 minutes, 15 seconds