Вот так
Умник
Вот я оптимизирую по тихоньку мод и у меня возникли вопросы.
Какая тут более правильная оптимизация кода?
И как можно оптимизировать данный код так, чтобы он не потерял все функции, но при этом был по меньше, более оптимизированный.
Код...
Какая тут более правильная оптимизация кода?
PHP:
else if(strcmp(cmd, "/help", true) == 0) {
SendClientMessage(playerid, COLOR_WHITE,"::: Введите: /mm"); return 1; }
PHP:
else if(strcmp(cmd, "/help", true) == 0) return SendClientMessage(playerid, COLOR_WHITE,"::: Введите: /mm");
Код...
PHP:
else if(strcmp(cmd, "/kick", true) == 0)
{
if(PlayerInfo[playerid][pAdmin] >= 2)
{
tmp = strtok(cmdtext, idx);
if (dostup[playerid] != 1) return SendClientMessage(playerid, COLOR_LIGHTRED1, "- Для использования команды авторизуйтесь как модератор - /moderator");
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Используйте команду: {00a86b}/kick [PlayerName / PlayerID] [Reason]");
giveplayerid = ReturnUser(tmp);
if (PlayerInfo[playerid][pAdmin] >= 2)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
new ip[15];
GetPlayerIp(giveplayerid,ip,15);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
new year1, month1, day1, hour1, minute1, second1;
getdate(year1, month1, day1);
gettime(hour1, minute1, second1);
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result)) return SendClientMessage(playerid, COLOR_WHITE, "Используйте команду: {00a86b}/kick [PlayerName / PlayerID] [Reason]");
new year, month,day;
new hour, minute, second;
getdate(year, month, day);
gettime(hour, minute, second);
format(string, sizeof(string), "Модератор %s отсоеденил игрока %s. Причина: %s ",sendername, giveplayer, (result));
SendClientMessageToAll(COLOR_LIGHTRED1,string);
{
new coordsstring1[512];
new msg1[] = "{ffffff}Информация:\n{FF5030}Ваш никнейм:{ffffff} %s\n{FF5030}Модератор:{ffffff} %s\n{FF5030}Причина: {FFFFFF}%s\n{FF5030}Дата отсоеденения:{ffffff} %d.%d.%d\n\nРекомендуем сделать Вам скриншот - {FF5030}F8";
format(coordsstring1, sizeof coordsstring1, msg1, giveplayer,result,day,month,year);
ShowPlayerDialog(giveplayerid,0,DIALOG_STYLE_MSGBOX,"{ffbf00}- Отсоеденение от сервера -",coordsstring1,"Скрыть","");
}
GetPlayerIp(giveplayerid,ip,sizeof(ip));
format(string, sizeof(string), "%s.ini",giveplayer);
new file = ini_openFile(string);
if(file < 0) print("нету файла");
else
{
ini_getString(file,"pIp",string);
ini_getString(file,"pIpReg",string);
printf("найдено же - %s , началось чтение файла с этим именем",string);
ini_closeFile(file);
format(string, sizeof(string), "- Nick: %s | IP: %s | Register IP: %s | Last IP: %s",giveplayer,ip,string,string);
ABroadCast(COLOR_LIGHTRED1,string,1);
Kick(giveplayerid);
}
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Ошибка. Игрок не найден.");
}
}
return 1;
}
