SA-MP Forums Archive
[AJUDA] Health - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [AJUDA] Health (/showthread.php?tid=297540)



[AJUDA] Health - Aquilis - 16.11.2011

Como faзo isso abaixo? Ou estб certo?

pawn Код:
SetPlayerHealth(playerid, GetPlayerHealth(playerid)+20);
Para ele pegar a vida do player e somar +20, e se for = a 100 nгo adiciona nada de vida


Re: [AJUDA] Health - GustavoBonomo - 16.11.2011

Acredito que nгo precise de "(playerid)" 2 vezes '-'


Re: [AJUDA] Health - adminlucas - 16.11.2011

pawn Код:
new vida = GetPlayerHealth(playerid);
if(vida < 80)
{
     SetPlayerHealth(playerid, +20);
}
else return 0;
й isso que tu quer ? oO

@EDIT; TInha um erro, arrumado, ve se vai '-'


Re: [AJUDA] Health - Aquilis - 16.11.2011

Nossa eu tinha feito o mesmo, pensei que estava errado hehe.
Ali й else mesmo?


Re: [AJUDA] Health - adminlucas - 16.11.2011

Sim, se a vida do Player tiver Maior que 80, ele vai retornar 0 (Nullo)

agora por que 80 ? por que se tiver mais de 80, por exemplo 81 e ele dar +20 vai ficar 101 de vida, ou seja, nada bom.

dai fica 80 '-'


Re: [AJUDA] Health - Aquilis - 16.11.2011

E assim:
pawn Код:
new vida = GetPlayerHealth(playerid);
if(vida == 100) return SendClientMessage(playerid, COLOR_GREY, " Vocк nгo pode comer pois estб de estomago cheio!");
     SetPlayerHealth(playerid, +20);
     // continuaзгo do script
Estб correto?


Re: [AJUDA] Health - Dolby - 16.11.2011

Com isso vocк apenas setaria o Health para 20,o certo seria:
pawn Код:
SetPlayerHealth(playerid, vida+20);



Re: [AJUDA] Health - rjjj - 16.11.2011

Como a funзгo GetPlayerHealth retorna o valor da vida do jogador armazenando-o na variбvel passada ao segundo parвmetro da mesma, entгo seu cуdigo ficaria assim :


pawn Код:
new Float:vida; //Й criada a variбvel "vida" com suporte para valores flutuantes (fracionбrios).
GetPlayerHealth(playerid, vida); //A variбvel "vida" passa a ter o valor da vida do jogador de ID "playerid".
SetPlayerHealth(playerid, vida+20); //O valor da vida do jogador й transformado nele mesmo com um acrйscimo de 20 de vida.

Para checar o valor da vida com if, faзa como no exemplo abaixo :


pawn Код:
if(vida == 20) return SendClientMessage(playerid, 0xFFFFFFAA, "Vida !");


Espero ter ajudado .


Re: [AJUDA] Health - adminlucas - 16.11.2011

й esqueci do famoso Float auhseasuhe


Re: [AJUDA] Health - Aquilis - 16.11.2011

Ajudou e muito +rep obrigado!,

ficou assim:
pawn Код:
if(strcmp(cmd, "/comerhotdog",true)==0)
    {
        if (bHotDog[playerid] != 1)
        {
            SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo tem um hotdog!");
            return 1;
        }      
        new Float:vida;
        if(vida == 100) return SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode comer, esta de barriga cheia!");        
        GetPlayerHealth(playerid, vida);        
        SetPlayerHealth(playerid, vida+20);
        format(string, sizeof(string), "* Vocк comeu um hotdog.");
        SendClientMessage(playerid, COLOR_WHITE, string);
        format(string, sizeof(string), "* %s pega um hotdog e come.", sendername);
        ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
        bHotDog[playerid] = 0;
        return 1;
    }
funcionou certinho