Здравствуйте.
Собственно, задаю SetPVarInt с временем(пробовал и таймер).
Код:
SendClientMessage(playerid, 0x008040AA, !"У Вас есть {FF8000}250 {008040}секунд, чтобы вернуться в автобус");
SetPVarInt(playerid, "timer_count_bus", 250);
Дальше в паблике глобального секундного таймера делаю следующее:
Код:
if(GetPVarInt(i, "timer_count_bus") != 0)
{
new string[4];
SetPVarInt(i, "timer_count_bus", GetPVarInt(i, "timer_count_bus") - 1);
format(string, sizeof string, "%d", GetPVarInt(i, "timer_count_bus"));
GameTextForPlayer(i, string, 1000, 1);
if(GetPVarInt(i, "timer_count_bus") == 0)
{
SetPVarInt(i, "timer_count_bus", 0);
BusSpawn(i);
}
}
Но происходит следующее: мне показываются секунды, по истечению 3-4 секунд только обновляется gametext, а должен каждую секунду -1. И отсчет заканчивается намного раньше времени, и происходит обнуления всех переменных связанных с работой, как и было задумано. То есть проверка(последняя) срабатывает, но не тогда когда мне нужно. Интересно, что когда автобус пропал - отсчет продолжается, хотя стоит обнуления пвара.