Szerző Téma: Egy admin rendszerbe regisztráció készítés-HELP  (Megtekintve 912 alkalommal)

Egy admin rendszerbe regisztráció készítés-HELP
« Dátum: 2015. Január 27. - 13:10:28 »
0 Show voters
Sziasztok. Lenne egy admin rendszerem, amibe akarok egy regisztrációs rendszert csinálni.. Próbáltam már mindenhogy, fórumról néztem, stb, de nem megy. Tudnátok nekem bele írni egy kis regisztrációs rendszert? Köszönöm!!!!!
 
#include <a_samp>
#include <dini>
#include <sscanf2>
#include <zcmd>
#define MAX_LEVEL 5
#define COLOR_GREY                0xAFAFAFAA
#define COLOR_ORANGE              0xFF9933AA
 
enum pdata //az adattároló neve
{
       Level,// A szint értéke
       Death,//A halálok száma
       MONEY,//A pénz értéke
       Score //A pont értéke
}
new PlayerInfo[MAX_PLAYERS][pdata];
public OnFilterScriptInit()
{
        return 1;
}
public OnFilterScriptExit()
{
        return 1;
}
public OnPlayerConnect(playerid)
{
        new string[128],name[MAX_PLAYER_NAME];
        GetPlayerName(playerid,name,sizeof(name));
        format(string,sizeof(string),\"nAdmin/%s.ini\",name);
        if(dini_Exists(string))
        {
                PlayerInfo[playerid][Level] = dini_Int(string,\"Level\");
                PlayerInfo[playerid][Death] = dini_Int(string,\"Halalok\");
                GivePlayerMoney(playerid,dini_Int(string,\"Penz\"));
                SetPlayerScore(playerid,dini_Int(string,\"Pont\"));
}
        else
        {
            dini_Create(string);
           
        }
        return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
        new string[128],name[MAX_PLAYER_NAME];
        GetPlayerName(playerid,name,sizeof(name));
        format(string,sizeof(string),\"nAdmin/%s.ini\",name);
        if(dini_Exists(string))
        {
            dini_IntSet(string,\"Szint\",PlayerInfo[playerid][Level]);
            dini_IntSet(string,\"Halalok\",PlayerInfo[playerid][Death]);
            dini_IntSet(string,\"Penz\",GetPlayerMoney(playerid));
            dini_IntSet(string,\"Pont\",GetPlayerScore(playerid));
        }
        return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
        PlayerInfo[playerid][Death]++; //növeltük az értéket 1-el.
        return 1;
}
CMD:setlevel(playerid,params[])
{
        new playerid2,level;
        if(sscanf(params,\"id\",playerid2,level)) return SendClientMessage(playerid,-1,\"HASZNÁLAT: /setlevel [játékosid] [szint 0-5]\");
        if(playerid2 == INVALID_PLAYER_ID)return SendClientMessage(playerid,-1,\"Rossz játékos ID\");
        if(level < 0 || level > 5)return SendClientMessage(playerid,-1,\"HASZNÁLAT: /setlevel [játékosid] [szint 0-5]\");
        if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,-1,\"{AFAFAF}A parancs használatához {FF9933}rCon {AFAFAF}adminnak kell lenned.\");
        PlayerInfo[playerid2][Level] = level;
        SendClientMessage(playerid,-1,\"{AFAFAF}Sikeresen átállítottad az {FF9933}admin {FF9933}szintjét!\");
       SendClientMessage(playerid2,-1,\"{AFAFAF}Sikeresen át lett állítva az {FF9933}admin {AFAFAF}szinted!\");
        return 1;
}
« Utoljára szerkesztve: 2015. Január 27. - 13:24:02 írta ƒlaﻛh »

Egy admin rendszerbe regisztráció készítés-HELP
« Válasz #1 Dátum: 2015. Február 17. - 09:01:59 »
0 Show voters
#include <a_samp>
#include <dini>
#include <sscanf2>
#include <zcmd>
#define MAX_LEVEL 5
#define COLOR_GREY                0xAFAFAFAA
#define COLOR_ORANGE              0xFF9933AA
new File[128];
new PW[64];
new WPW[MAX_PLAYERS];
main();
enum pdata //az adattároló neve
{
       Level,// A szint értéke
       Death,//A halálok száma
       MONEY,//A pénz értéke
       Score //A pont értéke
}
new PlayerInfo[MAX_PLAYERS][pdata];
public OnFilterScriptInit()
{
        return 1;
}
public OnFilterScriptExit()
{
        return 1;
}
public OnPlayerConnect(playerid)
{
format(File, sizeof(File), \"User/%s.ini\", Nev(playerid));
       
        if(!fexist(File))
        {
            ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, \"Regisztráció\", \"Írj be egy tetszőleges jelszót!\", \"Oké\", \"Mégse\");
        }
        else
        {
            ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, \"Belépés\", \"Írd be a jelszavad!\", \"Rendben\", \"Mégse\");
        }
        return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
        if(dialogid == 1)
        {
           if(!response) Kick(playerid);
            if(strlen(inputtext) == 0)
             {
                 ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, \"Regisztráció\", \"Írj be egy tetszoleges jelszót!\", \"Rendben\", \"Mégsem\");
                return 0;
              }
              format(File, sizeof(File), \"User/%s.ini\", Nev(playerid));
              if(!fexist(File))
            {
               dini_Create(File);
                dini_Set(File, \"Pasword\", inputtext);
                PlayerInfo[playerid][Level] = dini_Int(File,\"Level\");
                PlayerInfo[playerid][Death] = dini_Int(File,\"Halalok\");
                GivePlayerMoney(playerid,dini_Int(File,\"Penz\"));
                SetPlayerScore(playerid,dini_Int(File,\"Pont\"));
                 ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, \"Belépés\", \"Írd be a jelszavad.\", \"Rendben\", \"Mégsem\");
            }
        }
        if(dialogid == 2)
        {
           format(File, sizeof(File), \"User/%s.ini\", Nev(playerid));
            if(!response)
           {
               Kick(playerid);
            }
             format(PW, 64, \"%s\", dini_Get(File, \"Pasword\"));
            if(!strcmp(inputtext, PW, false))
            {
               SendClientMessage(playerid, -1, \"Sikeres belépés! Nyomj a \'SPAWN\' gombra!\");
              }
            else
            {
               WPW[playerid] ++;
      SendClientMessage(playerid, -1, \"Rossz jelszó!\");
      if(WPW[playerid] == 3)
      {
         Kick(playerid);
              }
              ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, \"Belépés\", \"Írd be a jelszavad\", \"Oké\", \"Mégse\");
           }
        }
        return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
        new string[128],name[MAX_PLAYER_NAME];
        GetPlayerName(playerid,name,sizeof(name));
        format(string,sizeof(string),\"User/%s.ini\",name);
        if(dini_Exists(string))
        {
            dini_IntSet(string,\"Szint\",PlayerInfo[playerid][Level]);
            dini_IntSet(string,\"Halalok\",PlayerInfo[playerid][Death]);
            dini_IntSet(string,\"Penz\",GetPlayerMoney(playerid));
            dini_IntSet(string,\"Pont\",GetPlayerScore(playerid));
        }
        return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
        PlayerInfo[playerid][Death]++; //növeltük az értéket 1-el.
        return 1;
}
CMD:setlevel(playerid,params[])
{
        new playerid2,level;
        if(sscanf(params,\"id\",playerid2,level)) return SendClientMessage(playerid,-1,\"HASZNÁLAT: /setlevel [játékosid] [szint 0-5]\");
        if(playerid2 == INVALID_PLAYER_ID)return SendClientMessage(playerid,-1,\"Rossz játékos ID\");
        if(level < 0 || level > 5)return SendClientMessage(playerid,-1,\"HASZNÁLAT: /setlevel [játékosid] [szint 0-5]\");
        if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,-1,\"{AFAFAF}A parancs használatához {FF9933}rCon {AFAFAF}adminnak kell lenned.\");
        PlayerInfo[playerid2][Level] = level;
        SendClientMessage(playerid,-1,\"{AFAFAF}Sikeresen átállítottad az {FF9933}admin {FF9933}szintjét!\");
        SendClientMessage(playerid2,-1,\"{AFAFAF}Sikeresen át lett állítva az {FF9933}admin {AFAFAF}szinted!\");
        return 1;
}
 
stock Nev(playerid)
{
        new Neve[MAX_PLAYER_NAME];
        GetPlayerName(playerid, Neve, sizeof(Neve));
        return Neve;
}

 
Teszteltem, nálam jó volt, és mindent mentett. Remélem tetszik! :)
« Utoljára szerkesztve: 2015. Február 17. - 09:03:54 írta Andriis »

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Egy admin rendszerbe regisztráció készítés-HELP
« Válasz #2 Dátum: 2015. Február 20. - 13:46:38 »
0 Show voters
[gmod]Ha megoldódott a problémád, kérlek zárd a témát! :)[/gmod]

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal