Need Help...
#1

<REMOVED> i made this topic when i was a newbie.
Reply
#2

Well you should show some script.
Reply
#3

this code is the problem
pawn Код:
//====================== [REGISTER  &  LOGIN] ==================================
CMD:register(playerid,params[])
{
    if (PlayerInfo[playerid][LoggedIn] == 1) return SendClientMessage(playerid,COLOR_RED,"ACCOUNT: You are already registered and logged in.");
    if (udb_Exists(PlayerName2(playerid))) return SendClientMessage(playerid,COLOR_RED,"ACCOUNT: This account already exists, please use '/login [password]'.");
    if (strlen(params) == 0) return SendClientMessage(playerid,COLOR_RED,"ACCOUNT: Correct usage: '/register [password]'");
    if (strlen(params) < 4 || strlen(params) > 20) return SendClientMessage(playerid,COLOR_RED,"ACCOUNT: Password length must be greater than three characters");
    if (udb_Create(PlayerName2(playerid),params))
    {
        new file[256],rname[MAX_PLAYER_NAME], tmp3[100];
        new strdate[20], year,month,day;
        getdate(year, month, day);
        GetPlayerName(playerid,rname,sizeof(rname));
        format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(rname));
        GetPlayerIp(playerid,tmp3,100);
        dini_Set(file,"ip",tmp3);
//      dini_Set(file,"password",params);
        dUserSetINT(PlayerName2(playerid)).("registered",1);
        format(strdate, sizeof(strdate), "%d/%d/%d",day,month,year);
        dini_Set(file,"RegisteredDate",strdate);
        dUserSetINT(PlayerName2(playerid)).("loggedin",1);
        dUserSetINT(PlayerName2(playerid)).("banned",0);
        dUserSetINT(PlayerName2(playerid)).("level",0);
        dUserSetINT(PlayerName2(playerid)).("LastOn",0);
        dUserSetINT(PlayerName2(playerid)).("money",0);
        dUserSetINT(PlayerName2(playerid)).("kills",0);
        dUserSetINT(PlayerName2(playerid)).("deaths",0);
        dUserSetINT(PlayerName2(playerid)).("Bank",PlayerInfo[playerid][bank]);
        dUserSetINT(PlayerName2(playerid)).("weed",PlayerInfo[playerid][weed]);
        dUserSetINT(PlayerName2(playerid)).("Gang",PlayerInfo[playerid][gang]);
        dUserSetINT(PlayerName2(playerid)).("Condoms",PlayerInfo[playerid][condoms]);
        dUserSetINT(PlayerName2(playerid)).("inalcatraz",PlayerInfo[playerid][inalcatraz]);
        PlayerInfo[playerid][LoggedIn] = 1;
        PlayerInfo[playerid][Registered] = 1;
        SavePlayer(playerid);
        dUserSetINT(PlayerName2(playerid)).("bowner",0);
        dUserSetINT(PlayerName2(playerid)).("bowned",0);
        dUserSetINT(PlayerName2(playerid)).("vowned",0);
        dUserSetINT(PlayerName2(playerid)).("vowner",0);
        dUserSetINT(PlayerName2(playerid)).("vowned2",0);
        dUserSetINT(PlayerName2(playerid)).("vowner2",0);
        dUserSetINT(PlayerName2(playerid)).("vowned3",0);
        dUserSetINT(PlayerName2(playerid)).("vowner3",0);
        dUserSetINT(PlayerName2(playerid)).("vowned4",0);
        dUserSetINT(PlayerName2(playerid)).("vowner4",0);
        dUserSetINT(PlayerName2(playerid)).("vowned5",0);
        dUserSetINT(PlayerName2(playerid)).("vowner5",0);
        dUserSetINT(PlayerName2(playerid)).("vowned6",0);
        dUserSetINT(PlayerName2(playerid)).("vowner6",0);
        dUserSetINT(PlayerName2(playerid)).("vowned7",0);
        dUserSetINT(PlayerName2(playerid)).("vowner7",0);
        dUserSetINT(PlayerName2(playerid)).("vowned8",0);
        dUserSetINT(PlayerName2(playerid)).("vowner8",0);
        dUserSetINT(PlayerName2(playerid)).("Houseid", -255);
        dUserSetINT(PlayerName2(playerid)).("Rentid", -255);
        dUserSetINT(PlayerName2(playerid)).("SpawnX", 0);
        dUserSetINT(PlayerName2(playerid)).("SpawnY", 0);
        dUserSetINT(PlayerName2(playerid)).("SpawnZ", 0);
        dUserSetINT(PlayerName2(playerid)).("SpawnInt", 0);
        LoginPlayer(playerid);
        LoadPlayer(playerid);
        SendClientMessage(playerid, green, "ACCOUNT: You are now registered, and have been automaticaly logged in");
        PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
        return 1;
    }
    return 1;}

CMD:login(playerid,params[])
{
    if (PlayerInfo[playerid][LoggedIn] == 1) return SendClientMessage(playerid,COLOR_RED,"ACCOUNT: You are already logged in.");
    if (!udb_Exists(PlayerName2(playerid))) return SendClientMessage(playerid,COLOR_RED,"ACCOUNT: Account doesn't exist, please use '/register [password]'.");
    if (strlen(params)==0) return SendClientMessage(playerid,COLOR_RED,"ACCOUNT: Correct usage: '/login [password]'");
    if (udb_CheckLogin(PlayerName2(playerid),params))
    {
        new file[256], tmp3[100], string[128], lname[MAX_PLAYER_NAME];
        GetPlayerName(playerid,lname,sizeof(lname));
        format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(lname));
        GetPlayerIp(playerid,tmp3,100);
        dini_Set(file,"ip",tmp3);
        LoginPlayer(playerid);
        LoadPlayer(playerid);
        PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
        if(PlayerInfo[playerid][Level] > 0) {
            format(string,sizeof(string),"ACCOUNT: Successfully Logged In. (Level %d)", PlayerInfo[playerid][Level] );
            return SendClientMessage(playerid,green,string);
        } else return SendClientMessage(playerid,green,"ACCOUNT: Successfully Logged In");
    }
    return SendClientMessage(playerid,COLOR_RED,"ACCOUNT: Login failed! Incorrect Password");
}
Reply
#4

Well I guess you don't have an UDB_CheckLogin stock. As far as I know, there's not such a thing in DUDB.
Reply
#5

So how can i fix it?
Reply
#6

You can script an own CheckLogin function. Set it to one when the players logs in, to 0 when he logs out/disconnects.
Reply
#7

Nvm it is ok now and ty
Reply
#8

No problem
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)