Rolt
Ученик
Столкнулся с проблемой, все массивы на сервере срабатывают только для 0 ID. В чём может быть причина?
P.S. Ранее создавал такую же тему, посоветовали вставить в массив if(i == INVALID_PLAYER_ID) return true;
По началу помогло, но потом опять перестал срабатывать.
Вот пример:
P.S. Ранее создавал такую же тему, посоветовали вставить в массив if(i == INVALID_PLAYER_ID) return true;
По началу помогло, но потом опять перестал срабатывать.
Вот пример:
PHP:
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(paydays == false)
{
if(LoginPlayer[i] == true)
{
if(PlayerInfo[i][pTime] >= 1200)
{
if(i == INVALID_PLAYER_ID) return true;
new string[64];
gettime(hour, minuts, second);
if(PlayerInfo[i][pJob] == 1) PlayerInfo[i][pPay] = (PlayerInfo[i][pTLevel]*PlayerInfo[i][pTPlayer])+(PlayerInfo[i][pTPlayer]*30)+1200, PlayerInfo[i][pBank] += PlayerInfo[i][pPay];
SendClientMessage(i, COLOR_WHITE, "[*]------------[Pay Day]------------[*]");
format(string, sizeof(string), " Текущее время: %d:%d0", hour, minuts);
SendClientMessage(i, COLOR_WHITE, string);
format(string, sizeof(string), " Зарплата: %d$", PlayerInfo[i][pPay]);
SendClientMessage(i, COLOR_WHITE, string);
format(string, sizeof(string), " На счету в банке: %d$", PlayerInfo[i][pBank]);
SendClientMessage(i, COLOR_WHITE, string);
SendClientMessage(i, COLOR_WHITE, "[*]=========================[*]");
PlayerInfo[i][pExp] += 1;
PlayerInfo[i][pPay] = false;
PlayerInfo[i][pTPlayer] = false;
PlayerInfo[i][pTime] = false;
if(PlayerInfo[i][pExp] == PlayerInfo[i][pExpM])
{
PlayerInfo[i][pExp] = false;
PlayerInfo[i][pExpM] += 7;
PlayerInfo[i][pLevel] += 1;
PlayerInfo[i][pAge] += 1;
SetPlayerScore(i, PlayerInfo[i][pLevel]);
SendClientMessage(i, COLOR_LIGHTBLUE, "Поздравляем! Ваш уровень и возраст повысился!");
}
paydays = true;
SetTimer("DayPays", 2000, true);
return true;
}
else return SendClientMessage(i, COLOR_WHITE, "Для получения зарплаты необходимо отыграть как минимум 20 минут!");
}
}
}
