Szerző Téma: Regisztrációs rendszer  (Megtekintve 650 alkalommal)

Regisztrációs rendszer
« Dátum: 2017. Január 14. - 17:43:23 »
0
Sziasztok! Létrehoztam egy regisztrációs rendszer, de amikor belépek ( létre van hozva a scriptfiles mappában a karakterek nevű mappa ) akkor regisztrálok elvileg, de nem hozza létre a file-t, nem menti le, amikor kilépek, utána bármilyen jelszóval betudok lépni. ( bejelentkezést kidobja, bármit beírok jó. )
 

// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT
#include <a_samp>
#include <dini>
#include <dubd>
#include <sscanf>
#include <zcmd>
enum JatekosAdatok
{
    Penz,
    Admin
}
new JatekosInfo[MAX_PLAYERS][JatekosAdatok];
new nev[MAX_PLAYER_NAME];
// Regisztráció 0
// Bejelentkezés 1
public OnGameModeInit()
{
    // Don\'t use these lines if it\'s a filterscript
    SetGameModeText(\"Blank Script\");
    AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
    return 1;
}
public OnGameModeExit()
{
    return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
    SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
    new file[256];
    new string[256];
    GetPlayerName(playerid,nev,sizeof(nev));
    format(file, sizeof(file), \"/Karakterek/%s.ini\", nev);
    if(!fexist(file))
    {
        format(string,sizeof string, \"Üdv %s \\nKérjük regisztrálj \\n\\nAdd meg a kívánt jelszavadat!\", nev);
        ShowPlayerDialog(playerid, 0, DIALOG_STYLE_PASSWORD, \"Regisztráció\", string, \"Regisztráció\", \"Kilépés\");
    }
    if(!fexist(file))
    {
        format(string,sizeof string, \"Üdv %s \\nKérjük jelentkezz be! \\n\\nAdd meg a jelszavadat!\", nev);
        ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", string, \"Bejelentkezés\", \"Kilépés\");
    }
    return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if (dialogid == 0)
    {
        if(response)
        {
            new file[128];
            new string[128];
           
            GetPlayerName(playerid,nev,sizeof(nev));
            if(strlen(inputtext) == 0)
            {
                format(string,sizeof string, \"Üdv %s \\nKérjük regisztrálj \\n\\nAdd meg a kívánt jelszavadat!\", nev);
                ShowPlayerDialog(playerid, 0, DIALOG_STYLE_PASSWORD, \"Regisztráció\", string, \"Regisztráció\", \"Kilépés\");
                return 0;
            }
            format(file,sizeof(file), \"/Karakterek/%s.ini\", nev);
            if(!fexist(file))
            {
                dini_Create(file);
                dini_IntSet(file, \"Antibug\", 0);
                dini_Set(file, \"Jelszo\", inputtext);
                dini_IntSet(file, \"Penz\", 0);
                dini_IntSet(file, \"Admin\", 0);
               
                format(string,sizeof string, \"Üdv %s \\nRegisztrálva vagy! \\n\\nKérjük add meg a jelszavad!\", nev);
                ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", string, \"Bejelentkezés\", \"Kilépés\");
            }
            else
            {
                format(string,sizeof string, \"Üdv %s \\nRegisztrálva vagy! \\n\\nKérjük add meg a jelszavad!\", nev);
                ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", string, \"Bejelentkezés\", \"Kilépés\");
            }
        }
    }
    if(dialogid == 1)
    {
          if(response)
          {
              new file[128];
            new string[128];
            GetPlayerName(playerid,nev,sizeof(nev));
            if(strlen(inputtext) == 0)
            {
                format(string,sizeof string, \"Üdv %s \\nKérjük jelentkezz be! \\n\\nAdd meg a jelszavadat!\", nev);
                ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", string, \"Bejelentkezés\", \"Kilépés\");
            }
            format(file,sizeof(file), \"/Karakterek/%s.ini\", nev);
            if(!fexist(file))
            {
                new jelszo[200];
                format(jelszo,sizeof(jelszo), \"%s\", dini_Get(file, \"Jelszo\"));
                if(strcmp(inputtext, jelszo) == 0)
                {
                    JatekosInfo[playerid][Penz] = dini_Int(file,\"Penz\");
                    JatekosInfo[playerid][Admin] = dini_Int(file,\"Admin\");
                }
                else
                {
                    SendClientMessage(playerid, -1, \"Hibás jelszó!\");
                    Kick(playerid);
                }
            }
        }
    }
    return 1;
}

 
 
 
Illetve ezek a warningok miért vannak? 
 

C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(274) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(275) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(276) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(277) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(278) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(279) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(280) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(281) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(282) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(283) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(284) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(285) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(286) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(287) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(288) : warning 202: number of arguments does not match definition
C:\\Users\\Martin\\Desktop\\pawno\\include\\dubd.inc(289) : warning 202: number of arguments does not match definition

 
 
« Utoljára szerkesztve: 2017. Január 14. - 19:11:06 írta Gh0st »

Nem elérhető wRt

Regisztrációs rendszer
« Válasz #1 Dátum: 2017. Január 14. - 19:56:58 »
0
A játékos csatlakozásakor kétszer vizsgálod meg ugyan ezt a dolgot, teljesen feleslegesen, ráadásul értelme sincs.
 

if(!fexist(file))
{
    format(string,sizeof string, \"Üdv %s \\nKérjük regisztrálj \\n\\nAdd meg a kívánt jelszavadat!\", nev);
    ShowPlayerDialog(playerid, 0, DIALOG_STYLE_PASSWORD, \"Regisztráció\", string, \"Regisztráció\", \"Kilépés\");
}
if(!fexist(file))
{
    format(string,sizeof string, \"Üdv %s \\nKérjük jelentkezz be! \\n\\nAdd meg a jelszavadat!\", nev);
    ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", string, \"Bejelentkezés\", \"Kilépés\");
}

 
helyett
 

if(!fexist(file))
{
    format(string,sizeof string, \"Üdv %s \\nKérjük regisztrálj \\n\\nAdd meg a kívánt jelszavadat!\", nev);
    ShowPlayerDialog(playerid, 0, DIALOG_STYLE_PASSWORD, \"Regisztráció\", string, \"Regisztráció\", \"Kilépés\");
}
else
{
    format(string,sizeof string, \"Üdv %s \\nKérjük jelentkezz be! \\n\\nAdd meg a jelszavadat!\", nev);
    ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", string, \"Bejelentkezés\", \"Kilépés\");
}

 
A warningokat viszont így nem tudom mi okozza, elküldenéd, hogy melyik sorokra mutatnak?

Regisztrációs rendszer
« Válasz #2 Dátum: 2017. Január 14. - 20:20:22 »
0

           format(file,sizeof(file), \"/karakterek/%s.ini\", nev);
            if(!fexist(file))
            {
                new jelszo[200];
                format(jelszo,sizeof(jelszo), \"%s\", dini_Get(file, \"Jelszo\"));
                if(strcmp(inputtext, jelszo) == 0)
                {
                    JatekosInfo[playerid][Penz] = dini_Int(file,\"Penz\");
                    JatekosInfo[playerid][Admin] = dini_Int(file,\"Admin\");
                }
                else
                {
                    SendClientMessage(playerid, -1, \"Hibás jelszó!\");
                    Kick(playerid);
                }
            }
        }


 
Kijavítottam, létrehozza az ini fájlt, de amikor bejelentkezek tök mindegy milyen jelszót írok be, akkor is bedob.
 
 
« Utoljára szerkesztve: 2017. Január 15. - 07:23:33 írta xerox0224 »

Regisztrációs rendszer
« Válasz #3 Dátum: 2017. Január 22. - 09:34:07 »
0

#include <a_samp>
#include <dini>
#include <sscanf>
#include <zcmd>
enum JatekosAdatok
{
    Penz,
    Admin
}
new JatekosInfo[MAX_PLAYERS][JatekosAdatok];
new nev[MAX_PLAYER_NAME];
// Regisztráció 0
// Bejelentkezés 1
public OnFilterScriptInit() return 1;
public OnFilterScriptExit() return 1;
public OnPlayerRequestClass(playerid, classid)
{
    new file[256];
    new string[256];
    GetPlayerName(playerid,nev,sizeof(nev));
    format(file, sizeof(file), \"/Karakterek/%s.ini\", nev);
    if(!fexist(file))
    {
        format(string,sizeof string, \"Üdv %s \\nKérjük regisztrálj \\n\\nAdd meg a kívánt jelszavadat!\", nev);
        ShowPlayerDialog(playerid, 0, DIALOG_STYLE_PASSWORD, \"Regisztráció\", string, \"Regisztráció\", \"Kilépés\");
    }
    else if(fexist(file))
    {
        format(string,sizeof string, \"Üdv %s \\nKérjük jelentkezz be! \\n\\nAdd meg a jelszavadat!\", nev);
        ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", string, \"Bejelentkezés\", \"Kilépés\");
    }
    return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    new file[128];
    new string[128];
    GetPlayerName(playerid,nev,sizeof(nev));
    format(file,sizeof(file), \"/Karakterek/%s.ini\", nev);
    if (dialogid == 0)
    {
        if(response)
        {
            if(!strlen(inputtext))
            {
                format(string,sizeof string, \"Üdv %s \\nKérjük regisztrálj \\n\\nAdd meg a kívánt jelszavadat!\", nev);
                ShowPlayerDialog(playerid, 0, DIALOG_STYLE_PASSWORD, \"Regisztráció\", string, \"Regisztráció\", \"Kilépés\");
                return 0;
            }
            if(!fexist(file))
            {
                dini_Create(file);
                dini_IntSet(file, \"Antibug\", 0);
                dini_Set(file, \"Jelszo\", inputtext);
                dini_IntSet(file, \"Penz\", 0);
                dini_IntSet(file, \"Admin\", 0);
                format(string,sizeof string, \"Üdv %s \\nRegisztrálva vagy! \\n\\nKérjük add meg a jelszavad!\", nev);
                ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", string, \"Bejelentkezés\", \"Kilépés\");
            }
            else
            {
                format(string,sizeof string, \"Üdv %s \\nRegisztrálva vagy! \\n\\nKérjük add meg a jelszavad!\", nev);
                ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", string, \"Bejelentkezés\", \"Kilépés\");
            }
        }
    }
    if(dialogid == 1)
    {
          if(response)
          {
            if(!strlen(inputtext))
            {
                format(string,sizeof string, \"Üdv %s \\nKérjük jelentkezz be! \\n\\nAdd meg a jelszavadat!\", nev);
                ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, \"Bejelentkezés\", string, \"Bejelentkezés\", \"Kilépés\");
            }
            if(fexist(file))
            {
                new jelszo[200];
                format(jelszo,sizeof(jelszo), \"%s\", dini_Get(file, \"Jelszo\"));
                if(strcmp(inputtext, jelszo) == 0)
                {
                    JatekosInfo[playerid][Penz] = dini_Int(file,\"Penz\");
                    JatekosInfo[playerid][Admin] = dini_Int(file,\"Admin\");
                }
                else
                {
                    SendClientMessage(playerid, -1, \"Hibás jelszó!\");
                    Kick(playerid);
                }
            }
        }
    }
    return 1;
}

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal