HELP : Y_INI SAVIN HEALTH / ARMOUR
#1

Hello..
Can anyone help me about saving and loading Health / Armour with Y_INI?
Always reset and getback to full when i relogging.
Heres the code :


Quote:

#include <a_samp>
#include <sscanf2>
#include <YSI\y_ini>
#include <zcmd>
#include <foreach>

#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
#define DIALOG_AGE 3
#define DIALOG_SEX 4
#define DIALOG_STATS 5

#define PATH "/users/%s.ini"

#define COL_WHITE 0xFFFFFF
#define COL_RED 0xF81414
#define COL_GREEN 0x00FF22
#define COL_LIGHTBLUE 0x2ca1e4
#define COL_PURPLE 0xC2A2DAAA

#define MAX_DROP_ITEMS 1000

native WP_Hash(buffer[],len,const str[]);

enum pInfo
{
pPass,
pLevel,
pKills,
pDeaths,
pMoney,
pAge,
pSex,
pBan,
pIP[16],
pVW,
pInterior,
pAdmin,
pSkin,
Float : pHealth,
Float : pArmour,
Float : posX,
Float : posY,
Float : posZ,
Float : posA
};
new PlayerInfo[MAX_PLAYERS][pInfo];

Quote:

forward LoadUser_data(playerid,name[],value[]);
public LoadUser_data(playerid,name[],value[])
{
INI_Int("Password", PlayerInfo[playerid][pPass]);
INI_Int("Level",PlayerInfo[playerid][pLevel]);
INI_Int("Kills",PlayerInfo[playerid][pKills]);
INI_Int("Deaths",PlayerInfo[playerid][pDeaths]);
INI_Int("Money", PlayerInfo[playerid][pMoney]);
INI_Int("Age",PlayerInfo[playerid][pAge]);
INI_Int("Sex", PlayerInfo[playerid][pSex]);
INI_Int("Ban",PlayerInfo[playerid][pBan]);
INI_Int("Admin", PlayerInfo[playerid][pAdmin]);
INI_Int("IP", PlayerInfo[playerid][pIP]);
INI_Int("Interior", PlayerInfo[playerid][pInterior]);
INI_Int("VirutalWorld", PlayerInfo[playerid][pVW]);
INI_Int("Skin", PlayerInfo[playerid][pSkin]);
INI_Float("Health", PlayerInfo[playerid][pHealth]);
INI_Float("Armour", PlayerInfo[playerid][pArmour]);
INI_Float("PositionX",PlayerInfo[playerid][posX]);
INI_Float("PositionY",PlayerInfo[playerid][posY]);
INI_Float("PositionZ",PlayerInfo[playerid][posZ]);
INI_Float("PositionA",PlayerInfo[playerid][posA]);
return 1;
}

Quote:

stock SaveUser_data(playerid)
{
new INI:File = INI_Open(UserPath(playerid));
GetPlayerPos(playerid, PlayerInfo[playerid][posX], PlayerInfo[playerid][posY], PlayerInfo[playerid][posZ]);
GetPlayerFacingAngle(playerid, PlayerInfo[playerid][posA]);
PlayerInfo[playerid][pSkin] = GetPlayerSkin(playerid);
GetPlayerHealth(playerid, PlayerInfo[playerid][pHealth]);
GetPlayerArmour(playerid, PlayerInfo[playerid][pArmour]);

INI_SetTag(File,"data");

INI_WriteInt(File,"Level", PlayerInfo[playerid][pLevel]);
INI_WriteInt(File,"Skin", GetPlayerSkin(playerid));
INI_WriteInt(File,"Ban", PlayerInfo[playerid][pBan]);
INI_WriteInt(File,"Money", GetPlayerMoney(playerid));
INI_WriteInt(File,"Admin", PlayerInfo[playerid][pAdmin]);
INI_WriteString(File,"IP", PlayerInfo[playerid][pIP]);
INI_WriteInt(File,"Interior", GetPlayerInterior(playerid));
INI_WriteInt(File,"VirtualWorld", GetPlayerVirtualWorld(playerid));
INI_WriteFloat(File,"Health", PlayerInfo[playerid][pHealth]);
INI_WriteFloat(File,"Armour", PlayerInfo[playerid][pArmour]);
INI_WriteFloat(File,"PositionX", PlayerInfo[playerid][posX]);
INI_WriteFloat(File,"PositionY", PlayerInfo[playerid][posY]);
INI_WriteFloat(File,"PositionZ", PlayerInfo[playerid][posZ]);
INI_WriteFloat(File,"PositionA", PlayerInfo[playerid][posA]);
INI_Close(File);
return 1;
}

Quote:

case DIALOG_REGISTER:
{
if (!response) return Kick(playerid);
if(response)
{
if(!strlen(inputtext))
return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Register", "You have entered an invalid password.\n\nType your password below to register a new account.","Register","Quit");

new Hpass[129];
WP_Hash(Hpass,sizeof(Hpass), inputtext);

new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteString(File,"Password", Hpass);
INI_WriteInt(File,"Money",500);
INI_WriteInt(File,"Skin",0);
INI_WriteInt(File,"Money",500);
INI_WriteInt(File,"Admin",0);
INI_WriteFloat(File,"Health",0);
INI_WriteFloat(File,"Armour",0);
INI_Close(File);

PlayerInfo[playerid][posX] = 176.4699;
PlayerInfo[playerid][posY] = -107.5863;
PlayerInfo[playerid][posZ] = 1.5436;
PlayerInfo[playerid][pVW] = 0;
PlayerInfo[playerid][pInterior] = 0;
PlayerInfo[playerid][pHealth] = 100;
PlayerInfo[playerid][pArmour] = 0;
ShowPlayerDialog(playerid, DIALOG_AGE, DIALOG_STYLE_INPUT,"Age","Please put your age to process.","Ok","");

}
}

Reply


Messages In This Thread
HELP : Y_INI SAVIN HEALTH / ARMOUR - by hatcis - 14.11.2018, 07:54
Re: HELP : Y_INI SAVIN HEALTH / ARMOUR - by khRamin78 - 14.11.2018, 08:15
Re: HELP : Y_INI SAVIN HEALTH / ARMOUR - by hatcis - 14.11.2018, 12:39
Re: HELP : Y_INI SAVIN HEALTH / ARMOUR - by khRamin78 - 14.11.2018, 15:00
Re: HELP : Y_INI SAVIN HEALTH / ARMOUR - by khRamin78 - 14.11.2018, 15:02

Forum Jump:


Users browsing this thread: 1 Guest(s)