Problem in saving Player data using dini.
#8

Take A Look At Mine Nixiie Help me make it

pawn Code:
new pfile[128]; // Holds the dir. where the player file is stored
#define pfile_path "Users/%s.ini"
pawn Code:
enum Playerinfo_Enum
{
    Kills,
    Deaths,
    LastVeh,
    IsCuffed,
    HasDrugs,
    HasCrack,
    WeedAmount,
    Seeds,
    SeedPlanted,
    PickupableDrugs,
};
pawn Code:
public OnPlayerDeath(playerid, killerid, reason)
{
    PlayerInfo[playerid][Deaths]++;
    PlayerInfo[killerid][Kills]++;
pawn Code:
stock LoadPlayer(playerid)
{
    SetPlayerScore(playerid, dini_Int(pfile, "Score"));
    GivePlayerMoney(playerid, - GetPlayerMoney(playerid) + dini_Int(pfile, "Money"));
    SetPlayerWantedLevel(playerid, dini_Int(pfile, "WantedLevel"));
    SetPlayerDrunkLevel(playerid, dini_Int(pfile, "DrunkLevel"));
    SetPlayerFightingStyle(playerid, dini_Int(pfile, "FightStyle"));
    StoreSecond[playerid] = dini_Int(pfile, "SecondsLogged");
    StoreMinute[playerid] = dini_Int(pfile, "MinutesLogged");
    StoreHour[playerid] = dini_Int(pfile, "HoursLogged");
    PlayerInfo[playerid][Kills] = dini_Int(pfile,"Kills");
    PlayerInfo[playerid][Deaths] = dini_Int(pfile,"Deaths");
    PlayerInfo[playerid][WeedAmount] = dini_Int(pfile, "Weed");
    PlayerInfo[playerid][Seeds] = dini_Int(pfile, "Seeds");
    SetPlayerFacingAngle(playerid, dini_Int(pfile, "Angle"));
    return 1;
}

stock SavePlayer(playerid)
{
    format(pfile, sizeof(pfile), pfile_path, Playername(playerid));
    new Float:angle;
    GetPlayerFacingAngle(playerid,angle);
    dini_FloatSet(pfile, "Angle", playerid);
    dini_IntSet(pfile, "Score", GetPlayerScore(playerid));
    dini_IntSet(pfile, "Money", GetPlayerMoney(playerid));
    dini_IntSet(pfile, "Hourslogged", StoreHour[playerid]);
    dini_IntSet(pfile, "MinutesLogged", StoreMinute[playerid]);
    dini_IntSet(pfile, "SecondsLogged", StoreSecond[playerid]);
    dini_IntSet(pfile, "WantedLevel", GetPlayerWantedLevel(playerid));
    dini_IntSet(pfile, "DrunkLevel", GetPlayerDrunkLevel(playerid));
    dini_IntSet(pfile, "FightStyle", GetPlayerFightingStyle(playerid));
    dini_IntSet(pfile,"Kills",PlayerInfo[playerid][Kills]);
    dini_IntSet(pfile,"Deaths",PlayerInfo[playerid][Deaths]);
    dini_IntSet(pfile,"Weed", PlayerInfo[playerid][WeedAmount]);
    dini_IntSet(pfile,"Seeds", PlayerInfo[playerid][Seeds]);
    IsLogged[playerid] = 0;
    StoreSecond[playerid] = 0;
    StoreMinute[playerid] = 0;
    StoreHour[playerid] = 0;
    return 1;
}
pawn Code:
CMD:login(playerid, params[])
{
    new PlayerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, PlayerName, MAX_PLAYER_NAME);
    new ppw[20], str[128];

    format(pfile, sizeof(pfile), pfile_path, Playername(playerid));

    if(sscanf(params, "s", ppw)) return SendMsg(playerid, RED, "*USAGE: /register [password] - Max length is 20 & minium is 3");
    if(strlen(ppw) < 3) return SendMsg(playerid, RED, "*Error: Password Is Under The Limit Sorry");
    if(strlen(ppw) > 20) return SendMsg(playerid, RED, "*Error: Password Is Over The Limit Sorry");
    if(IsLogged[playerid] == 1) return SendMsg(playerid, RED, "*Error: |- You Are Already Logged In -|");
    if(!dini_Exists(pfile)) return SendMsg(playerid, RED, "*Error: No account with that username is registered, please register");

    if(strcmp(dini_Get(pfile, "Password"), ppw, true) == 1) return SendMsg(playerid, RED, "*Error: Wrong Password. Password Did Not Match With The One You Have Register With.");
    format(str, sizeof(str), "*Success: You have Successfully Logged In %s", Playername(playerid), dini_Int(pfile, "AdminLevel"));
    SendMsg(playerid, LIME, str);
    LoadPlayer(playerid);
    IsLogged[playerid] = 1;
    SetTimerEx("TimePlayerLogged", 1000, true, "i", playerid);

    return 1;
}

CMD:register(playerid, params[])
{
    new ppw[20], str[128];
    format(pfile, sizeof(pfile), pfile_path, Playername(playerid));
    if(sscanf(params, "s", ppw)) return SendMsg(playerid, RED, "*USAGE: /register [password] - Max length is 20 & minium is 3");
    else if(strlen(ppw) < 3) return SendMsg(playerid, RED, "*Error: Password Is Under The Limit Sorry");
    else if(strlen(ppw) > 20) return SendMsg(playerid, RED, "*Error: Password Is Over The Limit Sorry");
    else if(IsLogged[playerid] == 1) return SendMsg(playerid, RED, "*Error: You Are Logged In | No Need To Register Again!");
    else if(dini_Exists(pfile)) return SendMsg(playerid, RED, "*Error: This Username Is Already Registered In Our Database Please Login! Or Create A Different Account");
    else
    {
        format(pfile, sizeof(pfile), pfile_path, Playername(playerid));
        dini_Create(pfile);
        dini_Set(pfile, "Password", ppw);
        dini_IntSet(pfile, "Score", 0);
        dini_IntSet(pfile, "Money", 0);
        dini_IntSet(pfile, "AdminLevel", 0);
        dini_IntSet(pfile, "Hourslogged", 0);
        dini_IntSet(pfile, "MinutesLogged", 0);
        dini_IntSet(pfile, "SecondsLogged", 0);
        dini_IntSet(pfile, "WantedLevel", 0);
        dini_IntSet(pfile, "DrunkLevel", GetPlayerDrunkLevel(playerid));
        dini_IntSet(pfile, "FightStyle", GetPlayerFightingStyle(playerid));
        dini_IntSet(pfile,"Weed", 0);
        dini_IntSet(pfile,"Seeds", 0);
        dini_IntSet(pfile, "Jail", 0);

        format(str, sizeof(str), "*Success: You Has Successfully Registered %s And With The Password Of %s", Playername(playerid), ppw);
        SendMsg(playerid, GREEN, str);
        GivePlayerMoney(playerid,25000);
    }
    return 1;
}
just trying to help ya for all the times you helped me>.<
Reply


Messages In This Thread
Problem in saving Player data using dini. - by DJDhan - 20.07.2010, 20:46
Re: Problem in saving Player data using dini. - by Grim_ - 20.07.2010, 20:48
Re: Problem in saving Player data using dini. - by DJDhan - 20.07.2010, 20:51
Re: Problem in saving Player data using dini. - by Kar - 20.07.2010, 20:56
Re: Problem in saving Player data using dini. - by DJDhan - 20.07.2010, 21:04
Re: Problem in saving Player data using dini. - by Kar - 20.07.2010, 21:10
Re: Problem in saving Player data using dini. - by DJDhan - 20.07.2010, 21:13
Re: Problem in saving Player data using dini. - by Kar - 20.07.2010, 21:16
Re: Problem in saving Player data using dini. - by DJDhan - 20.07.2010, 21:21
Re: Problem in saving Player data using dini. - by Kar - 20.07.2010, 21:23

Forum Jump:


Users browsing this thread: 1 Guest(s)