NedoScripter
Дебютант
Привет, подскажите как оптимизировать
Создание радаров:
В секудный таймер:
Создание радаров:
PHP:
for(new i; i < MAX_RADARS; i++)
{
new str[144];
format(str, sizeof(str),"Радар\nМаксимальная скорость: {9ACD32}120 км/ч.\n{FFFFFF}Штраф за нарушение: {9ACD32}500$.\n{FFFFFF}Поставил: {9ACD32}%s", PN(playerid));
RadarInfo[i][radText] = CreateDynamic3DTextLabel(str, COLOR_WHITE, x, y, z + 2.0, 20.0);
RadarInfo[i][rObj] = CreateDynamicObject(18880, x, y, z - 1.3, 0, 0, angle);
RadarInfo[i][radX] = x;
RadarInfo[i][radY] = y;
RadarInfo[i][radZ] = z - 1.3;
PI[playerid][pObjikt] --;
break;
}
PHP:
foreach(new ier: Player) UpdatePlayerRadar(ier);
PHP:
stock UpdatePlayerRadar(playerid)
{
if(GetPVarInt(playerid, !"LimitRadar") > gettime()) return 1;
new speed = GetPlayerVehicleSpeed(playerid);
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(!IsACop(playerid))
{
new string[64];
for(new i; i < MAX_RADARS; i++)
{
if(IsPlayerInRangeOfPoint(playerid, 30.0, RadarInfo[i][radPos][0], RadarInfo[i][radPos][1], RadarInfo[i][radPos][2]))
{
if(speed >= 120)
{
if(PI[playerid][pMoney] < 500)
{
PI[playerid][pWanted] += 1, SetPlayerWantedLevel(playerid, PI[playerid][pWanted]);
SendClientMessage(playerid, COLOR_LIGHTRED, !"[Информация] {FFFFFF}Вы были объявлены в розыск! Причина: {FF6347}Превышение скорости");
format(string, sizeof(string), "Ваш текущий уровень розыска: {FF6347}%d", PI[playerid][pWanted]);
SendClientMessage(playerid, COLOR_WHITE, string);
}
else
{
GiveMoney(playerid, -500);
SendClientMessage(playerid, COLOR_VALIK, !"[Информация]{FFFFFF} Вы были оштрафованы за нарушение максимальной допустимой скорости");
SendClientMessage(playerid, COLOR_WHITE, !"С вас взяли 500$. Постарайтесь не нарушать в дальнейшем.");
format(string, sizeof(string),"~w~SPEED: %d/120 MAX.~n~FINED 500$.", speed);
GameTextForPlayer(playerid, string, 3000, 5);
}
}
SetPVarInt(playerid, !"LimitRadar", gettime() + 5);
}
}
}
}
return 1;
}
