Доброго времени суток, я на днях собрал мод-пак для своего сервера, и хочу тех, у кого его нет - кикало xd .
Но вот проблема вся в том, что чтобы получить его хэш, я танцевал с бубном минут 30, но засунул проверку в new.pwn и все же получил его хэш. Далее проблема вышла в следующем, хэш есть, но, в моем моде словно не работает OnPlayerCommandText. Все команды у меня DC_CMD + SSCANF. Возможно из-за этого? Вот код:
public OnPlayerConnect(playerid)
{
SendClientMessage(playerid,0x01010101, "$cmd get_custom_hash");
return true;
}
public OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
if(success == -1) return SCM(playerid, COLOR_RED, "Такой команды не существет. Используй: /cmds");
return true;
}
public OnPlayerCommandText(playerid, cmdtext[]) // хэш пака d1b662defdaeb2be
{
if(strfind(cmdtext, "$response get_custom_hash", true) != -1)
{
new packhash[64];
strmid(packhash, cmdtext, 26, strlen(cmdtext));
if(strcmp(packhash, "d1b662defdaeb2be", false)) return SCM(playerid, COLOR_RED, "Не установлен мод-пак");
}
return true;
}
Заметил, при коннекте пишет, мол команды не существует. Конечно, можно это дело убрать, и возможно заработает, но мне нужна эта строчка с уведомлением, что такой команды нет :263A:
Прошу помощи, как это починить?
Но вот проблема вся в том, что чтобы получить его хэш, я танцевал с бубном минут 30, но засунул проверку в new.pwn и все же получил его хэш. Далее проблема вышла в следующем, хэш есть, но, в моем моде словно не работает OnPlayerCommandText. Все команды у меня DC_CMD + SSCANF. Возможно из-за этого? Вот код:
public OnPlayerConnect(playerid)
{
SendClientMessage(playerid,0x01010101, "$cmd get_custom_hash");
return true;
}
public OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
if(success == -1) return SCM(playerid, COLOR_RED, "Такой команды не существет. Используй: /cmds");
return true;
}
public OnPlayerCommandText(playerid, cmdtext[]) // хэш пака d1b662defdaeb2be
{
if(strfind(cmdtext, "$response get_custom_hash", true) != -1)
{
new packhash[64];
strmid(packhash, cmdtext, 26, strlen(cmdtext));
if(strcmp(packhash, "d1b662defdaeb2be", false)) return SCM(playerid, COLOR_RED, "Не установлен мод-пак");
}
return true;
}
Заметил, при коннекте пишет, мол команды не существует. Конечно, можно это дело убрать, и возможно заработает, но мне нужна эта строчка с уведомлением, что такой команды нет :263A:
Прошу помощи, как это починить?