ForaN |
Дата: Суббота, 04.06.2016, 16:10 | Сообщение # 1
|
Новичок
Сообщений: 21
Статус: Offline
|
Здравствуйте уважаемые умельцы и скриптеры PAWN. У меня не большая проблема, недоработка с командой /gnews. Она работает у всех организаций, а не только у гос. Помогите пожалуйста написать проверку чтобы работала только у госок. Вот код: Код CMD:gnewss(playerid, params[]) { if(!pTemp[playerid][pLogined]) return 1; if(pData[playerid][pMut]) return SendClientMessage(playerid,CORANGE,"Äîñòóï â ÷àò çàáëîêèðîâàí. Âðåìÿ äî ðàçáëîêèðîâêè: {00CC33}/time"); if(!pData[playerid][pFraction]) return SendClientMessage(playerid,CWHITE,"Âû íå ñîñòîèòå â {ff0000}îðãàíèçàöèè"); new fraction = pData[playerid][pFraction]; if(fraction > 2 && fraction < 8 || fraction >= 15) return SendClientMessage(playerid,CGRAY,"Âàì íå äîñòóïíà ýòà ôóíêöèÿ"); if(!IsAbleToHire(playerid)) return SendClientMessage(playerid, CBLUE,"Âàì íå äîñòóïíà ýòà ôóíêöèÿ"); if(GetPVarInt(playerid,"GNEWSS") > gettime()) return SendClientMessage(playerid, CGRAY, "Íàïîìèíàòü î ñîáåñåäîâàíèé ìîæíî ðàç â 5 ìèíóò!"); if(sscanf(params, "s[128]", params[0])) return SendClientMessage(playerid, CYELLOW, "• [Ïîäñêàçêà]:{"#cWHITE"} /gnewss [ñîîáùåíèå]"); if(IsIp(params[0])) { new string[128]; format(string, sizeof(string), "[ÀÍÒÈÐÅÊËÀÌÀ] %s[%d] /gnews òåêñò: %s [Íàêàçàí ìóòîì íà 60 ìèíóò]", pData[playerid][pNickname], playerid, params[0]); AdminChat(COLOR_LIGHTRED,string); pData[playerid][pMut] = 60; UpdatePlayerData(playerid,"mut", pData[playerid][pMut]); return true; } else { new mes[128]; format(mes,sizeof(mes),"[Ãîñ.Íîâîñòè] %s[%d]: %s",pData[playerid][pNickname],playerid,params[0]); SendClientMessageToAll(0x4466ccff,mes); } SetPVarInt(playerid, "GNEWSS", gettime() + 300); return true; } CMD:gnews(playerid, params[]) { if(pData[playerid][pMut]) return SendClientMessage(playerid,CORANGE,"Äîñòóï â ÷àò çàáëîêèðîâàí. Âðåìÿ äî ðàçáëîêèðîâêè: {00CC33}/time"); if(!pData[playerid][pFraction]) return SendClientMessage(playerid,CWHITE,"Âû íå ñîñòîèòå â {ff0000}îðãàíèçàöèè"); new fraction = pData[playerid][pFraction]; if(GetPVarInt(playerid,"GNEWS") > gettime()) return SendClientMessage(playerid, CGRAY, "Ãîñóäàðñòâåííóþ íîâîñòü ìîæíî ïîäàâàòü ðàç â 10 ìèíóò!"); if(fraction > 2 && fraction < 8 || fraction >= 15) return SendClientMessage(playerid,CGRAY,"Âàì íå äîñòóïíà ýòà ôóíêöèÿ"); if(!IsAbleToHire(playerid)) return SendClientMessage(playerid, CBLUE,"Âàì íå äîñòóïíà ýòà ôóíêöèÿ"); new mes[256]; PlayerGoverments[playerid][0] = "---"; PlayerGoverments[playerid][1] = "---"; PlayerGoverments[playerid][2] = "---"; pTemp[playerid][PlayerGovermentList] = 0; strcat(mes, ""W"Ãîñóäàðñòâåííàÿ íîâîñòü:\n\n"); strcat(mes, "1. ---\n"); strcat(mes, "2. ---\n"); strcat(mes, "3. ---\n\n"); strcat(mes, "\t\t\t{FF0000}ÂÍÈÌÀÍÈÅ!"W"\n"W"Åñëè âû õîòèòå ïîäàòü íîâîñòü ñîñòîÿùóþ èç îäíîé ñòðîêè\nÂîñïîëüçóéòåñü êîìàíäîé {FF4500}/gnewss\n\n{FAE54B}- Ââåäè ïåðâóþ ñòðîêó íîâîñòè:"); SetPVarInt(playerid, "GNEWS", gettime() + 600); ShowPlayerDialog(playerid, dGovNews, DIALOG_STYLE_INPUT, "Èçäàíèå íîâîñòè", mes, "Äàëüøå", "Îòìåíà"); return 1; }
|
|
|
|
=) |
Дата: Суббота, 04.06.2016, 18:49 | Сообщение # 2
|
Боец
Сообщений: 271
Статус: Offline
|
Код stock gosfrak(playerid) { switch(pData[playerid][pFaction]) { case номер,номер2,номер3 и тд: return 1; } return 0; }
В команды вставляй код: if(!gosfrak[playerid]) return 1;
Где номер, номер 2 и тд выставляй номера фракции.
Сообщение отредактировал =) - Суббота, 04.06.2016, 18:50 |
|
|
|
[CM]Wildman |
Дата: Воскресенье, 05.06.2016, 18:26 | Сообщение # 3
|
Бывалый
Сообщений: 457
Статус: Offline
|
if(fraction > 2 && fraction < 8 || fraction >= 15) return SendClientMessage(playerid,CGRAY,"Âàì íå äîñòóïíà ýòà ôóíêöèÿ"); у тебя в этой строке проблемы, тут логическая ошибка
|
|
|
|
Cardenas |
Дата: Среда, 08.06.2016, 16:47 | Сообщение # 4
|
Любитель
Сообщений: 41
Статус: Offline
|
Возьми проверку с [color=red]uninvite/invite и всё.[/color]
asd
|
|
|
|
Wjik |
Дата: Среда, 08.06.2016, 22:00 | Сообщение # 5
|
Любитель
Сообщений: 40
Статус: Offline
|
Код if(fraction > 2 || fraction < 8 || fraction >= 15) return SendClientMessage(playerid,CGRAY,"Âàì íå äîñòóïíà ýòà ôóíêöèÿ");
попробуй так
Wj1ch4r4
|
|
|
|