SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Português/Portuguese

Reply
 
Thread Tools Display Modes
Old 04/02/2020, 09:29 PM   #1
JWell
Little Clucker
 
Join Date: Nov 2019
Posts: 2
Reputation: 0
Question COMO FAÇO PARA SETAR A VIDA DO PLAYER QUANDO ELE ENTRAR??

Exemplo: O player caiu de um lugar alto e ficou com MEIO DE VIDA, daí como faço para quando ele desconectar e conectar novamente ele ainda estar com MEIO DE VIDA! Pois quando o player toma dano e sai do servidor, quando ele conecta novamente a VIDA DELE ESTAR CHEIA... COMO RESOLVO ISSO
JWell is offline   Reply With Quote
Old 04/02/2020, 09:31 PM   #2
ipsLuan
High-roller
 
ipsLuan's Avatar
 
Join Date: Feb 2013
Location: Ilhéus, BA
Posts: 4,514
Reputation: 328
Default Re: COMO FAÇO PARA SETAR A VIDA DO PLAYER QUANDO ELE ENTRAR??

Só usar um sistema de salvamento e salvar a vida atual do jogador com Get/Set Float.

Ao sair do jogo, use Get para pegar a vida atual e salve com Set.
Ao entrar, use Get para pegar a vida salva no arquivo e use SetPlayerHealth.

pawn Code:
//Ao sair
new Float:vidaAtual;
vidaAtual = GetPlayerHealth(playerid);
DOF2_SetFloat("Arquivos/ipsLuan.ini", "Vida", vidaAtual);

//Ao entrar
new Float:vidaSalva;
vidaSalva = DOF2_GetFloat("Arquivos/ipsLuan.ini", "Vida");
SetPlayerHealth(playerid, vidaSalva);
Lembrando que você terá que formatar o DOF2_GetFloat para a pasta de seu salvamento com o nome atual do jogador.


Bons estudos!
__________________
Brasil New Style
ip.brasilnewstyle.com
ipsLuan is online now   Reply With Quote
Old 04/02/2020, 10:16 PM   #3
AdrianoStk
Huge Clucker
 
AdrianoStk's Avatar
 
Join Date: Jan 2013
Location: Presidente Prudente-SP
Posts: 477
Reputation: 32
Lightbulb Re: COMO FAÇO PARA SETAR A VIDA DO PLAYER QUANDO ELE ENTRAR??

Simples assim, você também pode salvar mais coisas, (OBS isso é um modo se salvamento simples e não algo avançado)

É necessário a include DOF2 para copilar
É necessário a criação de uma pasta com o nome de Player dentro da pasta scriptfiles
PHP Code:
#define FILTERSCRIPT

#include <a_samp>
#include <DOF2>

new bool:ja_spawnou[MAX_PLAYERS];//Variavel de controle para não ficar setando a vida quando o player morre etc...
public OnFilterScriptInit()
{
    
printf("Sistema de Salvamento ON");
    return 
1;
}

public 
OnFilterScriptExit()
{
    
DOF2_Exit();
    
printf("Sistema de Salvamento OFF!");
    return 
1;
}


public 
OnPlayerConnect(playerid)
{
    
ja_spawnou[playerid] = false;//Seta a veriavel para falso, para ser utilizada em PlayerSpawn....
    
return 1;
}

public 
OnPlayerDisconnect(playeridreason)
{
    if(
ja_spawnou[playerid])//Caso ele tenha entrado no servidor e spawnado
    
{
        new 
pname[MAX_PLAYER_NAME];//Variavel do nome do player
        
new str[64];
        
GetPlayerName(playeridpnamesizeof(pname));//Obtem o nome do player
        
format(strsizeof(str), "Player/%s.txt"pname);//Formata com o caminho de salvamento dos players
        
new Float:vida;
        
GetPlayerHealth(playeridvida);//Obtem a vida do player
        
DOF2_SetFloat(str"vida"vida);//Seta a vida no arquivo do player
        
DOF2_SaveFile();//Salva o arquivo
    
}
    return 
1;
}

public 
OnPlayerSpawn(playerid)
{
    if(!
ja_spawnou[playerid])
    {
        new 
pname[MAX_PLAYER_NAME];//Variavel do nome do player
        
new str[64];
        
GetPlayerName(playeridpnamesizeof(pname));//Obtem o nome do player
        
format(strsizeof(str), "Player/%s.txt"pname);//Formata com o caminho de salvamento dos players
        
if(DOF2_FileExists(str))//Caso o arquivo já exista
        
{
            new 
Float:vida DOF2_GetFloat(str"vida");//Obtem a vida do player que está no aquivo
            
SetPlayerHealth(playeridvida);//Seta a vida ao player
        
}
        else
//Caso o aquivo não exista
        
{
            
DOF2_CreateFile(str);//Cria o arquivo de salvamento
            
DOF2_SetFloat(str"vida"100.0);//Seta a variavel vida no arquivo
            
DOF2_SaveFile();//Salva o arquivo
        
}
        
ja_spawnou[playerid] = true;//Altera o valor para que não sete novamente a vida....
    
}
    return 
1;

__________________
Hayllander Server's


Breve, nos servidores


Discord
AdrianoStk is offline   Reply With Quote
Old 05/02/2020, 12:22 AM   #4
JWell
Little Clucker
 
Join Date: Nov 2019
Posts: 2
Reputation: 0
Default Re: COMO FAÇO PARA SETAR A VIDA DO PLAYER QUANDO ELE ENTRAR??

Quote:
Originally Posted by ipsLuan View Post
Só usar um sistema de salvamento e salvar a vida atual do jogador com Get/Set Float.

Ao sair do jogo, use Get para pegar a vida atual e salve com Set.
Ao entrar, use Get para pegar a vida salva no arquivo e use SetPlayerHealth.

pawn Code:
//Ao sair
new Float:vidaAtual;
vidaAtual = GetPlayerHealth(playerid);
DOF2_SetFloat("Arquivos/ipsLuan.ini", "Vida", vidaAtual);

//Ao entrar
new Float:vidaSalva;
vidaSalva = DOF2_GetFloat("Arquivos/ipsLuan.ini", "Vida");
SetPlayerHealth(playerid, vidaSalva);
Lembrando que você terá que formatar o DOF2_GetFloat para a pasta de seu salvamento com o nome atual do jogador.


Bons estudos!
Obrigado Mano! Mas deu uma warning:
PHP Code:
warning 202number of arguments does not match definition 
Esta é a linha que deu a warning:
PHP Code:
vidaAtual GetPlayerHealth(playerid); 
JWell is offline   Reply With Quote
Old 05/02/2020, 12:31 AM   #5
ipsLuan
High-roller
 
ipsLuan's Avatar
 
Join Date: Feb 2013
Location: Ilhéus, BA
Posts: 4,514
Reputation: 328
Default Re: COMO FAÇO PARA SETAR A VIDA DO PLAYER QUANDO ELE ENTRAR??

Fiz proposital pra ver se você ia ir além e ia pesquisar à respeito da resolução do erro...

pawn Code:
DOF2_SetFloat("Arquivos/ipsLuan.ini", "Vida", GetPlayerHealth(playerid, vidaAtual));
__________________
Brasil New Style
ip.brasilnewstyle.com
ipsLuan is online now   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Pedido] Como que faz aquele tutorial quando o player entrar pela primeira vez no meu servidor? Brandow1 Português/Portuguese 1 15/07/2016 02:34 PM
[Ajuda] Como faço para bloquear o comando /vida se o player não tiver 100$ em mãos OverKiller Português/Portuguese 5 15/03/2016 10:48 PM
[Ajuda] Como faço pro player upar a pick-up somente quando apertar a tecla enter? AdrianoStk Português/Portuguese 5 27/11/2013 10:34 PM
[Ajuda] Como faço para aparecer o motivo para o player kickado? RicardoMaia Português/Portuguese 4 15/11/2013 09:59 PM
[AJUDA] Como faço para salvar e setar o player depois dele entrar numa gang jeanmon357 Português/Portuguese 2 19/12/2011 02:32 AM


All times are GMT. The time now is 05:29 PM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.