Szerző Téma: Enum probléma  (Megtekintve 893 alkalommal)

Enum probléma
« Dátum: 2012. augusztus 11. - 17:46:14 »
0 Show voters
Sziasztok!
Tut szerint csináltam, de hibádzik... :/
 
new pInfo[MAX_PLAYERS][info];
enum Info
{
Adminszint,
};

 


COMMAND:login(playerid, params[])
{
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
if(IsLogged[playerid] == 0)
{
    new password[64];
    if(sscanf(params, \"s[64]\", password)) return SendClientMessage(playerid,0xFF0000AA,\"Használat: /login [jelszó]\");
    else
    {
        format(file, sizeof(file), \"%s.ini\", PlayerName);
   if(dini_Exists(file))
   {
       if(strval(dini_Get(file, \"Jelszó\")) == udb_hash(password))
       {
      if(dini_Int(file, \"Bannolva-e\") == 1)
      {
      SendClientMessage(playerid, COLOR_RED, \"Te bannolva vagy!\");
      }else{
      pInfo[playerid][Adminszint] = dini_Int(file,\"Adminszint\");
           IsLogged[playerid] = 1;
           SendClientMessage(playerid,0xFF0000AA,\"Sikeresen bejelentkeztél!\");
           TogglePlayerControllable(playerid, 1);
             }
      }
      else
      {
          SendClientMessage(playerid,0xFF0000AA,\"HIBA: Rossz jelszó!\");
      }
   }
   else
   {
       SendClientMessage(playerid,0xFF0000AA,\"HIBA: Elõször regisztrálj! /register\");
   }
  }
}
else
{
    SendClientMessage(playerid,0xFF0000AA,\"HIBA: Te már bejelentkeztél!\");
}
return 1;
}

 
Errorok:
 
F:\\Users\\Szõke\\Desktop\\samp03e_svr_win32\\gamemodes\\falvacskakrpg.pwn(32) : error 017: undefined symbol \"Info\"
F:\\Users\\Szõke\\Desktop\\samp03e_svr_win32\\gamemodes\\falvacskakrpg.pwn(32) : error 009: invalid array size (negative, zero or out of bounds)
F:\\Users\\Szõke\\Desktop\\samp03e_svr_win32\\gamemodes\\falvacskakrpg.pwn(610) : warning 213: tag mismatch
F:\\Users\\Szõke\\Desktop\\samp03e_svr_win32\\gamemodes\\falvacskakrpg.pwn(782) : warning 203: symbol is never used: \"ret_memcpy\"
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase
 
2 Errors.

Nem elérhető ZeRo

  • 4620
  • Ex Globális Moderátor
    • Profil megtekintése
Enum probléma
« Válasz #1 Dátum: 2012. augusztus 11. - 17:55:54 »
0 Show voters
Az \'Adminszint\' után ne tegyél vesszõt, mivel csak azt az egy elemet deklarálod.
 

enum Info
{
Adminszint
};

Enum probléma
« Válasz #2 Dátum: 2012. augusztus 11. - 17:56:03 »
+1 Show voters
Elsõ hiba.
elõször enum, utána változó
azaz
 
enum Info
{
Adminszint
};
new pInfo[MAX_PLAYERS][info];

 
A másodikat gondolom észrevetted. Az enum utolsó változója után nem kell vesszõ. Ha csak 1 változó van, akkor sem.
Harmadik.
mivel nem használod a függvényt, hibának érzékeli.
script / mod elejére, az includek rész után
 
#pragma unused ret_memcpy

Nem elérhető SnooP

  • 1798
  • SnooP
    • Profil megtekintése
Enum probléma
« Válasz #3 Dátum: 2012. augusztus 11. - 17:59:58 »
0 Show voters
Idézetet írta: kiakovi date=1344699974\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"25981\" data-ipsquote-contentclass=\"forums_Topic

new pInfo[MAX_PLAYERS][info];
enum Info
{
Adminszint,
};
COMMAND:login(playerid, params[])
{
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
if(IsLogged[playerid] == 0)
{
    new password[64];
    if(sscanf(params, \"s[64]\", password)) return SendClientMessage(playerid,0xFF0000AA,\"Használat: /login [jelszó]\");
    else
    {
        format(file, sizeof(file), \"%s.ini\", PlayerName);
   if(dini_Exists(file))
   {
       if(strval(dini_Get(file, \"Jelszó\")) == udb_hash(password))
       {
      if(dini_Int(file, \"Bannolva-e\") == 1)
      {
      SendClientMessage(playerid, COLOR_RED, \"Te bannolva vagy!\");
      }else{
      pInfo[playerid][Adminszint] = dini_Int(file,\"Adminszint\");
           IsLogged[playerid] = 1;
           SendClientMessage(playerid,0xFF0000AA,\"Sikeresen bejelentkeztél!\");
           TogglePlayerControllable(playerid, 1);
             }
      }
      else
      {
          SendClientMessage(playerid,0xFF0000AA,\"HIBA: Rossz jelszó!\");
      }
   }
   else
   {
       SendClientMessage(playerid,0xFF0000AA,\"HIBA: Elõször regisztrálj! /register\");
   }
  }
}
else
{
    SendClientMessage(playerid,0xFF0000AA,\"HIBA: Te már bejelentkeztél!\");
}
return 1;
}
Errorok:
[code]F:\\Users\\Szõke\\Desktop\\samp03e_svr_win32\\gamemodes\\falvacskakrpg.pwn(32) : error 017: undefined symbol \"Info\"
F:\\Users\\Szõke\\Desktop\\samp03e_svr_win32\\gamemodes\\falvacskakrpg.pwn(32) : error 009: invalid array size (negative, zero or out of bounds)
F:\\Users\\Szõke\\Desktop\\samp03e_svr_win32\\gamemodes\\falvacskakrpg.pwn(610) : warning 213: tag mismatch
F:\\Users\\Szõke\\Desktop\\samp03e_svr_win32\\gamemodes\\falvacskakrpg.pwn(782) : warning 203: symbol is never used: \"ret_memcpy\"
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase
 
2 Errors.

 

Nagyon egyszerû hibáid vannak. Ajánlom rakd PAWNO Kódba a jobban átlátgatóság miatt.
Amikor egy ilyen van F:\\Users\\Szõke\\Desktop\\samp03e_svr_win32\\gamemodes\\falvacskakrpg.pwn(32) A vége azaz zárójelbe van a 32 ott mutatja hanyadik sornál van a hiba.
Szóval nézzük át erre a hiba az, hogy a 31. sorba már egyszer megnyitottad ezt a zárójelet  } az elsenel, majd a 32. sorba újból elég 1x is megnyitni.
F:\\Users\\Szõke\\Desktop\\samp03e_svr_win32\\gamemodes\\falvacskakrpg.pwn(610) : warning 213: tag mismatch <-- Ennél valószinû valamit elírtál lehet helyesírási hiba vagy bármi ( 610-es sornál)
F:\\Users\\Szõke\\Desktop\\samp03e_svr_win32\\gamemodes\\falvacskakrpg.pwn(782) : warning 203: symbol is never used: \"ret_memcpy\"
 
#pragma unused ret_memcpy 

 <-- Erre ez a megoldás (782-es sor)
Remélem segíthettem  ;)
E: Megelõztetek, mindegy  :D Inkább rájuk halgass sokkal jobban értenek a PAWNO-hoz mint én  :)

Enum probléma
« Válasz #4 Dátum: 2012. augusztus 11. - 18:00:59 »
0 Show voters
Nagyon köszönöm nektek :)

Enum probléma
« Válasz #5 Dátum: 2012. augusztus 11. - 18:30:59 »
0 Show voters
Zárható a téma?
Ha igen,légy szíves zárd. :)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal