Quote:
Originally Posted by [FX]Storm
Спасибо AVE.
|
Не за что.
Quote:
Originally Posted by [FX]Storm
Тэн поможешь разобраться с таймером из FX18 (хочу засунуть его в обычный) Вот содержание
|
Могу и я.
Code:
InGameRunTimeTimerDisplay = 0
В этой переменной (далее
таймер), собственно, и содержится количество секунд, прошедших с момента начала игры.
Code:
function GameTimerDisplay()
InGameRunTimeTimerDisplay = InGameRunTimeTimerDisplay + 1
Я так понимаю, функция GameTimerDisplay() где-то вызывается через RuleAddInterval, что обеспечивает ее вызов раз в секунду.
Code:
local iSeconds = mod(InGameRunTimeTimerDisplay,60)
local iMinutes = (InGameRunTimeTimerDisplay - iSeconds) / 60
local iHours = iMinutes
iMinutes = mod(iMinutes, 60)
iHours = iHours - iMinutes
iHours = iHours / 60
Здесь вычисляются часы/минуты/секунды. Секунды - остаток от деления (mod) на 60, и т.д.
Code:
local sStrToDisplay = ""
if (iHours < 10) then
sStrToDisplay = sStrToDisplay.."0"..iHours..":"
else
sStrToDisplay = sStrToDisplay..iHours..":"
end
if (iMinutes < 10) then
sStrToDisplay = sStrToDisplay.."0"..iMinutes..":"
else
sStrToDisplay = sStrToDisplay..iMinutes..":"
end
if (iSeconds < 10) then
sStrToDisplay = sStrToDisplay.."0"..iSeconds
else
sStrToDisplay = sStrToDisplay..iSeconds
end
Здесь видно, что авторы не знают про format(), и делают то же самое руками.
Code:
UI_SetTextLabelText("ResourceMenu", "lblTimerSize", sStrToDisplay)
end
Это вывод текста.