SA-MP Forums Archive
login register problem - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: login register problem (/showthread.php?tid=622921)



login register problem - GabiXx - 27.11.2016

I get this error on starting server. http://imgur.com/a/9DZ7Z
I use this.
PHP код:
#include <a_samp>
#include <sscanf2>
#include <zcmd>
#include <YSI\y_ini>
main( ) { }
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
#define DIALOG_SUCCESS_1 3
#define DIALOG_SUCCESS_2 4
#define COL_WHITE "{FFFFFF}"
#define COL_RED "{F81414}"
#define COL_GREEN "{00FF22}"
#define COL_LIGHTBLUE "{00CED1}"
#define PATH "/Users/%s.ini"
enum pInfo
{
    
pPass,
    
pCash,
    
pAdmin,
    
pKills,
    
pDeaths,
    
pSkin
}
new 
PlayerInfo[MAX_PLAYERS][pInfo];
forward LoadUser_data(playerid,name[],value[]);
public 
LoadUser_data(playerid,name[],value[])
{
    
INI_Int("Password",PlayerInfo[playerid][pPass]);
    
INI_Int("Cash",PlayerInfo[playerid][pCash]);
    
INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
    
INI_Int("Kills",PlayerInfo[playerid][pKills]);
    
INI_Int("Deaths",PlayerInfo[playerid][pDeaths]);
    return 
1;
}
stock UserPath(playerid)
{
    new 
string[128],playername[MAX_PLAYER_NAME];
    
GetPlayerName(playerid,playername,sizeof(playername));
    
format(string,sizeof(string),PATH,playername);
    return 
string;
}
stock udb_hash(buf[]) {
    new 
length=strlen(buf);
    new 
s1 1;
    new 
s2 0;
    new 
n;
    for (
n=0n<lengthn++)
    {
       
s1 = (s1 buf[n]) % 65521;
       
s2 = (s2 s1)     % 65521;
    }
    return (
s2 << 16) + s1;
}
public 
OnGameModeInit()
{
    
SetGameModeText("Girvinmode");
    
DisableInteriorEnterExits();
    
UsePlayerPedAnims();
    
AddStaticVehicle(405,1280.1495,-1292.5573,13.1545,90.5277,1,1); // Sentinel
    
AddStaticVehicle(410,1281.3601,-1383.1337,13.1312,90.2541,2,1); // Manana
    
AddStaticVehicle(426,1281.3218,-1363.8834,13.1479,89.5308,3,96); // Premier
    
AddStaticVehicle(429,1281.0326,-1312.9939,13.1839,89.4532,4,1); // Banshee
    
AddStaticVehicle(481,1272.7340,-1321.6632,13.3071,180.5797,5,96); // masina5
    
AddStaticVehicle(481,1272.6222,-1353.7826,13.3183,359.2056,6,96); // masina6
    
AddStaticVehicle(462,1282.5690,-1374.6877,12.8680,84.3409,7,0); // scuter
    
AddStaticVehicle(462,1282.1868,-1304.3948,12.8941,84.6293,8,9); // scuter2
    
return 1;
}
public 
OnPlayerConnect(playerid)
{
    if(
fexist(UserPath(playerid)))
    {
        
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra true, .extra playerid);
        
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_WHITE"Scrie-ti parola pentru a te loga.","Login","Quit");
    }
    else
    {
        
ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_INPUT,""COL_WHITE"Registering...",""COL_WHITE"Scrie o parola pentru a te inregistra.","Register","Quit");
    }
    return 
1;
}
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    switch( 
dialogid )
    {
        case 
DIALOG_REGISTER:
        {
            if (!
response) return Kick(playerid);
            if(
response)
            {
                if(!
strlen(inputtext)) return ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_INPUT""COL_WHITE"Registering...",""COL_RED"Ai introdus o parola gresita.\n"COL_WHITE"Scrie o parola pentru a te inregistra.","Register","Quit");
                new 
INI:File INI_Open(UserPath(playerid));
                
INI_SetTag(File,"data");
                
INI_WriteInt(File,"Password",udb_hash(inputtext));
                
INI_WriteInt(File,"Cash",0);
                
INI_WriteInt(File,"Admin",0);
                
INI_WriteInt(File,"Kills",0);
                
INI_WriteInt(File,"Deaths",0);
                
INI_WriteInt(File,"Skin",0);
                
INI_Close(File);
                
SetSpawnInfo(playerid170,0,1283.5896,-1329.5938,13.3824,89.6460,0,0,0,0,0,0);
                
SpawnPlayer(playerid);
            }
        }
        case 
DIALOG_LOGIN:
        {
            if ( !
response ) return Kick playerid );
            if( 
response )
            {
                if(
udb_hash(inputtext) == PlayerInfo[playerid][pPass])
                {
                    
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra true, .extra playerid);
                    
GivePlayerMoney(playeridPlayerInfo[playerid][pCash]);
                    
ShowPlayerDialog(playeridDIALOG_SUCCESS_2DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"Te-ai logat cu succes!","Ok","");
                }
                else
                {
                    
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"Ai introdus o parola gresita.\n"COL_WHITE"Scrie parola mai jos pentru a te loga.","Login","Quit");
                }
                return 
1;
            }
        }
    }
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason)
{
    new 
INI:File INI_Open(UserPath(playerid));
    
INI_SetTag(File,"data");
    
INI_WriteInt(File,"Cash",GetPlayerMoney(playerid));
    
INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
    
INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]);
    
INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]);
    
INI_WriteInt(File,"Skin",GetPlayerMoney(playerid));
    
INI_Close(File);
    return 
1;

In setspawninfo i set skin 170, but when i spawn i get skin 0.
And i want to know what to do to when a player register, get 10.000$.


Re: login register problem - StrikerZ - 28.11.2016

Create "Users" folder in script files and for money use
PHP код:
GivePlayerMoney(playerid,[amount of money]); 
and you get 0 skin because you set it to 0 and 170 as the team. https://sampwiki.blast.hk/wiki/SetSpawnInfo


Re: login register problem - SkyFlare - 28.11.2016

Код:
#include <a_samp> 
#include <sscanf2> 
#include <zcmd> 
#include <YSI\y_ini> 

main( ) { } 

#define DIALOG_REGISTER 1 
#define DIALOG_LOGIN 2 
#define DIALOG_SUCCESS_1 3 
#define DIALOG_SUCCESS_2 4 
#define COL_WHITE "{FFFFFF}" 
#define COL_RED "{F81414}" 
#define COL_GREEN "{00FF22}" 
#define COL_LIGHTBLUE "{00CED1}" 
#define PATH "/Users/%s.ini" 

enum pInfo 
{ 
    pPass, 
    pCash, 
    pAdmin, 
    pKills, 
    pDeaths, 
    pSkin 
} 
new PlayerInfo[MAX_PLAYERS][pInfo]; 

forward LoadUser_data(playerid,name[],value[]); 
public LoadUser_data(playerid,name[],value[]) 
{ 
    INI_Int("Password",PlayerInfo[playerid][pPass]); 
    INI_Int("Cash",PlayerInfo[playerid][pCash]); 
    INI_Int("Admin",PlayerInfo[playerid][pAdmin]); 
    INI_Int("Kills",PlayerInfo[playerid][pKills]); 
    INI_Int("Deaths",PlayerInfo[playerid][pDeaths]); 
    return 1; 
} 

stock UserPath(playerid) 
{ 
    new string[128],playername[MAX_PLAYER_NAME]; 
    GetPlayerName(playerid,playername,sizeof(playername)); 
    format(string,sizeof(string),PATH,playername); 
    return string; 
} 

stock udb_hash(buf[]) { 
    new length=strlen(buf); 
    new s1 = 1; 
    new s2 = 0; 
    new n; 
    for (n=0; n<length; n++) 
    { 
       s1 = (s1 + buf[n]) % 65521; 
       s2 = (s2 + s1)     % 65521; 
    } 
    return (s2 << 16) + s1; 
} 

public OnGameModeInit() 
{ 
    SetGameModeText("Girvinmode"); 
    DisableInteriorEnterExits(); 
    UsePlayerPedAnims(); 
    AddStaticVehicle(405,1280.1495,-1292.5573,13.1545,90.5277,1,1); // Sentinel 
    AddStaticVehicle(410,1281.3601,-1383.1337,13.1312,90.2541,2,1); // Manana 
    AddStaticVehicle(426,1281.3218,-1363.8834,13.1479,89.5308,3,96); // Premier 
    AddStaticVehicle(429,1281.0326,-1312.9939,13.1839,89.4532,4,1); // Banshee 
    AddStaticVehicle(481,1272.7340,-1321.6632,13.3071,180.5797,5,96); // masina5 
    AddStaticVehicle(481,1272.6222,-1353.7826,13.3183,359.2056,6,96); // masina6 
    AddStaticVehicle(462,1282.5690,-1374.6877,12.8680,84.3409,7,0); // scuter 
    AddStaticVehicle(462,1282.1868,-1304.3948,12.8941,84.6293,8,9); // scuter2 
    return 1; 
} 

public OnPlayerConnect(playerid) 
{ 
    if(fexist(UserPath(playerid))) 
    { 
        INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid); 
        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_WHITE"Scrie-ti parola pentru a te loga.","Login","Quit"); 
    } 
    else 
    { 
        ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,""COL_WHITE"Registering...",""COL_WHITE"Scrie o parola pentru a te inregistra.","Register","Quit"); 
    } 
    return 1; 
} 

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) 
{ 
    switch( dialogid ) 
    { 
        case DIALOG_REGISTER: 
        { 
            if (!response) return Kick(playerid); 
            if(response) 
            { 
                if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""COL_WHITE"Registering...",""COL_RED"Ai introdus o parola gresita.\n"COL_WHITE"Scrie o parola pentru a te inregistra.","Register","Quit"); 
                new INI:File = INI_Open(UserPath(playerid)); 
                INI_SetTag(File,"data"); 
                INI_WriteInt(File,"Password",udb_hash(inputtext)); 
                INI_WriteInt(File,"Cash",10000); 
                INI_WriteInt(File,"Admin",0); 
                INI_WriteInt(File,"Kills",0); 
                INI_WriteInt(File,"Deaths",0); 
                INI_WriteInt(File,"Skin",170); 
                INI_Close(File); 

                SetSpawnInfo(playerid, 170,0,1283.5896,-1329.5938,13.3824,89.6460,0,0,0,0,0,0); 
                SpawnPlayer(playerid); 
            } 
        } 

        case DIALOG_LOGIN: 
        { 
            if ( !response ) return Kick ( playerid ); 
            if( response ) 
            { 
                if(udb_hash(inputtext) == PlayerInfo[playerid][pPass]) 
                { 
                    INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid); 
                    GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
                    SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
                    ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"Te-ai logat cu succes!","Ok",""); 
                } 
                else 
                { 
                    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"Ai introdus o parola gresita.\n"COL_WHITE"Scrie parola mai jos pentru a te loga.","Login","Quit"); 
                } 
                return 1; 
            } 
        } 
    } 
    return 1; 
} 

public OnPlayerDisconnect(playerid, reason) 
{ 
    new INI:File = INI_Open(UserPath(playerid)); 
    INI_SetTag(File,"data"); 
    INI_WriteInt(File,"Cash",GetPlayerMoney(playerid)); 
    INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]); 
    INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]); 
    INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]); 
    INI_WriteInt(File,"Skin",GetPlayerSkin(playerid)); 
    INI_Close(File); 
    return 1; 
}
Your skin setting on disconnect was saving cash and you did not define at the top how much of each value to set.
Код:
INI_WriteInt(File,"Cash",10000); 
INI_WriteInt(File,"Skin",170);



Re: login register problem - StrikerZ - 28.11.2016

Quote:
Originally Posted by SkyFlare
Посмотреть сообщение
Код:
#include <a_samp> 
#include <sscanf2> 
#include <zcmd> 
#include <YSI\y_ini> 

main( ) { } 

#define DIALOG_REGISTER 1 
#define DIALOG_LOGIN 2 
#define DIALOG_SUCCESS_1 3 
#define DIALOG_SUCCESS_2 4 
#define COL_WHITE "{FFFFFF}" 
#define COL_RED "{F81414}" 
#define COL_GREEN "{00FF22}" 
#define COL_LIGHTBLUE "{00CED1}" 
#define PATH "/Users/%s.ini" 

enum pInfo 
{ 
    pPass, 
    pCash, 
    pAdmin, 
    pKills, 
    pDeaths, 
    pSkin 
} 
new PlayerInfo[MAX_PLAYERS][pInfo]; 

forward LoadUser_data(playerid,name[],value[]); 
public LoadUser_data(playerid,name[],value[]) 
{ 
    INI_Int("Password",PlayerInfo[playerid][pPass]); 
    INI_Int("Cash",PlayerInfo[playerid][pCash]); 
    INI_Int("Admin",PlayerInfo[playerid][pAdmin]); 
    INI_Int("Kills",PlayerInfo[playerid][pKills]); 
    INI_Int("Deaths",PlayerInfo[playerid][pDeaths]); 
    return 1; 
} 

stock UserPath(playerid) 
{ 
    new string[128],playername[MAX_PLAYER_NAME]; 
    GetPlayerName(playerid,playername,sizeof(playername)); 
    format(string,sizeof(string),PATH,playername); 
    return string; 
} 

stock udb_hash(buf[]) { 
    new length=strlen(buf); 
    new s1 = 1; 
    new s2 = 0; 
    new n; 
    for (n=0; n<length; n++) 
    { 
       s1 = (s1 + buf[n]) % 65521; 
       s2 = (s2 + s1)     % 65521; 
    } 
    return (s2 << 16) + s1; 
} 

public OnGameModeInit() 
{ 
    SetGameModeText("Girvinmode"); 
    DisableInteriorEnterExits(); 
    UsePlayerPedAnims(); 
    AddStaticVehicle(405,1280.1495,-1292.5573,13.1545,90.5277,1,1); // Sentinel 
    AddStaticVehicle(410,1281.3601,-1383.1337,13.1312,90.2541,2,1); // Manana 
    AddStaticVehicle(426,1281.3218,-1363.8834,13.1479,89.5308,3,96); // Premier 
    AddStaticVehicle(429,1281.0326,-1312.9939,13.1839,89.4532,4,1); // Banshee 
    AddStaticVehicle(481,1272.7340,-1321.6632,13.3071,180.5797,5,96); // masina5 
    AddStaticVehicle(481,1272.6222,-1353.7826,13.3183,359.2056,6,96); // masina6 
    AddStaticVehicle(462,1282.5690,-1374.6877,12.8680,84.3409,7,0); // scuter 
    AddStaticVehicle(462,1282.1868,-1304.3948,12.8941,84.6293,8,9); // scuter2 
    return 1; 
} 

public OnPlayerConnect(playerid) 
{ 
    if(fexist(UserPath(playerid))) 
    { 
        INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid); 
        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_WHITE"Scrie-ti parola pentru a te loga.","Login","Quit"); 
    } 
    else 
    { 
        ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,""COL_WHITE"Registering...",""COL_WHITE"Scrie o parola pentru a te inregistra.","Register","Quit"); 
    } 
    return 1; 
} 

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) 
{ 
    switch( dialogid ) 
    { 
        case DIALOG_REGISTER: 
        { 
            if (!response) return Kick(playerid); 
            if(response) 
            { 
                if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""COL_WHITE"Registering...",""COL_RED"Ai introdus o parola gresita.\n"COL_WHITE"Scrie o parola pentru a te inregistra.","Register","Quit"); 
                new INI:File = INI_Open(UserPath(playerid)); 
                INI_SetTag(File,"data"); 
                INI_WriteInt(File,"Password",udb_hash(inputtext)); 
                INI_WriteInt(File,"Cash",10000); 
                INI_WriteInt(File,"Admin",0); 
                INI_WriteInt(File,"Kills",0); 
                INI_WriteInt(File,"Deaths",0); 
                INI_WriteInt(File,"Skin",170); 
                INI_Close(File); 

                SetSpawnInfo(playerid, 170,0,1283.5896,-1329.5938,13.3824,89.6460,0,0,0,0,0,0); 
                SpawnPlayer(playerid); 
            } 
        } 

        case DIALOG_LOGIN: 
        { 
            if ( !response ) return Kick ( playerid ); 
            if( response ) 
            { 
                if(udb_hash(inputtext) == PlayerInfo[playerid][pPass]) 
                { 
                    INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid); 
                    GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
                    SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
                    ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"Te-ai logat cu succes!","Ok",""); 
                } 
                else 
                { 
                    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"Ai introdus o parola gresita.\n"COL_WHITE"Scrie parola mai jos pentru a te loga.","Login","Quit"); 
                } 
                return 1; 
            } 
        } 
    } 
    return 1; 
} 

public OnPlayerDisconnect(playerid, reason) 
{ 
    new INI:File = INI_Open(UserPath(playerid)); 
    INI_SetTag(File,"data"); 
    INI_WriteInt(File,"Cash",GetPlayerMoney(playerid)); 
    INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]); 
    INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]); 
    INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]); 
    INI_WriteInt(File,"Skin",GetPlayerSkin(playerid)); 
    INI_Close(File); 
    return 1; 
}
Your skin setting on disconnect was saving cash and you did not define at the top how much of each value to set.
Код:
INI_WriteInt(File,"Cash",10000); 
INI_WriteInt(File,"Skin",170);
You are wrong. Writing cash and skin values won't change his money and skin. He has to use giveplayermoney and in setspawninfo the 3rd one is for skin and 2nd for team. He set his skin to 0 and team to 170. And on player disconnect the values will be written by getting his skin and money so no need of writing the values on register. Setting as 0 will work. And for the skin please read the use of setspawninfo https://sampwiki.blast.hk/wiki/SetSpawnInfo


Re: login register problem - GabiXx - 28.11.2016

Now i change some thing here
But i don't get the skin i want (170). I get the money.Ty
PHP код:
#include <a_samp>
#include <sscanf2>
#include <zcmd>
#include <YSI\y_ini>
main( ) { }
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
#define DIALOG_SUCCESS_1 3
#define DIALOG_SUCCESS_2 4
#define COL_WHITE "{FFFFFF}"
#define COL_RED "{F81414}"
#define COL_GREEN "{00FF22}"
#define COL_LIGHTBLUE "{00CED1}"
#define PATH "/Users/%s.ini"
enum pInfo
{
    
pPass,
    
pCash,
    
pAdmin,
    
pKills,
    
pDeaths,
    
pSkin
}
new 
PlayerInfo[MAX_PLAYERS][pInfo];
forward LoadUser_data(playerid,name[],value[]);
public 
LoadUser_data(playerid,name[],value[])
{
    
INI_Int("Password",PlayerInfo[playerid][pPass]);
    
INI_Int("Cash",PlayerInfo[playerid][pCash]);
    
INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
    
INI_Int("Kills",PlayerInfo[playerid][pKills]);
    
INI_Int("Deaths",PlayerInfo[playerid][pDeaths]);
    
INI_Int("Skin",PlayerInfo[playerid][pSkin]);
    return 
1;
}
stock UserPath(playerid)
{
    new 
string[128],playername[MAX_PLAYER_NAME];
    
GetPlayerName(playerid,playername,sizeof(playername));
    
format(string,sizeof(string),PATH,playername);
    return 
string;
}
stock udb_hash(buf[]) {
    new 
length=strlen(buf);
    new 
s1 1;
    new 
s2 0;
    new 
n;
    for (
n=0n<lengthn++)
    {
       
s1 = (s1 buf[n]) % 65521;
       
s2 = (s2 s1)     % 65521;
    }
    return (
s2 << 16) + s1;
}
public 
OnGameModeInit()
{
    
SetGameModeText("Girvinmode");
    
DisableInteriorEnterExits();
    
UsePlayerPedAnims();
    
AddStaticVehicle(405,1280.1495,-1292.5573,13.1545,90.5277,1,1); // Sentinel
    
AddStaticVehicle(410,1281.3601,-1383.1337,13.1312,90.2541,2,1); // Manana
    
AddStaticVehicle(426,1281.3218,-1363.8834,13.1479,89.5308,3,96); // Premier
    
AddStaticVehicle(429,1281.0326,-1312.9939,13.1839,89.4532,4,1); // Banshee
    
AddStaticVehicle(481,1272.7340,-1321.6632,13.3071,180.5797,5,96); // masina5
    
AddStaticVehicle(481,1272.6222,-1353.7826,13.3183,359.2056,6,96); // masina6
    
AddStaticVehicle(462,1282.5690,-1374.6877,12.8680,84.3409,7,0); // scuter
    
AddStaticVehicle(462,1282.1868,-1304.3948,12.8941,84.6293,8,9); // scuter2
    
return 1;
}
public 
OnPlayerConnect(playerid)
{
    if(
fexist(UserPath(playerid)))
    {
        
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra true, .extra playerid);
        
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_WHITE"Scrie-ti parola pentru a te loga.","Login","Quit");
    }
    else
    {
        
ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_INPUT,""COL_WHITE"Registering...",""COL_WHITE"Scrie o parola pentru a te inregistra.","Register","Quit");
    }
    return 
1;
}
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    switch( 
dialogid )
    {
        case 
DIALOG_REGISTER:
        {
            if (!
response) return Kick(playerid);
            if(
response)
            {
                if(!
strlen(inputtext)) return ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_INPUT""COL_WHITE"Registering...",""COL_RED"Ai introdus o parola gresita.\n"COL_WHITE"Scrie o parola pentru a te inregistra.","Register","Quit");
                new 
INI:File INI_Open(UserPath(playerid));
                
INI_SetTag(File,"data");
                
INI_WriteInt(File,"Password",udb_hash(inputtext));
                
INI_WriteInt(File,"Cash",0);
                
INI_WriteInt(File,"Admin",0);
                
INI_WriteInt(File,"Kills",0);
                
INI_WriteInt(File,"Deaths",0);
                
INI_WriteInt(File,"Skin",0);
                
INI_Close(File);
                
SetSpawnInfo(playerid,0,170,1283.5896,-1329.5938,13.3824,89.6460,0,0,0,0,0,0);
                
GivePlayerMoney(playerid,10000);
                
SpawnPlayer(playerid);
            }
        }
        case 
DIALOG_LOGIN:
        {
            if ( !
response ) return Kick playerid );
            if( 
response )
            {
                if(
udb_hash(inputtext) == PlayerInfo[playerid][pPass])
                {
                    
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra true, .extra playerid);
                    
GivePlayerMoney(playeridPlayerInfo[playerid][pCash]);
                    
SetSpawnInfo(playerid,0,PlayerInfo[playerid][pSkin],1283.5896,-1329.5938,13.3824,89.6460,0,0,0,0,0,0);
                    
SpawnPlayer(playerid);
                }
                else
                {
                    
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"Ai introdus o parola gresita.\n"COL_WHITE"Scrie parola mai jos pentru a te loga.","Login","Quit");
                }
                return 
1;
            }
        }
    }
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason)
{
    new 
INI:File INI_Open(UserPath(playerid));
    
INI_SetTag(File,"data");
    
INI_WriteInt(File,"Cash",GetPlayerMoney(playerid));
    
INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
    
INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]);
    
INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]);
    
INI_WriteInt(File,"Skin",PlayerInfo[playerid][pSkin]);
    
INI_Close(File);
    return 
1;

What i have to do to get the skin i want?


Re: login register problem - Rufio - 28.11.2016

SetPlayerSkin(playerid, pInfo[playerid][pSkin]);

below this;

pawn Код:
case DIALOG_LOGIN:
        {
            if ( !response ) return Kick ( playerid );
            if( response )
            {
                if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
                {
                    INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
and then set a value for player's skins

Edit: The issue is with your register dialog response which saves 0 as the Skin value. Change it.


Re: login register problem - GabiXx - 28.11.2016

What i have to change exactly?
And another q..How can i put a dinamic image from a point, to a point.
What i have to do passwords look like **** you know..


Re: login register problem - Micko123 - 28.11.2016

For password instead of this
PHP код:
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_INPUT 
Use this
PHP код:
ShowPlayerDialog(playeridDIALOG_LOGINDIALOG_STYLE_PASSWORD 



Re: login register problem - GabiXx - 28.11.2016

Thanks for the password man .
But guys...wtf i have to put in gm to get the skin 170 after register...


Re: login register problem - Alvitr - 28.11.2016

maybe here like SkyFlare said

PHP код:
case DIALOG_REGISTER
        { 
            if (!
response) return Kick(playerid); 
            if(
response
            { 
                if(!
strlen(inputtext)) return ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_INPUT""COL_WHITE"Registering...",""COL_RED"Ai introdus o parola gresita.\n"COL_WHITE"Scrie o parola pentru a te inregistra.","Register","Quit"); 
                new 
INI:File INI_Open(UserPath(playerid)); 
                
INI_SetTag(File,"data"); 
                
INI_WriteInt(File,"Password",udb_hash(inputtext)); 
                
INI_WriteInt(File,"Cash",0); 
                
INI_WriteInt(File,"Admin",0); 
                
INI_WriteInt(File,"Kills",0); 
                
INI_WriteInt(File,"Deaths",0); 
                
INI_WriteInt(File,"Skin",0); 
                
INI_Close(File); 
INI_WriteInt(File,"Skin",0); // it will save 0 at skin so when you login next time,
load user data will get 0

so change
INI_WriteInt(File,"Skin",0);
0 to 170