Szerző Téma: Frakció felvétel hiba  (Megtekintve 1513 alkalommal)

Frakció felvétel hiba
« Dátum: 2016. június 06. - 17:08:53 »
0 Show voters
  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]);

 
Szóval ebben a néhány sorba mi a hiba? amint beírom hogy /frakcio felvesz azt írja hogy nincs ilyen parancs? :/
« Utoljára szerkesztve: 2016. június 07. - 00:23:03 írta anGeL »

Frakció felvétel hiba
« Válasz #1 Dátum: 2016. június 06. - 20:51:08 »
0 Show voters
a parancs végére kell egy return 1

Nem elérhető anGeL

  • Adminisztrátor
  • 2158
    • Profil megtekintése
Frakció felvétel hiba
« Válasz #2 Dátum: 2016. június 07. - 00:23:19 »
0 Show voters
[gmod]Spoiler helyett pawn code. Legközelebb magadtól![/gmod]

Frakció felvétel hiba
« Válasz #3 Dátum: 2016. június 07. - 06:40:13 »
0 Show voters
Idézetet írta: Tlalala date=1465239068\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"60783\" data-ipsquote-contentclass=\"forums_Topic
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 > 8) 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;
}

 
A parancs végén ott a return 1; :/

Nem elérhető 1Mark6

  • 437
    • Profil megtekintése
Frakció felvétel hiba
« Válasz #4 Dátum: 2016. június 07. - 09:23:39 »
0 Show voters
if(sscanf(params,\"{s[24}u\",pID))

 Próbáld meg így

Frakció felvétel hiba
« Válasz #5 Dátum: 2016. június 07. - 17:22:18 »
0 Show voters
Idézetet írta: 1Mark6 date=1465284219\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"60783\" data-ipsquote-contentclass=\"forums_Topic

if(sscanf(params,\"{s[24}u\",pID))

 Próbáld meg így
 
Mikor be írom /frakcio felvesz
egyből ki írja hogy önmagamat vettem fel, viszont a rang és a kirúg is buggos :c

Nem elérhető 1Mark6

  • 437
    • Profil megtekintése
Frakció felvétel hiba
« Válasz #6 Dátum: 2016. június 07. - 17:25:04 »
0 Show voters
if(sscanf(params,\"{s[24]}d\",pID))return SendClientMessage(playerid,NARANCS,\"Használat: /frakció felvesz [ Játékos ]\"); 

 
Így próbáld meg.

Frakció felvétel hiba
« Válasz #7 Dátum: 2016. június 07. - 17:40:43 »
0 Show voters
Az utcsi probléma az hogy nem veszi fel a játékost esetleg kirúgja :/

Frakció felvétel hiba
« Válasz #8 Dátum: 2016. június 07. - 18:13:07 »
0 Show voters
Azt a \"d\"-t írd át \"u\"-ra..
 
if(sscanf(params,\"{s[24]}u\",pID))

 
Mivel neked mindenhol hiányzik a kihagyás módszere, így oda kell írnod mindegyikhez ezt, úgy ahogy fentebb van:
 
{s[24]}

 

Idézetet írta: RunDavid date=1465314043\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"60783\" data-ipsquote-contentclass=\"forums_Topic
Az utcsi probléma az hogy nem veszi fel a játékost esetleg kirúgja :/
 
Ezt pedig nem értem..

Nem elérhető 1Mark6

  • 437
    • Profil megtekintése
Frakció felvétel hiba
« Válasz #9 Dátum: 2016. június 07. - 18:23:24 »
0 Show voters
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. :D

Frakció felvétel hiba
« Válasz #10 Dátum: 2016. június 07. - 18:29:33 »
0 Show voters
Idézetet írta: 1Mark6 date=1465316604\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"60783\" data-ipsquote-contentclass=\"forums_Topic

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. :D
 
Ezt most úgy nem értem ???

Frakció felvétel hiba
« Válasz #11 Dátum: 2016. június 07. - 18:42:20 »
0 Show voters
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.

Frakció felvétel hiba
« Válasz #12 Dátum: 2016. június 07. - 18:47:59 »
0 Show voters
Idézetet írta: zsoolt997 date=1465317740\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"60783\" data-ipsquote-contentclass=\"forums_Topic
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.
 
És azt úgy, hogy?

Frakció felvétel hiba
« Válasz #13 Dátum: 2016. június 07. - 20:39:48 »
0 Show voters

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 :D
if(pID == playerid)) - Meg magadat se..  :grrrrr:

 
Ezekre jó lenne figyelni..Ha a leader értéke egyenlő a frakció ID-vel írd át.. Nem tudom hogy te írtad e mindezt, de ha ezekre nem figyelsz oda óriási bughalmazt fogsz csinálni  :facepalm:
« Utoljára szerkesztve: 2016. június 07. - 21:43:36 írta anGeL »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal