Szerző Téma: Regisztrácio  (Megtekintve 1222 alkalommal)

Regisztrácio
« Dátum: 2014. október 07. - 15:01:09 »
0 Show voters
Tudna valaki linkelni egy egyszerü alap dialogos regisztrácios rendszert,ami jol is müködik,és dinivel ment?Nagyon sokat probálkozok de nem sikerül kapjak egy jot. :( Nagyon megköszönném!Olyan kellene ami ténleg csak alap és lehet böviteni.

Nem elérhető huhboy

  • 894
  • huhboy
    • Profil megtekintése
Regisztrácio
« Válasz #1 Dátum: 2014. október 07. - 15:13:44 »
0 Show voters

Regisztrácio
« Válasz #2 Dátum: 2014. október 07. - 15:26:26 »
0 Show voters
Ez hibás,regisztráláskor beirod a jelszavat,majd mikor másodszorra kell beirni megerosittés képpen,ha nem irsz semmit be is belépik!
Bejelendkezéskor is kod nélkul belépik.
Tudnál más regi rendszert?
« Utoljára szerkesztve: 2014. október 07. - 15:28:50 írta lorantf »

Nem elérhető huhboy

  • 894
  • huhboy
    • Profil megtekintése
Regisztrácio
« Válasz #3 Dátum: 2014. október 07. - 15:41:25 »
0 Show voters
parancsolj..ez saját, egy elkezdet módomnak az eleje...
egy-két módosítás kellhet, de egyébként mûködik..
a scriptfilesba: server.ini
scriptfileson belül Jatekosok mappa
 

#include <a_samp>
#include <dini>
#include <zcmd>
#define Version \"1.0\"
#define Maker \"JustaCube\"
#define web \"phoenix.clans.hu\"
#define PlayerSlot 60
#define ServerFile \"/server.ini\"
#define AccFile \"/Jatekosok/%s.ini\"
new strr[1024],file[128], str[1024];
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
#define KICK_DIALOG 3
 
#define LGreen 0x00ff00AA
#define RED 0xff0000aa
#define Orange 0xff9900AA
 
enum Adatok {
Level,
    Pass[128],
Vip,
Money,
Score,
LoggedIn,
LoginWarn,
Warns,
OnServer
};
new Data[MAX_PLAYERS][Adatok];
main(){}
public OnGameModeInit()
{
print(\"A szerver töltõdik....\");
CheckConfig();
SetGameModeText(dini_Get(ServerFile, \"GameMode\"));
format(str, sizeof(str), \"hostname %s\", dini_Get(ServerFile, \"ServerName\"));
SendRconCommand(str);
format(str, sizeof(str), \"weburl %s\", web);
SendRconCommand(str);
printf(\"A szerver betöltve. Készítõ: %s, Verzió: %s\", Maker, Version);
return 1;
}
public OnPlayerConnect(playerid)
{
RegCheck(playerid);
format(strr, sizeof(strr), \"-==[%s csatlakozott a szerverhez! (%d/%d)]==-\", pName(playerid), GetPlayersOnServer(), PlayerSlot);
SendClientMessageToAll(Orange, strr);
printf(\"%s csatlakozott a szerverhez!(%d/%d)\",pName(playerid),GetPlayersOnServer(), PlayerSlot);
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
SavePlayerData(playerid);
switch(reason)
{
    case 0: format(strr, sizeof(strr), \"-==[%s elhagyta a szervert! (Crash)]==-\", pName(playerid));
    case 1: format(strr, sizeof(strr), \"-==[%s elhagyta a szervert! (Kilépés)]==-\", pName(playerid));
    case 2: format(strr, sizeof(strr), \"-==[%s elhagyta a szervert! (Kick/Ban)]==-\", pName(playerid));
}
SendClientMessageToAll(Orange, strr);
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
format(file, sizeof(file), AccFile, pName(playerid));
if(dialogid == DIALOG_REGISTER)
{
    if(!response) return Kickk(playerid, \"Szerver\", \"Nem regisztrált!\");
    else
if(response)
    {
        if(!strlen(inputtext) || strlen(inputtext) < 4 || strlen(inputtext) > 20)
        {
            format(str, sizeof(str),\"Hibásan adtad meg a jelszavad a regisztrációhoz!\\nA jelszó nem lehet kisebb, mint 3 karakter!\\nKérlek próbáld meg újra a regisztrációt!\");
            ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, \"Regisztráció\", str, \"Regisztráció\", \"Kilép\");
   }
   else
   {
       dini_Create(file);
      dini_IntSet(file, \"Level\", 0);
      dini_Set(file, \"Pass\", inputtext);
      dini_IntSet(file, \"Money\", 0);
      dini_IntSet(file, \"Score\", 0);
      dini_IntSet(file, \"Vip\", 0);
      dini_IntSet(file, \"OnServer\", 1);
      dini_IntSet(ServerFile, \"Regisztraltak\", dini_Int(ServerFile, \"Regisztraltak\") +1);
      SendClientMessage(playerid, LGreen, \"Sikeresen regisztráltál......\");
   }
}
}
if(dialogid == DIALOG_LOGIN)
{
    if(!response)
    {
        if(Data[playerid][LoginWarn] < 3)
        {
            ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", \"Hibásan adtad meg a jelszavad\\nKérlek próbáld meg újra!\", \"Belépés!\", \"Mégse\");
      Data[playerid][LoginWarn]++;
   }else
   if(Data[playerid][LoginWarn] > 2)
   {
       Kickk(playerid, \"Szerver\", \"Sikertelen bejelentkezés\");
   }
}else
if(response)
{
            if(!strcmp(inputtext, Data[playerid][Pass]) && strlen(inputtext) > 2)
    {
        LoginPlayer(playerid);
   }else
   if(Data[playerid][LoginWarn] < 3 || !strlen(inputtext))
        {
            ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", \"{ff0000}Hibásan adtad meg a jelszavad\\nKérlek próbáld meg újra!\", \"Belépés!\", \"Mégse\");
      Data[playerid][LoginWarn]++;
   }else
   if(Data[playerid][LoginWarn] > 2)
   {
       Kickk(playerid, \"Szerver\", \"Sikertelen bejelentkezés\");
   }
}
}
return 1;
}
stock GetPlayersOnServer()
{
new count;
for(new x=0; x< MAX_PLAYERS; x++)
{
if(IsPlayerConnected(x))
{
   count++;
}
}
return count;
}
stock SavePlayerData(playerid)
{
format(file, sizeof(file), AccFile, pName(playerid));
dini_IntSet(file, \"Level\", Data[playerid][Level]);
dini_IntSet(file, \"Score\", Data[playerid][score]);
dini_IntSet(file, \"Money\", Data[playerid][Money]);
dini_IntSet(file, \"Vip\", Data[playerid][Vip]);
return 1;
}
stock LoginPlayer(playerid)
{
format(file, sizeof(file), AccFile, pName(playerid));
Data[playerid][Level] = dini_Int(file, \"Level\");
Data[playerid][Money] = dini_Int(file, \"Money\");
Data[playerid][score] = dini_Int(file, \"Score\");
Data[playerid][Vip]   = dini_Int(file, \"Vip\");
dini_IntSet(file, \"OnServer\", dini_Int(file, \"OnServer\")+1);
    PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
    SendClientMessage(playerid, LGreen, \"Sikeresen bejelentkeztél, Jó játékot!\");
return 1;
}
stock CommandCheck(playerid)
{
if(GetPlayerVirtualWorld(playerid) != 0)
{
    SendClientMessage(playerid, Red, \"Itt nem használható ez a parancs!\");
}
return 0;
}
stock RegCheck(playerid)
{
    format(file, sizeof(file), AccFile, pName(playerid));
if(!dini_Exists(file))
{
    format(str, sizeof(str), \"{00ff00}Üdvözlünk, {ffffff}%s!\\n{00ff00}Jelenlegi IP-d: {ffffff}%s\\n\\n\", pName(playerid), pIp(playerid));
    strcat(strr, str);
    strcat(strr, \"{00ff00}A neved még nincs regisztrálva,\\nÍrj be egy tetszõleges jelszót!\");
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, \"Regisztráció:\", strr, \"Regisztrál!\", \"Kilép\");
}else
{
    format(Data[playerid][Pass], 256, \"%s\", dini_Get(file, \"Pass\"));
    new str2[1024],str3[1024];
    format(str2, sizeof(str2), \"{00ff00}Üdvözlünk, {ffffff}%s!\\n{00ff00}Jelenlegi IP-d: {ffffff}%s\\n\\n\", pName(playerid), pIp(playerid));
    strcat(str3, str2);
    strcat(str3, \"{00ff00}A neved már regisztrálva van,\\nAdd meg a jelszavad a bejelentkezéshez!\");
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, \"Bejelentkezés:\", str3, \"Belépés!\", \"Kilép\");
}
return 1;
}
stock Kickk(playerid, kickker[], indok[])
{
format(strr, sizeof(strr), \"[KICK] {ffffff}%s{ff0000} kickelve lett {ffffff}%s {ff0000}által! [indok: {ffffff}%s{ff0000}]\",pName(playerid), kickker, indok);
SendClientMessageToAll(RED, strr
);
format(str, sizeof(str),\"{ffffff}Kickelve lettél!\\nKickkelõ:{ff0000}%s\\n{ffffff}Indok:{ff0000}%s\\n\\nHa jogtalannak tartod a kickket,\\nírd meg nekünk a fórumon! ({00ff00}%s{ff0000})\", kickker, indok, web);
ShowPlayerDialog(playerid, KICK_DIALOG, DIALOG_STYLE_MSGBOX, \"Kick!\", str, \"Oké\", \"\");
SetTimerEx(\"KickNow\", 100, false, \"i\", playerid);
return 1;
}
forward KickNow(playerid);
public KickNow(playerid)
{
Kick(playerid);
return 0;
}
stock pName(playerid)
{
new name[32];
GetPlayerName(playerid, name, sizeof(name));
return name;
}
stock pIp(playerid)
{
new ip[32];
GetPlayerIp(playerid, ip, sizeof(ip));
return ip;
}
stock CheckConfig()
{
if(dini_Exists(ServerFile))
{
    print(\"A szerver configfájlja létezik, betöltve!\");
}else
{
    dini_Create(ServerFile);
    print(\"A szerver config fájlja nem létezett, létrehozva!\");
}
return 1;
}

Regisztrácio
« Válasz #4 Dátum: 2014. október 07. - 17:58:55 »
0 Show voters
Azért kicsit egyszerübre gondoltam,egyenlöre elég vona a bejelendkezés,és a regisztrácio dialogja is.

Nem elérhető huhboy

  • 894
  • huhboy
    • Profil megtekintése
Regisztrácio
« Válasz #5 Dátum: 2014. október 07. - 18:55:08 »
0 Show voters
egyszerû...ami nem kell, vedd ki...átlátható, amit írtam, nem nehéz kijönni belõle.

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Regisztrácio
« Válasz #6 Dátum: 2014. október 18. - 19:23:58 »
0 Show voters
[gmod]Megkérném a kedves témanyitót hogy ne hanyagolja el a témáját ha már megnyitotta![/gmod]

Regisztrácio
« Válasz #7 Dátum: 2014. október 28. - 21:44:55 »
0 Show voters
if(strlen(inputtext) == 0) return ShowPlayerDialog(playerid,LOGIN_DIALOG,DIALOG_STYLE_PASSWORD\\
   ,\"Bejelentkezés\",\"Nem írtál be jelszavat!\\nÍrd be a jelszavat:\",\"Megvan\",\"Kilépek\");[/pawn]
Nem írtam át a te rendszeredhez, de az első kommentelő linkjének hibája ezzel tökéletesíthető.Remélem segítettem.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal