Эмм, разве не так должно быть?
PHP код:
for(new x = 0; x < MAX_PLAYERS; x++)
{
if(PlayerToKvadrat(x, posJad[x][0]-30, posJad[x][1]+30, posJad[x][0]-30, posJad[x][1]+30) && radionucT > 0)
{
new Float:health;
radionucT -=1;
GetPlayerHealth(playerid, health);
SetPlayerHealth(playerid, health - 0.5);
}
}
Если не сработает, просто сделайте логирование и посмотрите какие значения выдаёт массив
PHP код:
for(new x = 0; x < MAX_PLAYERS; x++)
{
printf("%f, %f, %f, %f", posJad[x][0]-30, posJad[x][1]+30, posJad[x][0]-30, posJad[x][1]+30);
if(PlayerToKvadrat(x, posJad[x][0]-30, posJad[x][1]+30, posJad[x][0]-30, posJad[x][1]+30) && radionucT > 0)
{
new Float:health;
radionucT -=1;
GetPlayerHealth(playerid, health);
SetPlayerHealth(playerid, health - 0.5);
}
}
И логи уже скиньте нам. Ибо дело явно в вашем массиве. Не может же функция, которая у остальных работает, у вас вдруг перестать работать.
P.S. И да, надеюсь вы и правда не собирались вставлять цикл на всех игроков в коллбэк, который вызывается индивидуально для каждого игрока туеву тучу раз.