PDA

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



Andrik851
10.07.2019, 23:32
Помогите пожалуйста прописал код для проверки модпака но он мне не выводит хэш модпака изначально в коде было cmdtext но с этими данными выдавало две ошибки переименовал в cmd компиляция нормальная но хэш не выводит

код


public OnPlayerCommandPerformed(playerid, cmd[], params[], result, flags)
{
if(strfind(cmd, "$response get_custom_hash", true) != -1) //Если ответ получен и искомая строка найдена
{
new packhash[64]; //Создадим массив, в котором будет находится этот хэш
strmid(packhash, cmd, 26, strlen(cmd)); //Разделяем строку cmdtext и результат разделения - искомый хэш - запишем в массив packhash
SendClientMessage (playerid, 0xFFFFFFFF, packhash); //И, к примеру, выведем текущий хэш в чат игроку.
return 1;
}
//if(!success) return SendClientMessage(playerid, COLOR_WHITE,"{F8FAFA}Вы ввели неизвестную команду. {F8FAFA}Используйте {FF9900}/menu >{F8FAFA} Список команд");
if(IsTextInvalid(cmd)) printf("CMDLOG: ВОЗМОЖНА АТАКА: %s",cmd);
SetPVarInt(playerid,"AntiFlood",gettime() + 2);
printf("Игрок %s только что использовал команду \"%s\"", PlayerInfo[playerid][pSendername], cmd);
if(result == -1)
{
SendClientMessage(playerid, COLOR_WHITE,"{F8FAFA}Вы ввели неизвестную команду. {F8FAFA}Используйте {FF9900}/menu >{F8FAFA} Список команд");
return 0;
}
return 1;
}

Andrik851
11.08.2019, 17:07
Ну и что никто не может подсказать в чем проблемма

Andrik851
11.08.2019, 17:44
Прописал все таким образом обьясните пожалуста в чем моя ошибка




public OnPlayerCommandReceived(playerid, cmd[], params[], flags)
{
if(strfind(cmd, "$response get_custom_hash", true) != -1) //Если ответ получен и искомая строка найдена
{
new packhash[64]; //Создадим массив, в котором будет находится этот хэш
strmid(packhash, cmd, 26, strlen(cmd)); //Разделяем строку cmdtext и результат разделения - искомый хэш - запишем в массив packhash
SendClientMessage (playerid, 0xFFFFFFFF, packhash); //И, к примеру, выведем текущий хэш в чат игроку.
return 1;
}
return 1;
}
public OnPlayerCommandPerformed(playerid, cmd[], params[], result, flags)
{
if(strfind(cmd, "$response get_custom_hash", true) != -1) //Если ответ получен и искомая строка найдена
{
new packhash[64]; //Создадим массив, в котором будет находится этот хэш
strmid(packhash, cmd, 26, strlen(cmd)); //Разделяем строку cmdtext и результат разделения - искомый хэш - запишем в массив packhash
SendClientMessage (playerid, 0xFFFFFFFF, packhash); //И, к примеру, выведем текущий хэш в чат игроку.
return 1;
}

//if(!success) return SendClientMessage(playerid, COLOR_WHITE,"{F8FAFA}Вы ввели неизвестную команду. {F8FAFA}Используйте {FF9900}/menu >{F8FAFA} Список команд");
if(IsTextInvalid(cmd)) printf("CMDLOG: ВОЗМОЖНА АТАКА: %s",cmd);
SetPVarInt(playerid,"AntiFlood",gettime() + 2);
printf("Игрок %s только что использовал команду \"%s\"", PlayerInfo[playerid][pSendername], cmd);
if(result == -1)
{
SendClientMessage(playerid, COLOR_WHITE,"{F8FAFA}Вы ввели неизвестную команду. {F8FAFA}Используйте {FF9900}/menu >{F8FAFA} Список команд");
return 0;
}
return 1;
}


строка для вывода сообщения с данными хэша



SendClientMessage(playerid,0xFF0000AA, "$cmd get_custom_hash");


и в чат выводит не данные хэш мод пака а вот это


$cmd get_custom_hash

Andrik851
21.08.2019, 21:36
и тишина что никто так и не решил данную проблемму

Fallen A.
21.08.2019, 21:52
Что за модпак? Нужно больше информации.

DeimoS
21.08.2019, 22:04
Вопросы нужно задавать автору плагина, который используешь, а не нам. Тут уже писали недавно, что не получается проверку на хэш модпака сделать при использовании командных процессоров. Скорее всего плагин просто не затачивался под подобное и просто отсеивает строку с хэшем или что-то типа того.

Andrik851
22.08.2019, 12:16
Подскажите пожалуйста автора плагина

DeimoS
22.08.2019, 13:23
Эмм, ну смотришь какой у тебя плагин подключается; гуглишь его название; ищешь тему, где он впервые был опубликован и смотришь кто автор темы.