PDA

Просмотр полной версии : [Вопрос] Вопрос по оптимизации



codeo
26.06.2014, 15:50
-

Подскажите как лучше использовать, 1 таймер на 1 сек с этим кодом
или разделить на 2 таймера по 1 сек?







public scriptSync(playerid)
{
new
dateString[128],
year ,
month ,
day ,
seconds
;

getdate( year, month, day );
gettime( hours, minutes, seconds );

format(dateString, sizeof(dateString), "%d/%s%d/%s%d", day, ((month < 10) ? ("0") : ("")), month, (year < 10) ? ("0") : (""), year);
TextDrawSetString(Date, dateString);

format(dateString, sizeof(dateString), "%s%d:%s%d:%s%d", (hours < 10) ? ("0") : (""), hours, (minutes < 10) ? ("0") : (""), minutes, (seconds < 10) ? ("0") : (""), seconds);
TextDrawSetString(Time, dateString);

new string[98+MAX_PLAYER_NAME+3], AnimLib[32], AnimName[32], Float:x, Float:y, Float:z;
foreach(new i: Player)
{
if((GetPlayerState(i) == PLAYER_STATE_DRIVER) && NoNeed(GetPlayerVehicleID(i)) && GetPlayerCarSpeedXY(i) > 250.0)
{
format(string, sizeof(string), "[Admin-sms] {FFFF00}Игрок {FF0000}%s{00FFFF}[%d]{FFFF00}: - кикнут за использование - {00FF00}[Спидхак]",playerName(i), i);
SendMessageToAdmins(red, string);
SendClientMessage(i, red, "Вы были кикнуты по подозрению в читерстве! #001");
SetTimerEx("KickEx", 500, false, "d", i);
}
GetAnimationName(GetPlayerAnimationIndex(i), AnimLib, sizeof(AnimLib), AnimName, sizeof(AnimName));
if(GetPlayerSpeedXY(i) > 50.0 && strcmp(AnimLib, "SWIM", true) == 0 && strcmp(AnimName, "SWIM_crawl", true) == 0)
{
format(string, sizeof(string), "[Admin-sms] {FFFF00}Игрок {FF0000}%s{00FFFF}[%d]{FFFF00}: - кикнут за использование - {00FF00}[FLY HACK]", playerName(i), i);
SendMessageToAdmins(red, string);
SendClientMessage(i, red, "Вы были кикнуты по подозрению в читерстве! #002");
SetTimerEx("KickEx", 500, false, "d", i);
}
if(countpos[i])
{
countpos[i]++;
if(countpos[i] == 4)
{
countpos[i] = 0;
DestroyObject(Flame[i][0]);
DestroyObject(Flame[i][1]);
}
}
GetPlayerPos(i, x, y, z);
if(IsPlayerInRangeOfPoint(i, 2.0, afk_pos[i][0], afk_pos[i][1], afk_pos[i][2]))
{
if(++afk_time[i] == MAX_AFK_TIME)
{
SendClientMessage(i, -1, "{FFFF00}Вы были кикнуты за бездействие.");
SetTimerEx("KickEx", 500, false, "d", i);
}
}
else
{
afk_time[i] = 0;
afk_pos[i][0] = x, afk_pos[i][1] = y, afk_pos[i][2] = z;
}

}
return true;
}

Salvacore
26.06.2014, 15:51
Как удобнее...
Но если вопрос по оптимизация то мне кажется 1.