[Ajuda] if dano mesmo time
#1

Entгo pessoal queria colocar isso no meu onplayergive damage, pq o pessoal fica atirando no mesmo time, tipo cop sem atirar em cop, nгo perde vida, mas atrapalha e muito, como eu faзo, pq como nгo da dano n chama nenhum callback

public OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid, bodypart)
pawn Код:
if(GetPlayerTeam(playerid) == GetPlayerTeam(damagedid))
        {
            if(GetPlayerTeam(playerid == 255)) return 0;
            new string[50];
            new Float:slx, Float:sly, Float:slz;
            GetPlayerPos(damagedid, slx, sly, slz);
            SetPlayerPos(damagedid, slx, sly, slz+2);
            PlayerPlaySound(damagedid, 1130, slx, sly, slz+2);
            format(string, sizeof(string), "~r~DONT ATTACK ~b~TEAM MATES! ~w~OR INNOCENTS!");
            GameTextForPlayer(damagedid, string, 2000, 3);
        }
Reply
#2

OnPlayerWeaponShoot (usa o hitid)
Reply
#3

Quote:
Originally Posted by n0minal
Посмотреть сообщение
OnPlayerWeaponShoot (usa o hitid)
Nгo ficou funcionando direito nгo, quando um COP atira nada acontece, n perde vida, n faz anim, nada

pawn Код:
public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ)
{
    if(playerid != INVALID_PLAYER_ID && hittype != INVALID_PLAYER_ID) {
        if(!IsACop(playerid))
        {
            if(wanted[playerid] < 3)
            {
                wanted[playerid]+=1;
            }
        }
        if(GetPlayerTeam(playerid) == GetPlayerTeam(hittype))
        {
            if(GetPlayerTeam(playerid == 255)) return 0;
            new string[50];
            new Float:slx, Float:sly, Float:slz;
            GetPlayerPos(hittype, slx, sly, slz);
            SetPlayerPos(hittype, slx, sly, slz+2);
            PlayerPlaySound(hittype, 1130, slx, sly, slz+2);
            format(string, sizeof(string), "~r~DONT ATTACK ~b~TEAM MATES! ~w~OR INNOCENTS!");
            GameTextForPlayer(hittype, string, 2000, 3);
        }
    }
    return 1;
}
Reply
#4

Tente na OnPlayerTakeDamage.

E use else,pra caso os dois nгo forem do mesmo time.
Reply
#5

Ta errado esse seu algoritimo ai, tenta esse:

Код:
if(hittype == BULLET_HIT_TYPE_PLAYER && GetPlayerTeam(playerid) == GetPlayerTeam(hitid))
{
//aqui coloca seu codigo pra n atacar msm time e tal
return 0;//desincroniza a bala pra ela nгo dar dano
}
Postado via mobile (Samsung Galaxy Young a.k.a iPobre).


@Edit tira aquele return 0 do if(GetPlayerTeam(playerid) == 255) e coloca return 1.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)