Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Не сохраняет здоровье и броню

Статус
В этой теме нельзя размещать новые ответы.

jeffreymcdon

Ученик
Вообщем сделали сохранение здоровья при выходе, и что бы оно давалось при входе ( то есть вышел с 70 ХП, зашел и все равно 70 ХП)
А получается так что при регистрации дает 100 ХП, а когда перезашел дает 1 ХП. и все, как исправить?

Вот код:
Код:
enum pInfo
{
	pName[MAX_PLAYER_NAME],
	pLevel,
	pPass[21],
	pSex,
	pSkin,
	pMoney,
	pAdmin,
	pMail[61],
	pAge[41],
	Float: Health,
	Float: Armour
}
Код:
new Float: healthh[MAX_PLAYERS], Float: armourr[MAX_PLAYERS];
Код:
public OnPlayerDisconnect(playerid, reason)
{
    if(Login[playerid] == true)
    {
        static const ZSQL[] = "UPDATE `accounts` SET `Health` = '%f', `Armour` = '%f' WHERE `Name` = '%d'";
		new Float: heal, Float: arm;
        new sstring[sizeof(ZSQL) - 6 + 10 + MAX_PLAYER_NAME + 1];
        healthh[playerid] = GetPlayerHealth(playerid, heal);
        armourr[playerid] = GetPlayerArmour(playerid, arm);
        format(sstring, sizeof(sstring), ZSQL, heal, arm, GN(playerid));
        mysql_function_query(ConnectMySQL, sstring, false, "", "");
        SavePlayer(playerid);
    }
    KillTimer(TimerReg[playerid]);
    return true;
}
Код:
publics OnLogin(i)
{
	new rows;
	new rows2;
	new string[200];
	cache_get_data(rows, rows2);
	if(rows)
	{
		cache_get_field_content(0, "Pass", Player[i][pPass], ConnectMySQL, 20);
		cache_get_field_content(0, "Mail", Player[i][pMail], ConnectMySQL, 60);
		cache_get_field_content(0, "Age", Player[i][pMail], ConnectMySQL, 40);
		Player[i][pLevel] = cache_get_field_content_int(0, "Level");
		Player[i][pSkin] = cache_get_field_content_int(0, "Skin");
		Player[i][pSex] = cache_get_field_content_int(0, "Sex");
		Player[i][pMoney] = cache_get_field_content_int(0, "Money");
		Player[i][pAdmin] = cache_get_field_content_int(0, "Admin");
		healthh[i] = cache_get_field_content_float(0, "Health");
        armourr[i] = cache_get_field_content_float(0, "Armour");
		Login[i] = true;
		SpawnPlayer(i);
	}
Код:
stock SetPlayerSpawn(playerid)
{
	SetPlayerSkin(playerid, Player[playerid][pSkin]);
	SetPlayerScore(playerid, Player[playerid][pLevel]);
	SetPlayerHealth(playerid, healthh[playerid]);
    SetPlayerArmour(playerid, armourr[playerid]);
	if(Player[playerid][pLevel] > 0)
	{
	    SetPlayerPos(playerid, 1062.1937, 2078.4087, 10.8203);
	    SetPlayerFacingAngle(playerid, 2.4830);
	    SetPlayerInterior(playerid, 0);
	    SetPlayerVirtualWorld(playerid, 0);
	    SetCameraBehindPlayer(playerid);
	}
}
Код:
stock SavePlayer(i)
{
    new scr[128];
    new string[320];
    f("UPDATE `accounts` SET ");
    format(scr, sizeof(scr), "`Level` = '%d',", Player[i][pLevel]);
    strcat(string, scr);
    format(scr, sizeof(scr), "`Skin` = '%d',", Player[i][pSkin]);
    strcat(string, scr);
    format(scr, sizeof(scr), "`Sex` = '%d',", Player[i][pSex]);
    strcat(string, scr);
    format(scr, sizeof(scr), "`Money` = '%d',", Player[i][pMoney]);
    strcat(string, scr);
    format(scr, sizeof(scr), "`Health` = '%f',", healthh[i]);
    strcat(string, scr);
    format(scr, sizeof(scr), "`Armour` = '%f',", armourr[i]);
    strcat(string, scr);
    format(scr, sizeof(scr), "`Admin` = '%d',", Player[i][pAdmin]);
    strcat(string, scr);
    format(scr,sizeof(scr),  "`Mail` = '%s',",Player[i][pMail]);
    strcat(string,scr);
    format(scr,sizeof(scr),  "`Age` = '%d',",Player[i][pAge]);
    strcat(string,scr);
    format(scr,sizeof(scr),  "`Pass` = '%s'",Player[i][pPass]);
    strcat(string,scr);
    format(scr, sizeof(scr), " WHERE `Name` = '%s'", Player[i][pName]);
    strcat(string, scr, sizeof(string));
    mysql_function_query(ConnectMySQL, string, false, "", "");
    Player[i][pMoney] = Money(i);
    mysql_function_query(ConnectMySQL, string, true, "", "");
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу