Hier mal ein paar Beispiele in der Lua Demo:
Code:
print(toTimestring(1))--1 Sekunde --> 1 Sekunde print(toTimestring(2))--2 Sekunden --> 2 Sekunden print(toTimestring(60))--1 Minute --> 1 Minute print(toTimestring(61))--1 Minute 1 Sekunde --> 1 Minute und 1 Sekunde print(toTimestring(62))--1 Minute 2 Sekunden --> 1 Minute und 2 Sekunden print(toTimestring(120))--2 Minuten --> 2 Minuten print(toTimestring(121))--2 Minuten 1 Sekunde --> 2 Minuten und 1 Sekunde print(toTimestring(122))--2 Minuten 2 Sekunden --> 2 Minuten und 2 Sekunden print(toTimestring(3600))--1 Stunde --> 1 Stunde print(toTimestring(3601))--1 Stunde 1 Sekunde --> 1 Stunde und 1 Sekunde print(toTimestring(3602))--1 Stunde 2 Sekunden --> 1 Stunde und 2 Sekunden print(toTimestring(3660))--1 Stunde 1 Minute --> 1 Stunde und 1 Minute print(toTimestring(3661))--1 Stunde 1 Minute 1 Sekunde --> 1 Stunde, 1 Minute und 1 Sekunde print(toTimestring(3662))--1 Stunde 1 Minute 2 Sekunden --> 1 Stunde, 1 Minute und 2 Sekunden print(toTimestring(3720))--1 Stunde 2 Minuten --> 1 Stunde und 2 Minuten print(toTimestring(3721))--1 Stunde 2 Minuten 1 Sekunde --> 1 Stunde, 2 Minuten und 1 Sekunde print(toTimestring(3722))--1 Stunde 2 Minuten 2 Sekunden --> 1 Stunde, 2 Minuten und 2 Sekunden
Code:
function toHoursMinutesSeconds(seconds) if type(seconds) ~= "number" then return false end local hours = math.floor(seconds/60/60) local minutes = math.floor((seconds-(hours*60*60))/60) local seconds = math.floor(seconds-(hours*60*60)-(minutes*60)) return {hours, minutes, seconds} end function toTimestring(seconds) local HoursMinutesSeconds = toHoursMinutesSeconds(seconds) if not HoursMinutesSeconds then return false end local TimestringValues = {} for i = 1, table.getn(HoursMinutesSeconds) do local v = HoursMinutesSeconds[i] local name = ({ ({--hours [0] = "", [1] = " Stunde" })[v] or " Stunden", ({--minutes [0] = "", [1] = " Minute" })[v] or " Minuten", ({--seconds [0] = "", [1] = " Sekunde" })[v] or " Sekunden" })[i] if name ~= "" then table.insert(TimestringValues, v..name) end end local Timestring = "" local Valuecount = table.getn(TimestringValues) for i = 1, Valuecount do local v = TimestringValues[i] Timestring = Timestring..v..(({[0] = "", [1] = " und "})[Valuecount-i] or ", ") end return Timestring end
- Xilent