Portal SAMP
[Ajuda] Salvar vida e colete - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Salvar vida e colete (/showthread.php?tid=1184)



Salvar vida e colete - Recruta - 14/05/2021

Como posso fazer para salvar vida e colete em dof2?
Eu tentei fazer, mas quando desconecta ele loga com a vida que foi deitada quando a conta foi criada.


RE: Salvar vida e colete - xbruno1000x - 14/05/2021

Sem o código, não é possível ajudar.


RE: Salvar vida e colete - zBL4CK - 14/05/2021

(14/05/2021 14:47)Recruta Escreveu: Como posso fazer para salvar vida e colete em dof2?
Eu tentei fazer, mas quando desconecta ele loga com a vida que foi deitada quando a conta foi criada.

Código PHP:
public OnPlayerConnect(playerid) {
    
SetPlayerArmour(playeridDOF2::GetFloat("/diretorio/contaplayer.ini""Colete"));
    
SetPlayerHealth(playeridDOF2::GetFloat("/diretorio/contaplayer.ini""Vida"));
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason) {
    new 
Float:ArmourFloat:pHealth;
    
GetPlayerHealth(playeridpHealth);
    
GetPlayerArmour(playeridArmour);
    
DOF2::SetFloat("/diretorio/contaplayer.ini""Colete"Armour);
    
DOF2::SetFloat("/diretorio/contaplayer.ini""Vida"pHealth);
    return 
1;


procure em OnPlayerConnect se há uma função setando a vida ou seja

Código PHP:
SetPlayerHealth(playerid100.0)); 

remova-o e adapte ao codigo que enviei acima!

testa ai e nos avise!


RE: Salvar vida e colete - Recruta - 14/05/2021

Eu tinha tentado fazer assim.
Código:
enum pInfo
{
pVida
}

public OnPlayerSpawn(playerid)
{
SetPlayerHealth(playerid, PlayerInfo[playerid][pVida]);
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
case DIALOG_POS:
{
SetPlayerHealth(playerid, PlayerInfo[playerid][pVida]);
}

stock CriarD(playerid)
{
PlayerInfo[playerid][pVida] = 100;
}

stock ZerarD(playerid)
{
PlayerInfo[playerid][pVida] = 0;
}

stock CarregarD(playerid)
{
PlayerInfo[playerid][pVida] = DOF2_GetInt(File, "pVida");
}

stock SalvarD(playerid)
{
DOF2_SetInt(File, "pVida", GetPlayerHealth(playerid));
}



RE: Salvar vida e colete - xbruno1000x - 15/05/2021

(14/05/2021 17:11)Recruta Escreveu: Eu tinha tentado fazer assim.
Código:
enum pInfo
{
pVida
}

public OnPlayerSpawn(playerid)
{
SetPlayerHealth(playerid, PlayerInfo[playerid][pVida]);
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
case DIALOG_POS:
{
SetPlayerHealth(playerid, PlayerInfo[playerid][pVida]);
}

stock CriarD(playerid)
{
PlayerInfo[playerid][pVida] = 100;
}

stock ZerarD(playerid)
{
PlayerInfo[playerid][pVida] = 0;
}

stock CarregarD(playerid)
{
PlayerInfo[playerid][pVida] = DOF2_GetInt(File, "pVida");
}

stock SalvarD(playerid)
{
DOF2_SetInt(File, "pVida", GetPlayerHealth(playerid));
}

Use o código do zBlack e adapte ao seu gm, seu código está errado. Não se salva float's com DOF2_SetInt, utiliza-se DOF2_SetFloat. Para carregar, ao invés de GetInt, usa-se GetFloat.