# Woody
Умник
Автор: iRusel.
Как вы знаете ZCMD не может работать,одновременно с обычными командами strcmp.
Именно поэтому мы немного смухлюем.
1. Находим паблик OnPlayerCommandText и переименовываем его в OnPlayerCommandTextEx и добавляем forward, должно получиться так:
2. Далее добавляем колбэк для ZCMD команд:
Теперь у вас будут работать как команды на ZCMD так и strcmp.
В качестве примера, приведу свой пример.
Как вы знаете ZCMD не может работать,одновременно с обычными командами strcmp.
Именно поэтому мы немного смухлюем.
1. Находим паблик OnPlayerCommandText и переименовываем его в OnPlayerCommandTextEx и добавляем forward, должно получиться так:
PHP:
forward OnPlayerCommandTextEx(playerid, cmdtext[]);
public OnPlayerCommandTextEx(playerid, cmdtext[])
{
//команды
}
PHP:
public OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
if(!success) success = OnPlayerCommandTextEx(playerid,cmdtext);
return success;
}
В качестве примера, приведу свой пример.
PHP:
forward OnPlayerCommandTextEx(playerid, cmdtext[]);
public OnPlayerCommandTextEx(playerid, cmdtext[])
{
if (strcmp("/test", cmdtext, true, 10) == 0)
{
W(playerid);
//Ban(playerid);
return 1;
}
return SendClientMessage(playerid, -1, "{d1d1d1}Команды не существует!");
}
public OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
if(!success) success = OnPlayerCommandTextEx(playerid,cmdtext);
return success;
}
CMD:warning(playerid, params[])
{
if(sscanf(params,"u", params[0])) return SendClientMessage(playerid, -1, "Введите: /w [id игрока или имя игрока]");
if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, -1, "Игрок не найден");
Player[params[0]][pWarning] += 1;
SendClientMessage(playerid,0xFF00000,"Вы дали игроку варн.");
return 1;
}
