Ewil
Ученик
Здравствуйте, у меня на сервере есть репорт который с диалогами, когда игрок кинет репорт потом выходит из игр, то он не исчезает, а при ответе выдает ошибка неверный id , и так он будет остаться навсегда, теперь хочу чтобы вы мне помогали сделать так чтобы когда игрок вышел из игры (onplayerdisconnect) там поставить команду который будет убрать его реппорт, не мог вставить я помогите пожалуйста вместе вставим) буду блогадарен, заранее спасибо!
вот код
вот код
Код:
case dReportAdm:
{
if(!response) return 1;
switch(listitem)
{
case 0..50:
{
new k = listitem;
new all[256];
format(all, sizeof(all), "SELECT `gameid` FROM `reports` WHERE `id` = '%d'", gReport[k][pID]);
new Cache:result = mysql_query(dbHandle, all);
new rows = cache_num_rows();
if(!rows) return SendClientMessage(playerid, COLOR_GREY, "Этот репорт уже обработался"), cache_delete(result);
p_t_info[playerid][pReportOtvet] = k;
new name[64];
format(name,sizeof(name),"%s",gReport[k][pNickName]);
new textik[512];
format(textik,sizeof(textik),"{FFFFFF}\n\n Игрок: {C8A2C8}%s[%d]\n\n{FFFFFF}Жалоба/Вопрос:\n{C8A2C8}%s\n\nВведите ответ:",gReport[k][pNickName],gReport[k][pGameID],gReport[k][pQuestion]);
show_dialog(playerid,dReportOtv,DIALOG_STYLE_INPUT,name,textik,"Ответ","Закрыть");
cache_delete(result);
}
}
}
case dReportOtv:
{
if(!response) return 1;
new k = p_t_info[playerid][pReportOtvet];
if(!IsPlayerConnected(gReport[k][pGameID])) return SendErr(playerid,"Íåâåðíûé ID");
if(!p_info[gReport[k][pGameID]][pMysqlID]) return SendErr(playerid,"Èãðîê íå àâòîðèçîâàëñÿ");
new all[256];
format(all, sizeof(all), "SELECT `gameid` FROM `reports` WHERE `id` = '%d'", gReport[k][pID]);
new Cache:result = mysql_query(dbHandle, all);
new rows = cache_num_rows();
if(!rows) return SendClientMessage(playerid, COLOR_GREY, "Ýòîò ðåïîðò óæå îáðàáîòàëñÿ"), cache_delete(result);
new str[128];
format(str, sizeof(str), "Àäìèíèñòðàòîð %s[%d] äëÿ %s[%d]: %s",p_info[playerid][pNickname], playerid, p_info[gReport[k][pGameID]][pNickname], gReport[k][pGameID], inputtext);
AdminChat(0xFF9945FF, str);
format(str, sizeof(str), "Àäìèíèñòðàòîð %s[%d]: %s",p_info[playerid][pNickname], playerid, inputtext);
SendClientMessage(gReport[k][pGameID],0xFF9945FF, str);
p_t_info[gReport[k][pGameID]][pNotReport] = 0;
//return 1;
new string[128];
format(string, sizeof(string), "DELETE FROM `reports` WHERE `id` = '%d'", gReport[k][pID]);
mysql_query(dbHandle, string);
new f_str[128];
format(f_str,sizeof(f_str),"UPDATE `admins` SET `report` = `report` +1 WHERE `ownerid` = '%d'",p_info[playerid][pMysqlID]);
mysql_query(dbHandle, f_str);
cache_delete(result);
}
