SA-MP Forums Archive
[Pedido] Diminuir dano da arma - 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: [Pedido] Diminuir dano da arma (/showthread.php?tid=660600)



Diminuir dano da arma - MateGPlay - 07.11.2018

Queria saber como faзo para diminuir o dano da minigun para 0.5 ou 1 cada tiro, mas nгo sei como fazer.


Re: Diminuir dano da arma - ipsLuan - 08.11.2018

Tem que fazer uma gambiarra com OnPlayerGiveDamage fazendo a verificaзгo da arma e diminuindo o valor da vida.


Re: Diminuir dano da arma - MateGPlay - 08.11.2018

Quote:
Originally Posted by ipsLuan
Посмотреть сообщение
Tem que fazer uma gambiarra com OnPlayerGiveDamage fazendo a verificaзгo da arma e diminuindo o valor da vida.
Eu tentei fazer no OnPlayerTakeDamage mas nгo deu muito certo, ele acabava morrendo.


Re: Diminuir dano da arma - PT - 08.11.2018

https://sampforum.blast.hk/showthread.php?tid=330005


Re: Diminuir dano da arma - Malandrin - 08.11.2018

й mais ou menos assim:

PHP код:
public OnPlayerTakeDamage(playeridissueridFloatamountweaponid)
{
    new 
Float:life;
    
GetPlayerHealth(playeridlife);

    switch(
weaponid)
    {
        case 
35:
        {
            
SetPlayerHealth(playeridlife-50);
        }
    }
    return 
1;




Re: Diminuir dano da arma - KoloradO - 08.11.2018

O melhor jeito й vocк usar SetPlayerTeam em todos os players e em OnPlayerGiveDamage vocк configura o dano.
Os outros mйtodos eu ja tentei todos e pode atй funcionar mas fica bugado.

O problema de fazer isso й que buga na hora do player morrer, entгo vocк tem que configurar um jeito do player morrer quando a vida acabar, nгo fiz isso aqui mas se quiser eu faзo e posto.

Exemplo:

PHP код:
#include <a_samp>
new PlayerTeam[MAX_PLAYERS];
public 
OnPlayerSpawn(playerid){
    
SetPlayerTeam(playerid0);
    
PlayerTeam[playerid] = 0;
    return 
1;
}
public 
OnPlayerGiveDamage(playeriddamagedidFloatamountweaponidbodypart)
{
    
// Caso tente matar mesma gang
    
if(PlayerTeam[playerid] == PlayerTeam[damagedid]){
    
        return 
0;
    }
    
    new 
Float:life;
    
GetPlayerHealth(damagedidlife);
    switch(
weaponid)
    {
        case 
35:
        {
            
SetPlayerHealth(damagedidlife-0.5);
        }
    }
    return 
1;
}
// Usar isso no lugar de SetPlayerTeam
stock SetPlayerServerTeam(playeridteamid){
    return 
PlayerTeam[playerid] = teamid;
}
// Usar isso no lugar de GetPlayerTeam
stock GetPlayerServerTeam(playerid){
    return 
PlayerTeam[playerid];




Re: Diminuir dano da arma - MateGPlay - 10.11.2018

acho que eu consegui resolver com:
PHP код:
new Float:HP;
        new 
Float:Armor;
        
GetPlayerArmour(damagedidArmor);
        
GetPlayerHealth(damagedidHP);
        if(
Armor 1)
       {
        if(
weaponid == 38SetPlayerHealth(damagedidHP+amount-46.5);
        if(
Armor <= 100)
        {
        if(
weaponid == 38SetPlayerArmour(damagedidArmor+amount-46.5);
        } 
isso no OnPlayerGiveDamage
Agradeзo a Atenзгo e ajuda de todos.