Hello, ez egy részlet egy regisztrációs menüs szkinrendszerből.
Valamiért random bedobja néha a Felhasználónévhez és Jelszóhoz más játékosok adatait, és így be is lehet velük lépni.
tipp?hiba? :O
Kód:
public MainRegMenu(id)
   {
      if(!Loggedin[id])
      {
         new String[121], Menu;
         formatex(String, charsmax(String), "\r%s \y%s \w| \dRegisztráciĂłs Rendszer", MENUPREFIX, PLUGIN);
         Menu = menu_create(String, "MenuHandler");
         formatex(String, charsmax(String), "\rFelhasználĂłnĂ©v: \d%s", UserName[id]);
         menu_additem(Menu, String, "a0");
         formatex(String, charsmax(String), "\rJelszĂł: \d%s^n", UserPassword[id]);
         menu_additem(Menu, String, "a1");
         if(Found[id] == 2)
         {
            formatex(String, charsmax(String), "BejelentkezĂ©s");
            menu_additem(Menu, String, "a2");
         }
         else if(Found[id] == 1)
         {
            formatex(String, charsmax(String), "RegisztráciĂł");
            menu_additem(Menu, String, "a2");
         }
         menu_display(id, Menu);
      }
   }
   public MenuHandler(id, Menu, Item)
   {
      if(Item == MENU_EXIT )
      {
         menu_destroy(Menu);
         return PLUGIN_HANDLED;
      }
      new Data[6], szName[64];
      new Access, Callback;
      menu_item_getinfo(Menu, Item, Access, Data,charsmax(Data), szName,charsmax(szName), Callback);
      new Key = str_to_num(Data[1]);
      switch(Data[0])
      {
         case 'a':
         {
            switch(Key)
            {
               case 0: client_cmd(id, "messagemode MY_USERNAME");
               case 1: client_cmd(id, "messagemode MY_PASSWORD");
               case 2: cmdRegLog(id);
            }
         }
      }
      menu_destroy(Menu);
      return PLUGIN_HANDLED;
   }
   public fomenu(id)
   {
      if(!Loggedin[id])
      {
         client_printcolor(id, "!g%s !yCsak bejelentkezĂ©s után elĂ©rhetĹ‘!", CHATPREFIX);
         MainRegMenu(id);
         return PLUGIN_HANDLED;
      }
      new String[96]
      format(String, charsmax(String), "\r[Weapon Skin System] \wFĹ‘menĂĽ^n\yĂ–lĂ©sek: \d%i \w|\y Kreditek: \d%i", oles[id],kredit[id])
      new menu = menu_create(String, "fomenu_MyMenu");
      menu_additem(menu, "Fegyver Skin Csomagok", "0");
      menu_additem(menu, "JátĂ©kos InfĂłk", "1");
      menu_additem(menu, "Csomag InformáciĂłk", "2");
      menu_additem(menu, "Bolt - TESZT v 1.0", "3");
      menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
      menu_setprop(menu, MPROP_EXITNAME, "\rKilĂ©pĂ©s");
      menu_display(id, menu, 0);
      return PLUGIN_HANDLED;
   }
   public fomenu_MyMenu(id, menu, item)
   {
      if(item == MENU_EXIT)
      {
         menu_destroy(menu);
         return PLUGIN_HANDLED;
      }
      new command[6], name[64], access, callback;
      menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
      switch(item)
      {
         case 0: fegymenu(id)
         case 1: playerinfo(id)
         case 2: show_motd(id, "addons/amxmodx/configs/wssinfo.txt", "[WSS] Infok")
         case 3: bolt(id)
      }
      menu_destroy(menu);
      return PLUGIN_HANDLED;
   }
   public bolt(id)
   {
      new String[96]
      format(String, charsmax(String), "\r[Weapon Skin System] \wFegyver Bolt^n\y Kreditek: \d%i", kredit[id])
      new menu = menu_create(String, "bolt_handler" )
      format(String, charsmax(String), kredit[id] >= need_kills_bolt[0] ? (menuszovegbolt[0][0]):(menuszovegbolt[0][1]), kredit[id], need_kills_bolt[0]);
      menu_additem(menu, String, "0" );
      menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
      menu_setprop(menu, MPROP_BACKNAME, "Vissza");
      menu_setprop(menu, MPROP_NEXTNAME, "ElĹ‘re");
      menu_setprop(menu, MPROP_EXITNAME, "KilĂ©pĂ©s");
      menu_display(id, menu, 0);
      return PLUGIN_HANDLED;
   }
   public bolt_handler(id, menu, item)
   {
      if(item == MENU_EXIT)
      {
         menu_destroy(menu)
         return PLUGIN_HANDLED;
      }
      new command[6], name[64], access, callback;
      menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
      switch(item)
      {
         case 0: {
            if(kredit[id] >= need_kills_bolt[0]) {
            csomag[id] = 8
            kredit[id] -= get_cvar_num("wastelandara");
            ColorChat(id, GREEN, chatszoveg[10],prefix, get_cvar_num("wastelandara"), csomagmsgbolt[0]);
            }
            else  {
            ColorChat(id, GREEN, chatszoveg[9],prefix);
            }
         }
      }
      bolt(id)
      return PLUGIN_HANDLED;
   }
   public playerinfo(id)
   {   
      new some[256], menu
      static players[32],szTemp[10],pnum
      get_players(players,pnum,"ch");
    
      formatex(some,255,"\r[Weapon Skin System] \wJátĂ©kos \d|\w Ă–lĂ©s \d|\w Kredit");
      menu = menu_create(some,"pinfo_Handler");
    
      for (new i; i < pnum; i++)
      {
         formatex(some,256,"%s \r(\yĂ–lĂ©se: \w%i \d| \yKreditje: \w%i\r)",get_player_name(players[i]), oles[players[i]],kredit[players[i]]);
         num_to_str(players[i],szTemp,charsmax(szTemp));
         menu_additem(menu, some, szTemp);
      }
    
      menu_setprop(menu, MPROP_EXIT, MEXIT_ALL );
      menu_setprop(menu, MPROP_EXITNAME, "KilĂ©pĂ©s");
      menu_display(id, menu);
      return PLUGIN_HANDLED;
   }
   public pinfo_Handler(id,menu, item)
   {
      if(item == MENU_EXIT)
      {
         menu_destroy(menu);
         return;
      }
      playerinfo(id)
   }
   public fegymenu(id)
   {
      new String[96]
      format(String, charsmax(String), "\r[Weapon Skin System] \wSkin csomagok^n\yKiválasztott Csomag: \d[%s]", csomagmsg[csomag[id]])
      new menu = menu_create(String, "fegymenu_handler" )
      format(String, charsmax(String), oles[id] >= need_kills[0] ? (menuszoveg[0][0]):(menuszoveg[0][1]), oles[id], need_kills[0]);
      menu_additem(menu, String, "0" );
      formatex(String, charsmax(String), oles[id] >= need_kills[1] ? (menuszoveg[1][0]):(menuszoveg[1][1]), oles[id], need_kills[1]);
      menu_additem(menu, String, "1");
      formatex(String, charsmax(String), oles[id] >= need_kills[2] ? (menuszoveg[2][0]):(menuszoveg[2][1]), oles[id], need_kills[2]);
      menu_additem(menu, String, "2");
      format(String, charsmax(String), oles[id] >= need_kills[3] ? (menuszoveg[3][0]):(menuszoveg[3][1]), oles[id], need_kills[3]);
      menu_additem(menu, String, "3");
      format(String, charsmax(String), oles[id] >= need_kills[4] ? (menuszoveg[4][0]):(menuszoveg[4][1]), oles[id], need_kills[4]);
      menu_additem(menu, String, "4");
      format(String, charsmax(String), oles[id] >= need_kills[5] ? (menuszoveg[5][0]):(menuszoveg[5][1]), oles[id], need_kills[5]);
      menu_additem(menu, String, "5");
      format(String, charsmax(String), oles[id] >= need_kills[6] ? (menuszoveg[6][0]):(menuszoveg[6][1]), oles[id], need_kills[6]);
      menu_additem(menu, String, "6");
      formatex(String, charsmax(String), kredit[id] >= need_kills[7] ? (menuszoveg[7][0]):(menuszoveg[7][1]), kredit[id], need_kills[7]);
      menu_additem(menu, String, "7");
      menu_additem(menu, switchbutton[id] == 1 ? (menuszoveg[8][0]):(menuszoveg[8][1]), "8");
      menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
      menu_setprop(menu, MPROP_BACKNAME, "Vissza");
      menu_setprop(menu, MPROP_NEXTNAME, "ElĹ‘re");
      menu_setprop(menu, MPROP_EXITNAME, "KilĂ©pĂ©s");
      menu_display(id, menu, 0);
      return PLUGIN_HANDLED;
   }
   public fegymenu_handler(id, menu, item)
   {
      if(item == MENU_EXIT)
      {
         menu_destroy(menu)
         return PLUGIN_HANDLED;
      }
      new command[6], name[64], access, callback;
      menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
      switch(item)
      {
         case 0: {
            if(oles[id] >= need_kills[0]) {
            csomag[id] = 1
            ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
            }
            else  {
            ColorChat(id, GREEN, chatszoveg[5],prefix);
            }
         }
         case 1: {
            if(oles[id] >= need_kills[1]) {
            csomag[id] = 2
            ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
            }
            else  {
            ColorChat(id, GREEN, chatszoveg[5],prefix);
            }
         }
         case 2: {
            if(oles[id] >= need_kills[2]) {
            csomag[id] = 3
            ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
            }
            else  {
            ColorChat(id, GREEN, chatszoveg[5],prefix);
            }
         }
         case 3: {
            if(oles[id] >= need_kills[3]) {
            csomag[id] = 4
            ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
            }
            else  {
            ColorChat(id, GREEN, chatszoveg[5],prefix);
            }
         }
         case 4: {
            if(oles[id] >= need_kills[4]) {
            csomag[id] = 5
            ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
            }
            else  {
            ColorChat(id, GREEN, chatszoveg[5],prefix);
            }
         }
         case 5: {
            if(oles[id] >= need_kills[5]) {
            csomag[id] = 6
            ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
            }
            else  {
            ColorChat(id, GREEN, chatszoveg[5],prefix);
            }
         }
         case 6: {
            if(oles[id] >= need_kills[6]) {
            csomag[id] = 7
            ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
            }
            else  {
            ColorChat(id, GREEN, chatszoveg[5],prefix);
            }
         }
         case 7: {
            if(kredit[id] >= need_kills[7]) {
            knife[id] = 1
            ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[5]);
            }
            else  {
            ColorChat(id, GREEN, chatszoveg[9],prefix);
            }
         }
         case 8: {
            if(switchbutton[id] == 0){
            switchbutton[id] = 1
            csomag[id] = 0
            knife[id] = 0
            ColorChat(id, GREEN, chatszoveg[6],prefix);
            }
            else {
            switchbutton[id] = 0
            ColorChat(id, GREEN, chatszoveg[7],prefix);
            }
         }
         case 9: {
            ColorChat(id, GREEN, chatszoveg[5],prefix);
         }
      }
      fegymenu(id)
      return PLUGIN_HANDLED;
   }
   public cmdRegLog(id)
   {
      if(!is_user_connected(id) || Loggedin[id])
         return PLUGIN_HANDLED;
      if((strlen(UserPassword[id]) > 16))
      {
         if(Found[id] == 1)
            client_printcolor(id, "!g%s !yA jelszĂł nem lehet hoszabb, mint 16 karakter!", CHATPREFIX);
         else
            client_printcolor(id, "!g%s !yHibás felhasználĂłnĂ©v, vagy jelszĂł!", CHATPREFIX);
         MainRegMenu(id);
         return PLUGIN_HANDLED;
      }
      if((strlen(UserPassword[id]) < 5))
      {
         if(Found[id] == 1)
            client_printcolor(id, "!g%s !yA jelszĂł nem lehet rövidebb, mint 5 karakter!", CHATPREFIX);
         else
            client_printcolor(id, "!g%s !yHibás felhasználĂłnĂ©v, vagy jelszĂł!", CHATPREFIX);
      
         MainRegMenu(id);
         return PLUGIN_HANDLED;
      }
      switch(Found[id])
      {
         case 1:
         {
            if(Process[id] == 0)
            {
               Process[id] = 1;
               MainRegMenu(id);
               SQL_AccountCheck(id);
               client_printcolor(id, "!g%s !yRegisztráciĂł folyamatban... KĂ©rlek várj...", CHATPREFIX);
            }
            else
               MainRegMenu(id);
         }
         case 2:
         {
            if(Process[id] == 0)
            {
               Process[id] = 1;
               MainRegMenu(id);
               SQL_AccountCheck(id);
               client_printcolor(id, "!g%s !yBejelentkezĂ©s folyamatban... KĂ©rlek várj...", CHATPREFIX);
            }
            else
               MainRegMenu(id);
         }
      }
      return PLUGIN_HANDLED;
   }
   public infohud() {
      
      if(!get_cvar_num("wss_hudenable")) return PLUGIN_HANDLED
      
      static id
      for(id = 1; id <= get_maxplayers(); id++)
      {
         if(is_user_alive(id)){
            set_hudmessage(0, 127, 255, 0.01, 0.20, 0, 6.0, 1.0)
            show_hudmessage(id, "[Ă–lĂ©s: %i]^n[Kredit: %i]^n[Kiválasztott Csomag: %s]^n[Speed Knife: %s]", oles[id],kredit[id],csomagmsg[csomag[id]], knifedisenable[knife[id]])
         }
         else{
            new target = entity_get_int(id, EV_INT_iuser2);
            
            if(!target)
            return PLUGIN_CONTINUE;
               
            set_hudmessage(255, 255, 255, 0.01, 0.20, 0, 6.0, 1.0)
            show_hudmessage(id, "[Ă–lĂ©s: %i]^n[Kredit: %i]^n[Kiválasztott Csomag: %s]^n[Speed Knife: %s]", oles[target],kredit[target],csomagmsg[csomag[target]], knifedisenable[knife[target]])
         }
      }
      return PLUGIN_CONTINUE;
   }
   stock get_player_name(id){
      static szName[32];
      get_user_name(id,szName,31);
      return szName;
   }
   public client_disconnect(id){
      if(Loggedin[id])
         SQL_AccountUpdate(id);
   }
   public client_putinserver( id ) {
      if(is_user_bot(id)) return;
      set_task(10.0, "fomenu", id)
      get_user_name(id, Name[id], charsmax(Name[]));
      oles[id] = 0;
      kredit[id] = 0;
      csomag[id] = 0;
      switchbutton[id] = 0;
      UserName[0][id] = EOS;
      UserPassword[0][id] = EOS;
      Name[0][id] = EOS;
      UserID[id] = 0;
      Process[id] = 0;
      Loggedin[id] = false;
   }
   public plugin_end()
   {
      SQL_FreeHandle(SqlTuple);
   }
   public MYSQL_Init()
   {
      new Query[512], Len;
      SqlTuple = SQL_MakeDbTuple(SQLINFO[0], SQLINFO[1], SQLINFO[2], SQLINFO[3]);
      Len += formatex(Query[Len], charsmax(Query)-Len, "CREATE TABLE IF NOT EXISTS `virushdreg` (`Felhasznalonev` varchar(32) NOT NULL, `Jelszo` varchar(32) NOT NULL, ");
      Len += formatex(Query[Len], charsmax(Query)-Len, "`Jatekosnev` varchar(32) NOT NULL, `Oles` int(11) NOT NULL, `Kredit` int(11) NOT NULL, `Csomag` int(11) NOT NULL, ");
      Len += formatex(Query[Len], charsmax(Query)-Len, "`Switchbutton` int(11) NOT NULL, `ID` int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY)");
      
      SQL_ThreadQuery(SqlTuple, "CreateTableThread", Query);
   }
   public CreateTableThread(FailState, Handle:Query, Error[], ErrorCode, Data[], DataSize, Float:Queuetime)
   {
      if(FailState == TQUERY_CONNECT_FAILED)
         set_fail_state("Nem sikerult kapcsolodni az adatbazishoz!");
      else if(FailState == TQUERY_QUERY_FAILED)
         set_fail_state("Query Hiba");
      if(ErrorCode)
         log_amx("Hibat dobtam: %s", Error);
   }
   public SQL_AccountCheck(id)
   {
      new Query[512], User[32], Data[2];
      formatex(User, 31, "%s", UserName[id]);
      replace_all(User, 31, "\", "\\");
      replace_all(User, 31, "'", "\'");
      Data[0] = id;
      Data[1] = get_user_userid(id);
      formatex(Query, charsmax(Query), "SELECT * FROM `virushdreg` WHERE Felhasznalonev = ^"%s^";", User);
      SQL_ThreadQuery(SqlTuple, "AccountCheckThread", Query, Data, 2);
   }
   public AccountCheckThread(FailState, Handle:Query, Error[], ErrorCode, Data[], DataSize, Float:Queuetime)
   {
      if(FailState == TQUERY_CONNECT_FAILED)
         set_fail_state("Nem sikerult kapcsolodni az adatbazishoz!");
      else if(FailState == TQUERY_QUERY_FAILED)
         set_fail_state("Query Hiba");
      if(ErrorCode)
         log_amx("Hibat dobtam: %s", Error);
      new id = Data[0];
      if(Data[1] != get_user_userid(id))
         return;
      if(Found[id] == 1)
      {
         if((Query) > 0)
         {
            Process[id] = 0;
            MainRegMenu(id);
            client_printcolor(id, "!g%s !yEz a felhasználĂłnĂ©v már foglalt!", CHATPREFIX);
         }
         else
         {
            SQL_AccountCreate(id);
         }
      }
      else if(Found[id] == 2)
      {
         if(SQL_NumRows(Query) == 0)
         {
            Process[id] = 0;
            MainRegMenu(id);
            client_printcolor(id, "!g%s !yHibás felhasználĂłnĂ©v, vagy jelszĂł!", CHATPREFIX);
         }
         else
         {
            SQL_AccountLoad(id);
         }
      }
   }
   public SQL_RegCheck(id)
   {
      new Query[512], User[32], Data[2];
      formatex(User, 31, "%s", UserName[id]);
      replace_all(User, 31, "\", "\\");
      replace_all(User, 31, "'", "\'");
      Data[0] = id;
      Data[1] = get_user_userid(id);
      formatex(Query, charsmax(Query), "SELECT * FROM `virushdreg` WHERE Felhasznalonev = ^"%s^";", User);
      SQL_ThreadQuery(SqlTuple, "RegCheckThread", Query, Data, 2);
   }
   public RegCheckThread(FailState, Handle:Query, Error[], ErrorCode, Data[], DataSize, Float:Queuetime)
   {
      if(FailState == TQUERY_CONNECT_FAILED)
         set_fail_state("Nem sikerult kapcsolodni az adatbazishoz!");
      else if(FailState == TQUERY_QUERY_FAILED)
         set_fail_state("Query Hiba");
      if(ErrorCode)
         log_amx("Hibat dobtam: %s", Error);
      new id = Data[0];
      if(Data[1] != get_user_userid(id))
         return;
      if(SQL_NumRows(Query) > 0)
         Found[id] = 2;
         //formatex(User, 31, "%s", UserName[id]);
         //formatex(Password, 31, "%s", UserPassword[id]);
      else
         Found[id] = 1;
      Process[id] = 0;
      MainRegMenu(id);
   }
   public SQL_AccountCreate(id)
   {
      new Query[512], User[32], Password[32], pName[32], Data[2], Len;
      formatex(User, 31, "%s", UserName[id]);
      formatex(Password, 31, "%s", UserPassword[id]);
      formatex(pName, 31, "%s", Name[id]);
      replace_all(User, 31, "\", "\\");
      replace_all(User, 31, "'", "\'");
      replace_all(Password, 31, "\", "\\");
      replace_all(Password, 31, "'", "\'");
      replace_all(pName, 31, "\", "\\");
      replace_all(pName, 31, "'", "\'");
      Data[0] = id;
      Data[1] = get_user_userid(id);
      Len += formatex(Query[Len], charsmax(Query)-Len, "INSERT INTO `virushdreg` (`Felhasznalonev`, `Jelszo`, `Jatekosnev`, `Oles`, `Kredit`, `Csomag`, `Switchbutton`) ");
      Len += formatex(Query[Len], charsmax(Query)-Len, "VALUES (^"%s^", ^"%s^", ^"%s^", ^"0^", ^"0^", ^"0^", ^"0^");", User, Password, pName);
      SQL_ThreadQuery(SqlTuple, "AccountCreateThread", Query, Data, 2);
   }
   public AccountCreateThread(FailState, Handle:Query, Error[], ErrorCode, Data[], DataSize, Float:Queuetime)
   {
      if(FailState == TQUERY_CONNECT_FAILED)
         set_fail_state("Nem sikerult kapcsolodni az adatbazishoz!");
      else if(FailState == TQUERY_QUERY_FAILED)
         set_fail_state("Query Hiba");
      if(ErrorCode)
         log_amx("Hibat dobtam: %s", Error);
      new id = Data[0];
      if(Data[1] != get_user_userid(id))
         return;
      Process[id] = 0;
      Found[id] = 2;
      MainRegMenu(id);
      client_printcolor(id, "!g%s !ySikeresen regisztráltál a szerverre. (FelhasználĂłneved: !g%s !t| !yJelszavad: !g%s!y)", CHATPREFIX, UserName[id], UserPassword[id]);
   }
   public SQL_AccountLoad(id)
   {
      new Query[512], User[32], Data[2];
      formatex(User, 31, "%s", UserName[id]);
      replace_all(User, 31, "\", "\\");
      replace_all(User, 31, "'", "\'");
      Data[0] = id;
      Data[1] = get_user_userid(id);
      formatex(Query, charsmax(Query), "SELECT * FROM `virushdreg` WHERE Felhasznalonev = ^"%s^";", User);
      SQL_ThreadQuery(SqlTuple, "AccountLoadThread", Query, Data, 2);
   }
   public AccountLoadThread(FailState, Handle:Query, Error[], ErrorCode, Data[], DataSize, Float:Queuetime)
   {
      if(FailState == TQUERY_CONNECT_FAILED)
         set_fail_state("Nem sikerult kapcsolodni az adatbazishoz!");
      else if(FailState == TQUERY_QUERY_FAILED)
         set_fail_state("Query Hiba");
      if(ErrorCode)
         log_amx("Hibat dobtam: %s", Error);
      new id = Data[0];
      if(Data[1] != get_user_userid(id))
         return;
      new SqlPassword[32];
      SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Jelszo"), SqlPassword, 31);
      if(equal(UserPassword[id], SqlPassword))
      {
         UserID[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "ID"));
         oles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Oles"));
         kredit[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Kredit"));
         csomag[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Csomag"));
         switchbutton[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Switchbutton"));
         Process[id] = 0;
         Loggedin[id] = true;
         show_menu(id, 0, "^n", 1);
         set_task(1.0, "fomenu", id)
         client_printcolor(id, "!g%s !yĂśdv a szerveren !g%s!y(!t#%d!y), sikeresen bejelentkeztĂ©l.", CHATPREFIX, UserName[id], UserID[id]);
      }
      else
      {
         Process[id] = 0;
         MainRegMenu(id);
         client_printcolor(id, "!g%s !yHibás felhasználĂłnĂ©v, vagy jelszĂł!", CHATPREFIX);
      }
   }
   public SQL_AccountUpdate(id)
   {
      new Query[512], NewName[32], Password[32], Len;
      formatex(NewName, 31, "%s", Name[id]);
      formatex(Password, 31, "%s", UserPassword[id]);
      replace_all(NewName, 31, "\", "\\");
      replace_all(NewName, 31, "'", "\'");
      replace_all(Password, 31, "\", "\\");
      replace_all(Password, 31, "'", "\'");
      Len += formatex(Query[Len], charsmax(Query)-Len, "UPDATE `virushdreg` SET Jelszo = ^"%s^", Jatekosnev = ^"%s^", Oles = ^"%d^", ", Password, NewName, oles[id]);
      Len += formatex(Query[Len], charsmax(Query)-Len, "Kredit = ^"%d^", Csomag = ^"%d^", Switchbutton = ^"%d^" WHERE ID = ^"%d^";", kredit[id], csomag[id], switchbutton[id], UserID[id]);
      SQL_ThreadQuery(SqlTuple, "AccountUpdateThread", Query);
   }
   public AccountUpdateThread(FailState, Handle:Query, Error[], ErrorCode, Data[], DataSize, Float:Queuetime)
   {
      if(FailState == TQUERY_CONNECT_FAILED)
         set_fail_state("Nem sikerult kapcsolodni az adatbazishoz!");
      else if(FailState == TQUERY_QUERY_FAILED)
         set_fail_state("Query Hiba");
      if(ErrorCode)
         log_amx("Hibat dobtam: %s", Error);
   }
   public cmdUser(id)
   {
      if(!is_user_connected(id) || Loggedin[id])
         return PLUGIN_HANDLED;
      UserName[0][id] = EOS;
      read_args(UserName[id], 31);
      remove_quotes(UserName[id]);
      SQL_RegCheck(id);
      return PLUGIN_HANDLED;
   }
   public cmdPassword(id)
   {
      if(!is_user_connected(id) || Loggedin[id])
         return PLUGIN_HANDLED;
      UserPassword[0][id] = EOS;
      read_args(UserPassword[id], 31);
      remove_quotes(UserPassword[id]);
      MainRegMenu(id);
      return PLUGIN_HANDLED;
   }
   stock client_printcolor(const id, const input[], any:...)
   {
      new count = 1, players[32];
      static msg[191];
      vformat(msg, 190, input, 3);
      
      replace_all(msg, 190, "!g", "^4");
      replace_all(msg, 190, "!y", "^1");
      replace_all(msg, 190, "!t", "^3")   ; 
      
      if (id) players[0] = id; else get_players(players, count, "ch");
      {
         for (new i = 0; i < count; i++)
         {
            if (is_user_connected(players[i]))
            {
               message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
               write_byte(players[i]);
               write_string(msg);
               message_end();
            }
         }
      }
      return PLUGIN_HANDLED;
   }