if(pInfo[playerid][pLeader] == 0) return SendClientMessage(playerid,PIROS,\"Nemkéne..\");new pID;if(sscanf(params,\"u\",pID))return SendClientMessage(playerid,NARANCS,\"Használat: /frakció felvesz [ Játékos ]\");pInfo[pID][pFrakcio] = pInfo[playerid][pFrakcio];SendFormatMessage(playerid,NARANCS,\"Sikeresen felvetted %s-t ide: %s\",Nev(pID),FrakcioInfo[pInfo[playerid][pFrakcio]][fNev]);SendFormatMessage(playerid,NARANCS,\"<< %s felvett téged ide: %s >>\",Nev(playerid),FrakcioInfo[pInfo[playerid][pFrakcio]][fNev]);
a parancs végére kell egy return 1
CMD:frakcio(playerid,params[]){new parameterek[24],frakcio = 0;if(sscanf(params,\"s[24]{}\",parameterek)){ SendClientMessage(playerid,PIROS,\"Használat:/frakció [ tagok | lista | Leader: felvesz | kirúg | rang ]\");return true;}if(!strcmp(parameterek,\"tagok\")){ if(frakcio == 0) frakcio = pInfo[playerid][pFrakcio];foreach(Player, p) { if(pInfo[p][pFrakcio] == frakcio) { SendFormatMessage(playerid, -1, \"Név: %s \",Nev(p)); } }}if(!strcmp(parameterek,\"lista\")){ for(new i = 0; i < MAX_FRAKCIO; i++) { if(FrakcioInfo[Hasznalva] == 1) { SendFormatMessage(playerid,NARANCS,\"Frakció: %s | Tipus %s\",FrakcioInfo[fNev],FrakcioInfo[fTipus]); }}}if(!strcmp(parameterek,\"felvesz\")){ //if(pInfo[playerid][pLeader] == 0) return SendClientMessage(playerid,PIROS,\"Nemkéne..\");new pID;if(sscanf(params,\"u\",pID))return SendClientMessage(playerid,NARANCS,\"Használat: /frakció felvesz [ Játékos ]\");pInfo[pID][pFrakcio] = pInfo[playerid][pFrakcio];SendFormatMessage(playerid,NARANCS,\"Sikeresen felvetted %s-t ide: %s\",Nev(pID),FrakcioInfo[pInfo[playerid][pFrakcio]][fNev]);SendFormatMessage(playerid,NARANCS,\"<< %s felvett téged ide: %s >>\",Nev(playerid),FrakcioInfo[pInfo[playerid][pFrakcio]][fNev]);}if(!strcmp(parameterek,\"kirúg\")){ if(pInfo[playerid][pLeader] == 0) return SendClientMessage(playerid,PIROS,\"Nemkéne..\");new pID;if(sscanf(params,\"u\",pID))return SendClientMessage(playerid,NARANCS,\"Használat: /frakció kirúg [ Játékos ]\");pInfo[pID][pFrakcio] = pInfo[playerid][pFrakcio];SendFormatMessage(playerid,NARANCS,\"Sikeresen kirúgtad %s-t\",Nev(pID));SendFormatMessage(playerid,NARANCS,\"<< %s kirúgott téged innen: %s >>\",Nev(playerid),FrakcioInfo[pInfo[playerid][pFrakcio]][fNev]);}if(!strcmp(parameterek,\"rang\")){ if(pInfo[playerid][pLeader] == 0) return SendClientMessage(playerid,PIROS,\"Nemkéne..\");new pID,rang;if(sscanf(params,\"ud\",pID,rang))return SendClientMessage(playerid,NARANCS,\"Használat: /frakció rang [ Játékos ] [ Rang(1-8) ]\");if(rang < 1 || rang > return SendClientMessage(playerid,PIROS,\"Rang 1-8 között!!\");pInfo[pID][pRang] = rang;SendFormatMessage(playerid,NARANCS,\"új rangot adtál neki: %s | Rang: %s\",Nev(pID),Rangok(rang,pInfo[pID][pFrakcio]));SendFormatMessage(playerid,NARANCS,\"<< %s kirúgott téged innen: %s >>\",Nev(playerid),FrakcioInfo[pInfo[playerid][pFrakcio]][fNev]);}return 1;}
if(sscanf(params,\"{s[24}u\",pID))
if(sscanf(params,\"{s[24}u\",pID)) Próbáld meg így
if(sscanf(params,\"{s[24]}d\",pID))return SendClientMessage(playerid,NARANCS,\"Használat: /frakció felvesz [ Játékos ]\");
if(sscanf(params,\"{s[24]}u\",pID))
{s[24]}
Az utcsi probléma az hogy nem veszi fel a játékost esetleg kirúgja :/
pInfo[pID][pFrakcio] = pInfo[playerid][pFrakcio];
pInfo[pID][pFrakcio] = pInfo[playerid][pFrakcio]; Ez van a kirúgás kódódnál is, írd át -1,re vagy valamire, mert így nem rúgod ki, csak ugyanúgy hagyod kb.
Akit kirúgsz, annak a játékosnak a változóját állítsd át akármilyen értékre, ami nem egyezik meg egy frakció ID-jével sem, így máris nincs benne az adott szervezetben.
if(!strcmp(parameterek,\"kirúg\")){ if(!pInfo[playerid][pLeader])return SendClientMessage(playerid,PIROS,\"Nemkéne..\"); new pID; if(sscanf(params,\"{s[24]}u\",pID))return SendClientMessage(playerid,NARANCS,\"Használat: /frakció kirúg [ Játékos ]\");if(!IsPlayerConnected(pID))return SendClientMessage(playerid,PIROS,\"Nincs ilyen játékos\");if(pID == playerid)) return 1;if(pInfo[pID][pFrakcio] != pInfo[playerid][pFrakcio]) return SendClientMessage(playerid,PIROS,\"Ő nem tagja a frakciónak\");if(pInfo[playerid][pFrakcio] < 0 || pInfo[playerid][pFrakcio] > MAX_FRAKCIO) return SendClientMessage(playerid,PIROS,\"Nem is vagy frakciótag..\"); pInfo[pID][pFrakcio] = -1; SendFormatMessage(playerid,NARANCS,\"Sikeresen kirúgtad %s-t\",Nev(pID)); SendFormatMessage(playerid,NARANCS,\"<< %s kirúgott téged innen: %s >>\",Nev(playerid),FrakcioInfo[pInfo[playerid][pFrakcio]][fNev]);}if(!strcmp(parameterek,\"felvesz\")){ if(!pInfo[playerid][pLeader])return SendClientMessage(playerid,PIROS,\"Nemkéne..\"); new pID; if(sscanf(params,\"{s[24]}u\",pID))return SendClientMessage(playerid,NARANCS,\"Használat: /frakció felvesz [ Játékos ]\");if(!IsPlayerConnected(pID))return SendClientMessage(playerid,PIROS,\"Nincs ilyen játékos\");if(pID == playerid)) return 1;if(pInfo[pID][pFrakcio] == pInfo[playerid][pFrakcio]) return SendClientMessage(playerid,PIROS,\"Ő már tagja a frakciónak\");if(pInfo[playerid][pFrakcio] < 0 || pInfo[playerid][pFrakcio] > MAX_FRAKCIO) return SendClientMessage(playerid,PIROS,\"Nem is vagy frakciótag..\"); pInfo[pID][pFrakcio] = pInfo[playerid][pFrakcio]; SendFormatMessage(playerid,NARANCS,\"Sikeresen felvetted %s-t ide: %s\",Nev(pID),FrakcioInfo[pInfo[playerid][pFrakcio]][fNev]); SendFormatMessage(playerid,NARANCS,\"<< %s felvett téged ide: %s >>\",Nev(playerid),FrakcioInfo[pInfo[playerid][pFrakcio]][fNev]);}
if(pInfo[playerid][pFrakcio] < 0 || pInfo[playerid][pFrakcio] > MAX_FRAKCIO)if(pInfo[pID][pFrakcio] == pInfo[playerid][pFrakcio]),if(pInfo[pID][pFrakcio] != pInfo[playerid][pFrakcio])- Mert ugye minek vennél fel valakit fel ugyanabba a frakcióba többször is? Vagy miért rúgnád ki más frakciójából?..if(!IsPlayerConnected(pID)) - Nem létező játékost ne akarj már felvenni if(pID == playerid)) - Meg magadat se.. :grrrrr: