GI.WorldTime

From SunFlurry wiki
Revision as of 08:53, 22 January 2025 by Admin (talk | contribs) (1 revision imported)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
  WorldTime (Общие функции объекта GI)
Объект:Объект GI
Статус разработки: Реализована
Тип:Атрибут
Обращение к БД:Нет
Доступность:Чтение и запись
Визуальность:Нет

Атрибут получает или изменяет текущее время сцены в секундах. Данное время изменяется дискретно один раз за кадр после выполнения всех событий объекта. Изменять время удобно, к примеру, после загрузки сохранения или в подобных случаях. Получение или изменение время таким образом должно выполняться в потоке, который содержит цикл прорисовки. Для других потоков необходимо использовать функцию WorldTimeSafe, которая будет сначала ожидать окончания выполнения цикла рисования основного потока. Если доступен таймер высокой точности, время будет находиться с помощью этого таймера, иначе по встроенным часам компьютера.

Синтаксис

GI.WorldTime:<Время в секундах (REAL)>

Возвращаемое значение

Атрибут возвращает вещественное число -- время в секундах, прошедшее с момента создания первого кадра.

Примеры

...

аВремя:=aGI.WorldTime;    
While 1 Do //Рабочий цикл
  aGI.InitiateRedraw();
  аПрошло:=aGI.WorldTime-аВремя;//В секундах
  аВремя:=aGI.WorldTime;

  ...

  If лкРежимИгры=1 Then
    //Если игрок находится в игровом цикле, увеличим его время в игре
    лкВремяВИгре:=лкВремяВИгре+аПрошло;
    ...
  EndIf;

  ...
EndDo;