Szerző Téma: Frakció probléma!  (Megtekintve 1626 alkalommal)

Frakció probléma!
« Dátum: 2017. Október 19. - 12:45:55 »
0
Sziasztok srácok!
 
Nekem egy olyan gondom lenne hogy van egy módom amiben IG lehet létrehozni frakciót,nevet változtatni stb... 
 
Viszont a szerveren azt írja hogy csak Scripter tudja ezeket a dolgokat megcsinálni, én viszont szeretném átírni hogy csak Tulajdonos tudja ezeket.
 
Próbálkoztam már sokféle módon hogy hogyan tudnám átírni de mindig kudarcba fulladt, ezért kérnék tőletek segítséget!
 
Bemásolom az érintett sorokat:
 

   if(!strcmp(param, \"új\", true) || !strcmp(param, \"uj\", true))
{
    if(!IsScripter(playerid) || !Admin(playerid, FOADMIN_SZINT))
      return SCM(playerid, COL_LRED, \"Csak Scripter hozhat létre új frakciót!\");
   
   new nev[20], tipus;
   if(sscanf(params, \"{s[24]}ds[20]\", tipus, nev))
      return SCM(playerid, COL_MNARANCS, \"Használat: /(f)ra(k)ció [Tipus(1 = Legális | 2 = Maffia | 3 = Banda | 4 = Rendvédelem)] [FrakcióNév]\");
   
   if(tipus != 1 && tipus != 2 && tipus != 3 && tipus != 4)
      return SCM(playerid, COL_LRED, \"Hibás típus! 1 = Legális | 2 = Maffia | 3 = Banda | 4 = Rendvédelem\");
   
   new k = 0, u = -1;
   for(;++k < MAX_FRAKCIO;)
   {
      if(!FInfo[k][fVan])
      {
         u = k;
         break;
      }


   else if(!strcmp(param, \"töröl\", true) || !strcmp(param, \"torol\", true))
{
    if(!IsScripter(playerid) || !Admin(playerid, FOADMIN_SZINT))
      return SCM(playerid, COL_LRED, \"Csak Scripter törölhet frakciót!\");
   
   new id;
   if(sscanf(params, \"{s[24]}d\", id))
      return SCM(playerid, COL_MNARANCS, \"Használat: /(f)ra(k)ció töröl [Frakció ID]\");
   
   if(!FInfo[id][fVan])
      return SCM(playerid, COL_LRED, \"Nincs ilyen frakció létrehozva!\");
      
   if(PlayerInfo[playerid][pMegerosites] == NINCS)
   {
      SCM(playerid, COL_LRED, \"Biztos, hogy törölni szeretnéd a frakciót? Ha igen, írd be újra!\");
      PlayerInfo[playerid][pMegerosites] = playerid;
      return true;
   }


   else if(!strcmp(param, \"típus\", true) || !strcmp(param, \"tipus\", true))
{
    if(!IsScripter(playerid) || !Admin(playerid, FOADMIN_SZINT))
      return SCM(playerid, COL_LRED, \"Csak Scripter állíthatja át a frakció típusát!\");
   new fk, ertek;
   if(sscanf(params, \"{s[24]}dd\", fk, ertek))
      return SCM(playerid, COL_MNARANCS, \"Használat: /frakcio típus [FrakcióID] [Típus(1 = Legális | 2 = Maffia | 3 = Banda | 4 = Rendvédelem)]\");
   if(ertek != 1 && ertek != 2 && ertek != 3 && ertek != 4)
      return SCM(playerid, COL_LRED, \"Hibás típus! 1 = Legális | 2 = Maffia | 3 = Banda | 4 = Rendvédelem\");
    if(fk < 1 || fk > MAX_FRAKCIO || !FInfo[fk][fVan])
      return SCM(playerid, COL_LRED, \"Hibás frakció!\");
      
   //(ertek == 1 ? (\"Legális\") : (ertek == 2 ? (\"Maffia\") : (\"Banda\")))
   SFM(playerid, COL_MNARANCS, \"%s frakció típusa átváltva erre: \"#COL_MNARANCS\"%s\", FInfo[fk][fNev], FrakcioTipus( ertek ));
   FInfo[fk][fLegalis] = ertek;
   FkUpdate(fk, fuLegalis);
}


   else if(!strcmp(param, \"limit\", true))
{
    if(!IsScripter(playerid) || !Admin(playerid, FOADMIN_SZINT))
      return SCM(playerid, COL_LRED, \"Csak Scripter állíthatja át a frakció limitet!\");
   new fk, ertek;
   if(sscanf(params, \"{s[24]}dd\", fk, ertek))
      return SCM(playerid, COL_MNARANCS, \"Használat: /frakcio limit [FrakcióID] [Limit (10 - 50)]\");
   if(ertek > 50 || ertek < 10)
      return SCM(playerid, COL_LRED, \"Hibás limit! Minimum 10 és maximum 50 lehet!\");
    if(fk < 1 || fk > MAX_FRAKCIO || !FInfo[fk][fVan])
      return SCM(playerid, COL_LRED, \"Hibás frakció!\");
      
   SFM(playerid, COL_MNARANCS, \"%s frakció limit frissítve! Régi: \"#COL_MNARANCS\"%d\"#COL_FEHER\" | Új: \"#COL_MNARANCS\"%s\", FInfo[fk][fNev], FInfo[fk][fLimit], ertek);
   FInfo[fk][fLimit] = ertek;
   FkUpdate(fk, fuLimit);
}


   else if(!strcmp(param, \"frakciónév\", true) || !strcmp(param, \"frakcionev\", true))
{
    if(!IsScripter(playerid) || !Admin(playerid, FOADMIN_SZINT))
      return SCM(playerid, COL_LRED, \"Csak Scripter nevezhet át frakciót!\");
    new frakcio, fneve[32];
    if(sscanf(params, \"{s[24]}ds[32]\", frakcio, fneve))
      return SCM(playerid, COL_MNARANCS, \"Használat: /frakció FrakcióNév [FrakcióID] [Neve]\");
   if(strlen(fneve) > 20)
       return SCM(playerid, COL_LRED, \"A rang neve maximum 20 karakter lehet!\");
       
        if(!FInfo[frakcio][fVan])
      return SCM(playerid, COL_LRED, \"Nincs ilyen frakció betöltve!\");
   
   if(Karakter_Ellenorzes(fneve))
      return SCM(playerid, COL_LRED, \"Helytelen karakterek a szövegben! ( /,|,*,\', stb)\");
   
        FInfo[frakcio][fNev] = fneve;
   FkUpdate(frakcio, fuNev);
   SFM(playerid, COL_MNARANCS, \"Frakciónév váltás sikeres! Frakció: \"#COL_MNARANCS\"%d\"#COL_FEHER\" | Neve: \"#COL_MNARANCS\"%s\", frakcio, fneve);
}

 
Tudom hogy elég hosszúra sikeredett de előre szeretném megköszönni annak aki tudna segíteni! Pacsi!

Frakció probléma!
« Válasz #1 Dátum: 2017. Október 19. - 14:30:19 »
0
Vedd ki a scripteres if-eket, ez fáj nekem
 

if(!IsScripter(playerid) || !Admin(playerid, FOADMIN_SZINT))

Frakció probléma!
« Válasz #2 Dátum: 2017. Október 19. - 14:39:31 »
0
Kivettem viszont most ezeket a hibákat kapom: 
 

C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42412) : error 001: expected token: \";\", but found \"return\"
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42412) : warning 217: loose indentation
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42414) : warning 225: unreachable code
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42414) : warning 217: loose indentation
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42459) : error 001: expected token: \";\", but found \"return\"
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42459) : warning 217: loose indentation
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42461) : warning 225: unreachable code
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42461) : warning 217: loose indentation
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42580) : error 001: expected token: \";\", but found \"return\"
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42580) : warning 217: loose indentation
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42582) : warning 225: unreachable code
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42582) : warning 217: loose indentation
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42598) : error 001: expected token: \";\", but found \"return\"
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42598) : warning 217: loose indentation
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42600) : warning 225: unreachable code
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42600) : warning 217: loose indentation
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42730) : error 001: expected token: \";\", but found \"return\"
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42730) : warning 217: loose indentation
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42732) : warning 225: unreachable code
C:\\Users\\Patrick\\Desktop\\Szerver\\gamemodes\\invincible.pwn(42732) : warning 217: loose indentation
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase
 
5 Errors.

 
 

Frakció probléma!
« Válasz #3 Dátum: 2017. Október 19. - 16:04:52 »
0
De, de ne csak azt vedd ki, áhhh. Ha pontosan tudnám a PAWNO szintaxisát se küldeném el, mielőtt ilyet csinálsz tanuld meg az alapokat.

Nem elérhető gbr333

  • 670
    • Profil megtekintése
Frakció probléma!
« Válasz #4 Dátum: 2017. Október 19. - 18:52:43 »
0

if(!IsScripter(playerid) || !Admin(playerid, FOADMIN_SZINT))

 
helyett:
 

if(!Admin(playerid, TULAJ_SZINT))

 
 
« Utoljára szerkesztve: 2017. Október 19. - 18:52:59 írta RoLuX »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal