Szerző Téma: invalid function,should return a value  (Megtekintve 792 alkalommal)

Nem elérhető tudvari

  • 1264
  • Fejlesztő
    • Profil megtekintése
invalid function,should return a value
« Dátum: 2012. június 10. - 20:57:17 »
0 Show voters
Sziasztok!
a 16302,16303,16304 sorban errort jelez a parancsomnál.Segítenétek pls?
 
CMD:c4(playerid,params[])
{
if(Belepve[playerid] != 0)
{
    if(JatekosInfo[playerid][Megkotozve] == 0 && JatekosInfo[playerid][Megbilincselve] == 0)
    {
   if(CsinalVmit[playerid] == 0)
   {
       if(JatekosInfo[playerid][borton]== 0 && JatekosInfo[playerid][AdminBorton] == 0)
       {
          new mit[64];
                if(sscanf(params,\"s\",mit)) return SendClientMessage(playerid,SZURKE,\"Használat: /c4 [mit]\");
                {
                    if(strcmp(mit,\"lerak\",true) == 0)
                    {
                        if(JatekosInfo[playerid][C4] != 0)
                        {
                        if(IsPlayerInAnyVehicle(playerid))
                        {
                     new kocsi;
                     kocsi = GetPlayerVehicleID(playerid);
                     C4Kocsiban[playerid] = kocsi;
                     new string[256];
                     GetPlayerName(playerid,nev,sizeof(nev));
                     format(string,sizeof(string),\"%s felszerel egy C4-et egy jármûbe...\",nev);
                     ProxDetector(20.0, playerid, string, LILA, LILA, LILA, LILA, LILA);
                     format(string,sizeof(string),\"%s felszerel egy C4-et egy jármûbe.(%d)\",nev,kocsi);
                     printf(string);
                     tc4[playerid] = SetTimerEx(\"c4szereles\",10000,false,\"i\",playerid);
                     CsinalVmit[playerid] = 1;
                     TogglePlayerControllable(playerid,false);
                        }
                        if(!IsPlayerInAnyVehicle(playerid))
                        {
                            ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
                     new string[256];
                     GetPlayerName(playerid,nev,sizeof(nev));
                     format(string,sizeof(string),\"%s lerak egy C4-et...\",nev);
                     ProxDetector(20.0, playerid, string, LILA, LILA, LILA, LILA, LILA);
                     format(string,sizeof(string),\"%s lerak egy C4-et.\",nev);
                     printf(string);
                     tc4[playerid] = SetTimerEx(\"c4szereles\",10000,false,\"i\",playerid);
                     CsinalVmit[playerid] = 1;
                     TogglePlayerControllable(playerid,false);
                        }
               }
               else SendClientMessage(playerid, HIBA, \"Nincs nálad C4!\");
                    }
                    if(strcmp(mit,\"aktival\",true) == 0)
                    {
                        if(C4Lerakva[playerid] == 1)
                        {
                            GetPlayerName(playerid,nev,sizeof(nev));
                        if(C4Kocsiban[playerid] == 0)
                        {
                            CreateExplosion(C4x[playerid], C4y[playerid], C4z[playerid], 2, 50);
                     C4Lerakva[playerid] = 0;
                     C4x[playerid] = 0.000000;
                     C4y[playerid] = 0.000000;
                     C4z[playerid] = 0.000000;
                     new string[256];
                     format(string,sizeof(string),\"%s felrobbantott egy C4-et.\",nev);
                     ProxDetector(20.0, playerid, string, LILA, LILA, LILA, LILA, LILA);
                     AdminnakUzenet(VNARANCS,string,1);
                     SendClientMessage(playerid,SIKERES,\"Sikeresen felrobbantottad a C4-et!\");
                     DestroyObject(C4Object[playerid]);
                  }                              }
                  else if(C4Kocsiban[playerid] != 0)
                  {
                      new kocsi = C4Kocsiban[playerid];
                     new Float:x, Float:y, Float:z;
                     GetVehiclePos(kocsi, x, y, z);
                     CreateExplosion(x, y, z, 2, 50);
                     C4Kocsiban[playerid] = 0;
                     C4Lerakva[playerid] = 0;
                     new string[256];
                     format(string,sizeof(string),\"%s felrobbantott egy C4-et.\",nev);
                     ProxDetector(20.0, playerid, string, LILA, LILA, LILA, LILA, LILA);
                     format(string,sizeof(string),\"%s felrobbantott egy C4-et.(%d)\",nev,kocsi);
                     AdminnakUzenet(VNARANCS,string,1);
                     SendClientMessage(playerid,SIKERES,\"Sikeresen felrobbantottad a C4-et!\");
                  }
               }
               else SendClientMessage(playerid, HIBA, \"Nem raktál le C4-et!\");
                    }
                }
      }
      else SendClientMessage(playerid, HIBA, \"Börtönben?\");
   }
   else SendClientMessage(playerid, HIBA, \"Már csinálsz valamit!\");
}
else SendClientMessage(playerid, HIBA, \"Meg vagy kötözve/bilincselve!\");
}//16302
else SendClientMessage(playerid, HIBA, \"Be kell jelentkezned!\"); //16303
return 0;//16304
}

 
D:\\Egyebek\\0.3e\\gamemodes\\loginom.pwn(16302) : warning 209: function \"cmd_c4\" should return a value
D:\\Egyebek\\0.3e\\gamemodes\\loginom.pwn(16303) : error 010: invalid function or declaration
D:\\Egyebek\\0.3e\\gamemodes\\loginom.pwn(16304) : error 010: invalid function or declaration
Ja és egyébként nem tudjátok miért van az,hogy ha berakok egy fegyver mentõ funkciót,akkor a modban lévõ(nem fs) textdrawok a bal felsõ sarokban lesznek és folyamatosan villognak?
Köszi a segítséget!

Nem elérhető zeteni

  • 1970
  • Ex-Scripter
    • Profil megtekintése
invalid function,should return a value
« Válasz #1 Dátum: 2012. június 10. - 21:04:09 »
0 Show voters
zárási hiba lesz szerintem vagy egy pontosvesszõt valahol kihagytál. Nézd meg a felette lévõ sorokat

Nem elérhető tudvari

  • 1264
  • Fejlesztő
    • Profil megtekintése
invalid function,should return a value
« Válasz #2 Dátum: 2012. június 10. - 21:06:03 »
0 Show voters
Már rá googleoztam,és ott is ezt írták,de nem találtam benne hibát :S

invalid function,should return a value
« Válasz #3 Dátum: 2012. június 10. - 21:10:19 »
0 Show voters
Egyel több \"}\" ilyen jel van, talán itt:
 
                           DestroyObject(C4Object[playerid]);
                  }                              \\\\ } <--EZ.

 
Ez csak tipp mivel nem néztem végig a logikai menetét a parancsnak, a hibát megoldja a törlése, kérdés hogy utána az elvárásoknak megfelelõen mûködik-e majd a parancs.
A másik hiba a Progressbar.inc miatt lehet.

invalid function,should return a value
« Válasz #4 Dátum: 2012. június 10. - 21:15:26 »
0 Show voters
CMD:c4(playerid,params[])
{
if(Belepve[playerid] != 0)
{
    if(JatekosInfo[playerid][Megkotozve] == 0 && JatekosInfo[playerid][Megbilincselve] == 0)
    {
   if(CsinalVmit[playerid] == 0)
   {
       if(JatekosInfo[playerid][borton]== 0 && JatekosInfo[playerid][AdminBorton] == 0)
       {
          new mit[64];
                if(sscanf(params,\"s\",mit)) return SendClientMessage(playerid,SZURKE,\"Használat: /c4 [mit]\");
                {
                    if(strcmp(mit,\"lerak\",true) == 0)
                    {
                        if(JatekosInfo[playerid][C4] != 0)
                        {
                        if(IsPlayerInAnyVehicle(playerid))
                        {
                     new kocsi;
                     kocsi = GetPlayerVehicleID(playerid);
                     C4Kocsiban[playerid] = kocsi;
                     new string[256];
                     GetPlayerName(playerid,nev,sizeof(nev));
                     format(string,sizeof(string),\"%s felszerel egy C4-et egy jármûbe...\",nev);
                     ProxDetector(20.0, playerid, string, LILA, LILA, LILA, LILA, LILA);
                     format(string,sizeof(string),\"%s felszerel egy C4-et egy jármûbe.(%d)\",nev,kocsi);
                     printf(string);
                     tc4[playerid] = SetTimerEx(\"c4szereles\",10000,false,\"i\",playerid);
                     CsinalVmit[playerid] = 1;
                     TogglePlayerControllable(playerid,false);
                        }
                        else if(!IsPlayerInAnyVehicle(playerid))
                        {
                            ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
                     new string[256];
                     GetPlayerName(playerid,nev,sizeof(nev));
                     format(string,sizeof(string),\"%s lerak egy C4-et...\",nev);
                     ProxDetector(20.0, playerid, string, LILA, LILA, LILA, LILA, LILA);
                     format(string,sizeof(string),\"%s lerak egy C4-et.\",nev);
                     printf(string);
                     tc4[playerid] = SetTimerEx(\"c4szereles\",10000,false,\"i\",playerid);
                     CsinalVmit[playerid] = 1;
                     TogglePlayerControllable(playerid,false);
                        }
               }
               else SendClientMessage(playerid, HIBA, \"Nincs nálad C4!\");
                    }
                    if(strcmp(mit,\"aktival\",true) == 0)
                    {
                        if(C4Lerakva[playerid] == 1)
                        {
                            GetPlayerName(playerid,nev,sizeof(nev));
                        if(C4Kocsiban[playerid] == 0)
                        {
                            CreateExplosion(C4x[playerid], C4y[playerid], C4z[playerid], 2, 50);
                     C4Lerakva[playerid] = 0;
                     C4x[playerid] = 0.000000;
                     C4y[playerid] = 0.000000;
                     C4z[playerid] = 0.000000;
                     new string[256];
                     format(string,sizeof(string),\"%s felrobbantott egy C4-et.\",nev);
                     ProxDetector(20.0, playerid, string, LILA, LILA, LILA, LILA, LILA);
                     AdminnakUzenet(VNARANCS,string,1);
                     SendClientMessage(playerid,SIKERES,\"Sikeresen felrobbantottad a C4-et!\");
                     DestroyObject(C4Object[playerid]);
                  }
                  else if(C4Kocsiban[playerid] != 0)
                  {
                      new kocsi = C4Kocsiban[playerid];
                     new Float:x, Float:y, Float:z;
                     GetVehiclePos(kocsi, x, y, z);
                     CreateExplosion(x, y, z, 2, 50);
                     C4Kocsiban[playerid] = 0;
                     C4Lerakva[playerid] = 0;
                     new string[256];
                     format(string,sizeof(string),\"%s felrobbantott egy C4-et.\",nev);
                     ProxDetector(20.0, playerid, string, LILA, LILA, LILA, LILA, LILA);
                     format(string,sizeof(string),\"%s felrobbantott egy C4-et.(%d)\",nev,kocsi);
                     AdminnakUzenet(VNARANCS,string,1);
                     SendClientMessage(playerid,SIKERES,\"Sikeresen felrobbantottad a C4-et!\");
                  }
               }
               else SendClientMessage(playerid, HIBA, \"Nem raktál le C4-et!\");
                    }
                }
      }
      else SendClientMessage(playerid, HIBA, \"Börtönben?\");
   }
   else SendClientMessage(playerid, HIBA, \"Már csinálsz valamit!\");
}
else SendClientMessage(playerid, HIBA, \"Meg vagy kötözve/bilincselve!\");
}
else SendClientMessage(playerid, HIBA, \"Be kell jelentkezned!\");
return 1;
}

Nem elérhető tudvari

  • 1264
  • Fejlesztő
    • Profil megtekintése
invalid function,should return a value
« Válasz #5 Dátum: 2012. június 10. - 21:23:23 »
0 Show voters
Írd le légyszíves mit javítottál ki,mert minden le van csúszva,és nem tudom így kiolvasni.Ha csak a return 1-et,akkor nem jó.
Kiszedtem pár dolgot stb.És rájöttem,hogy csak akkor jelez hibát,ha ez a rész benne van:
 
                       if(strcmp(mit,\"aktival\",true) == 0)
                    {
                        if(C4Lerakva[playerid] == 1)
                        {
                            GetPlayerName(playerid,nev,sizeof(nev));
                        if(C4Kocsiban[playerid] == 0)
                        {
                            CreateExplosion(C4x[playerid], C4y[playerid], C4z[playerid], 2, 50);
                     C4Lerakva[playerid] = 0;
                     C4x[playerid] = 0.000000;
                     C4y[playerid] = 0.000000;
                     C4z[playerid] = 0.000000;
                     new string[256];
                     format(string,sizeof(string),\"%s felrobbantott egy C4-et.\",nev);
                     ProxDetector(20.0, playerid, string, LILA, LILA, LILA, LILA, LILA);
                     AdminnakUzenet(VNARANCS,string,1);
                     SendClientMessage(playerid,SIKERES,\"Sikeresen felrobbantottad a C4-et!\");
                     DestroyObject(C4Object[playerid]);
                  }                              }
                  else if(C4Kocsiban[playerid] != 0)
                  {
                      new kocsi = C4Kocsiban[playerid];
                     new Float:x, Float:y, Float:z;
                     GetVehiclePos(kocsi, x, y, z);
                     CreateExplosion(x, y, z, 2, 50);
                     C4Kocsiban[playerid] = 0;
                     C4Lerakva[playerid] = 0;
                     new string[256];
                     format(string,sizeof(string),\"%s felrobbantott egy C4-et.\",nev);
                     ProxDetector(20.0, playerid, string, LILA, LILA, LILA, LILA, LILA);
                     format(string,sizeof(string),\"%s felrobbantott egy C4-et.(%d)\",nev,kocsi);
                     AdminnakUzenet(VNARANCS,string,1);
                     SendClientMessage(playerid,SIKERES,\"Sikeresen felrobbantottad a C4-et!\");
                  }
               }
               else SendClientMessage(playerid, HIBA, \"Nem raktál le C4-et!\");
                    }

 
Ui.: meg van a hiba,egy sorba két zárás volt xd
« Utoljára szerkesztve: 2012. június 10. - 21:50:02 írta tudvari »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal