Szerző Téma: Egyedi Mod!  (Megtekintve 1750 alkalommal)

Egyedi Mod!
« Dátum: 2013. augusztus 07. - 11:15:38 »
0 Show voters
Sziasztok olyan problémám lenne, hogy elkezdtem írni, egy egyedi modot és mikor berakom a szerverre valaki felkapcsolódik rá kifagy és le is áll. valaki valami okosságot tud mondani hozzá?
 
#include <a_samp>
#include <a_mysql2>
native WP_Hash(buffer[], len, const str[]);
// - MySQL
#define MYSQL_HOST \"localhost\"
#define MYSQL_USERNAME \"root\"
#define MYSQL_PASSWORD \"\"
#define MYSQL_DATABASE \"samp\"
// Mysql Adatbázis táblák
#define MYSQL_JATEKOS \"jatekosok\"
// - Dialogos Rendszer
#define DIALOG_REGISZTRACIO 0
#define DIALOG_LOGIN 1
// - Színek
#define COLOR_EVERLIFE 0x15b1bfAA
// Login Rendszer
new sql[256], loginwarn[MAX_PLAYERS];
main()
{
print(\"\\n---------------------------------------\");
print(\"A szerver még Béta Verzió!\\n\");
print(\"---------------------------------------\\n\");
}
public OnPlayerConnect(playerid)
{
format(sql, 256, \"SELECT * FROM \"MYSQL_JATEKOS\" WHERE nev = \'%s\'\", pName(playerid));
mysql_query(sql);
mysql_store_result();
if(mysql_num_rows() == 0){
    mysql_free_result();
ShowPlayerDialog(playerid, DIALOG_REGISZTRACIO, DIALOG_STYLE_PASSWORD, \"{\"#00a2ff\"}Regisztráció\",\"{\"#00a2ff\"}Te még nem vagy regisztrálva. A regisztrációhoz írj be egy jelszót!\",\"Regisztráció\",\"Kilépés\");
}else{
    mysql_free_result();
    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, \"{\"#00a2ff\"}Belépés\",\"{\"#00a2ff\"}Te már regisztrálva vagy. A belépéshez írd be a jelszavad!\",\"Belépés\",\"Kilépés\");
}
return 1;   
}
public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])
{
switch(dialogid)
{
    case DIALOG_REGISZTRACIO:
    {
        if(!response) return Kick(playerid);
        if(strlen(inputtext) < 6 || strlen(inputtext) > 32) return ShowPlayerDialog(playerid, DIALOG_REGISZTRACIO, DIALOG_STYLE_PASSWORD, \"{\"#ff0000\"}Regisztráció\",\"{\"#ff0000\"}A jelszó 6-32 karakter hosszú lehet. Válassz másik jelszót!\",\"Regisztráció\",\"Kilépés\");
   format(sql, 256, \"INSERT INTO \"MYSQL_JATEKOS\" (nev,jelszo) VALUES(\'%s\',\'%s\')\", pName(playerid), Hash(inputtext));
   mysql_query(sql);
   ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, \"{\"#00a806\"}Belépés\",\"{\"#00a806\"}Sikeres regisztráció! A belépéshez írd be a jelszavad!\",\"Belépés\",\"Kilépés\");
}
case DIALOG_LOGIN:
{
    if(!response) return Kick(playerid);
    format(sql, 256, \"SELECT * FROM \"MYSQL_JATEKOS\" WHERE nev = \'%s\' AND jelszo = \'%s\'\", pName(playerid), Hash(inputtext));
   mysql_query(sql);
   mysql_store_result();
   if(mysql_num_rows() == 0){
      loginwarn[playerid]++;
      if(loginwarn[playerid] == 3){
         mysql_free_result();
         Kick(playerid);
      }
      mysql_free_result();
      ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, \"{\"#ff0000\"}Belépés\",\"{\"#ff0000\"}Hibás jelszó! Próbáld meg mégegyszer! Ha háromszor hibás jelszót adsz meg, ki leszel rúgva a szerverrõl!\",\"Belépés\",\"Kilépés\");
   }else{
       SendClientMessage(playerid, COLOR_EVERLIFE, \"Sikeres belépés!\");
   }
}
}
return 1;
}
// Publicok
stock pName(playerid)
{
new n[MAX_PLAYER_NAME];
GetPlayerName(playerid, n, MAX_PLAYER_NAME);
return n;
}
stock Hash(stri[])
{
new buf[256];
WP_Hash(buf, 256, stri);
return buf;
}
public OnPlayerCommandText(playerid,cmdtext[])
{
return 1;   
}
public OnPlayerSpawn(playerid)
{
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
      return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
   
return 0;
}
public OnGameModeInit()
{
SetGameModeText(\"~  Everlife | BETA ~\");
SendRconCommand(\"hostname EverLifeRPG v2.00 ****|BETA\");   
SendRconCommand(\"mapname ~ EverLife City ~\");   
return 1;
}
public OnPlayerUpdate(playerid)
{
return 1;
}

 
olyan problémát okozhat a mysql kapcsolódás ha nincs létrehozva neki MySQL adatbázis még?
« Utoljára szerkesztve: 2013. augusztus 07. - 13:21:46 írta ZsOltikaa18 »

Nem elérhető ZyZu.

  • Globális moderátor
  • 8939
  • my turbo diesel forum
  • Discord: ZyZu.
    • Profil megtekintése
Egyedi Mod!
« Válasz #1 Dátum: 2013. augusztus 07. - 11:50:43 »
0 Show voters
Ha nincs létrehozva az adatbázisban a táblák akkor normális, hogy a szervered egybõl kifagyik.. egyébként ott van a Debug.txt onnan mindent megtudsz.  ;)

Egyedi Mod!
« Válasz #2 Dátum: 2013. augusztus 07. - 13:17:35 »
0 Show voters
nagyszerû köszönöm szépen a segítséget addig még nem próbáltam ki addig nem kattintok a \"Megoldás\"-ra!

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal