А зачем Вы считаете секунды? Я, конечно, понимаю - зачем. Но, в чем смысл... Ведь есть глобальная переменная
GameDay Введите две переменные DayNull (тип float, для фиксации начала отсчета) и DayCurrent (тип float, для фиксации текущего дня).
Присваиваем DayNull значение из GameDay в начале отсчета.
Затем, с определенной частотой (напр. в квесте), запускаем проверку разности GameDay и DayNull на условия наступления нужного "дневного" промежутка:
10 дней (окончание семестра1)
12 дней (окончание семестр1+каникулы_1)
22 дней (окончание семестр1+каникулы_1+семестр2)
и т.д. - нарастающим итогом.
Значение текущей разности GameDay и DayNull можно фиксировать в DayCurrent.
if ( DayNull != 0 )
Set curDayPas to ( GameDay - DayNull )
elseif ( DayNull == 0 )
Set DayNull to GameDay
if ( DayCurrent > 10 )
;что-то делаем
endif ; конец чего-то
***далее - очередные проверки временных интервалов - скрипт - по желанию, т.к. реализация м.б. разной
endif
У меня данный алгоритм работает: квест "отслеживает" дни с его старта и, в зависимости от текущего дня, запускает нужную стадию.
GameDaysPassed - не функция, а глобальная переменная, хранящая информацию о кол-ве дней, прошедших
от начала игры. Можно то же организовать и с этой переменной, но точка отсчета и разность будут формироваться по другому.
Нет?