SA-MP Forums Archive
[Ajuda] Problema com onplayerdeath - 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] Problema com onplayerdeath (/showthread.php?tid=478305)



Problema com onplayerdeath - luccagomes15 - 29.11.2013

Gente tudo que eu coloco no meu onplayerdeath as vezes funciona as vezes nгo, tanto chat kill como contrato, como suspeito morto, menos hospital sempre funciona, eu acho que esse problema й pelo anti invuneravel que eu peguei aqui no fуrum, n sei, mas qnd um player mata o outro n ta indo quase nada, tipo policial mata um procurado varias vezes nunca vai preso ai do nada mata e vai preso mt estranho, alguem da um help

Anti Invuneravel q eu peguei, e agora se eu tirar isso ninguem se mata mais,qnd um atiran o outro em vez de sair sangue sobe kkkk
pawn Код:
public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid)
{
            new
                Float: vida,
                Float: armadura,
                Float: dmg;

            GetPlayerArmour(damagedid, armadura);
            GetPlayerHealth(damagedid, vida);

            if (armadura > 0)
            {
                if (amount > armadura)
                {
                    dmg = amount - armadura;
                    vida = vida - dmg;
                    SetPlayerArmour(damagedid, 0.0);
                    SetPlayerHealth(damagedid, vida);
                    return 1;
                }
                armadura = armadura - amount;
                SetPlayerArmour(damagedid, armadura);
            }
            if (armadura < 1)
            {
                vida = vida - amount;
                SetPlayerHealth(damagedid, vida);
            }

    return 1;
}
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
    new gunname[32], pt[64], fName[MAX_PLAYER_NAME], sName[MAX_PLAYER_NAME];
    GetWeaponName(reason,gunname,sizeof(gunname));
    GetPlayerName(playerid,fName,MAX_PLAYER_NAME);
    GetPlayerName(killerid,sName,MAX_PLAYER_NAME);
    format(pt, sizeof(pt), "%s matou %s com a %s.", sName, fName, gunname);
    SendClientMessageToAll(0xFFFFFFAA,pt);

//===================================================================

    if(PlayerInfo[playerid][pVIP] < 1 && SistemaHospital == 1 && helpertrampando[playerid] < 1 && admtrampando[playerid] < 1)
    {
        if(PlayerInfo[playerid][pJailed] >= 1){return SendClientMessage(playerid,COLOR_LIGHTRED,"Vocк Saiu do Hospital e Foi Preso");}
        if(PlayerInfo[playerid][pOrigem] == 2)
        {
            SendClientMessage(playerid, COLOR_GRAD2, "[Informaзгo] Vocк serб internado no hospital da sua cidade {FFFFFF}(Hospital Regional de Vila Medeiros)");
            PlayerInfo[playerid][pTempoHospitalizado] = 170;
            storeexit[playerid] = 4;
            PlayerInfo[playerid][pHospitalID] = 1;
        }
        else
        {
            SendClientMessage(playerid, COLOR_GRAD2, "[Informaзгo] Vocк serб internado no hospital da sua cidade {FFFFFF}(Hospital Regional de JD.Brasil)");
            PlayerInfo[playerid][pTempoHospitalizado] = 180;
            storeexit[playerid] = 5;
            PlayerInfo[playerid][pHospitalID] = 2;
        }
    }
    if(PlayerInfo[playerid][pVIP] > 0 && SistemaHospital == 1)
    {
            SendClientMessage(playerid, COLOR_LIGHTBLUE, "Vocк й um player VIP e ficarб metade da metade do tempo no hospital");
            SendClientMessage(playerid, COLOR_GRAD2, "[Informaзгo] Vocк serб internado no hospital da sua cidade {FFFFFF}(Hospital Regional de JD.Brasil)");
            PlayerInfo[playerid][pTempoHospitalizado] = 30;
            storeexit[playerid] = 5;
            PlayerInfo[playerid][pHospitalID] = 2;
    }
    if(concorrendoevento[playerid] == 1)
    {
        concorrendoevento[playerid] = 0;
        DisablePlayerRaceCheckpoint(playerid);
        if(corridainiciada) { checknumero[playerid] = 0; }
        if(dirtiniciado) { checknumerodirt[playerid] = 0; }
    }
    StopPlayerHoldingObject(playerid);
/*    if(killerid == INVALID_PLAYER_ID)
    {
        SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
    }
    else
    {
        SendDeathMessage(killerid,playerid,reason);
    } */

    if(PlayerInfo[killerid][pJailed] == 2 && PlayerInfo[playerid][pJailed] == 2)
    {
        SendClientMessage(killerid, COLOR_RED,"Vocк foi Kickado por Cometer DM na Cela Admin.");
        Kick(killerid);
        //return 1;
    }
    new Float:px,Float:py,Float:pz;
    PlayerInactivity[playerid] = 0;
    DropWeapons(playerid);
    DropVida(playerid);
    HaveTaser[playerid] = 0;
    SetPVarInt(playerid, "spawned", false);
    gPlayerSpawned[playerid] = 0;
    PlayerInfo[playerid][pLocal] = 255;
    GetPlayerPos(playerid, px, py, pz);
    spawnado[playerid] = 0;
    if (gPlayerTerminal[playerid] != 0)
    {
        BusrouteEnd(playerid);
    }
    if (gPlayerTerminalTrafic[playerid] != 0)
    {
        BusrouteEnd(playerid);
    }
    if(PlayerPaintballing[killerid] == 0)
    {
        //SetPlayerCriminal(killerid, 255, "Assasinato");
        PlayerInfo[killerid][pKills] += 1;
    }
    if(TendoGuerra == 1 && IsPlayerInTerritorio(playerid) && IsPlayerInTerritorio(killerid))
    {
        if(PlayerInfo[killerid][pMembro] == 3 || PlayerInfo[killerid][pLider] == 3)
        {
            if(PlayerInfo[playerid][pMembro] == 6 || PlayerInfo[playerid][pLider] == 6)
            {
                Territorio[talmortos] += 1;
            }
            if(PlayerInfo[playerid][pMembro] == 15 || PlayerInfo[playerid][pLider] == 15)
            {
                Territorio[almortos] += 1;
            }
            if(PlayerInfo[playerid][pMembro] == 28 || PlayerInfo[playerid][pLider] == 28)
            {
                Territorio[hamamortos] += 1;
            }
        }
        if(PlayerInfo[killerid][pMembro] == 6 || PlayerInfo[killerid][pLider] == 6)
        {
            if(PlayerInfo[playerid][pMembro] == 3 || PlayerInfo[playerid][pLider] == 3)
            {
                Territorio[exemortos] += 1;
            }
            if(PlayerInfo[playerid][pMembro] == 15 || PlayerInfo[playerid][pLider] == 15)
            {
                Territorio[almortos] += 1;
            }
            if(PlayerInfo[playerid][pMembro] == 28 || PlayerInfo[playerid][pLider] == 28)
            {
                Territorio[hamamortos] += 1;
            }
        }
        if(PlayerInfo[killerid][pMembro] == 15 || PlayerInfo[killerid][pLider] == 15)
        {
            if(PlayerInfo[playerid][pMembro] == 3 || PlayerInfo[playerid][pLider] == 3)
            {
                Territorio[exemortos] += 1;
            }
            if(PlayerInfo[playerid][pMembro] == 6 || PlayerInfo[playerid][pLider] == 6)
            {
                Territorio[talmortos] += 1;
            }
            if(PlayerInfo[playerid][pMembro] == 28 || PlayerInfo[playerid][pLider] == 28)
            {
                Territorio[hamamortos] += 1;
            }
        }
        if(PlayerInfo[killerid][pMembro] == 28 || PlayerInfo[killerid][pLider] == 28)
        {
            if(PlayerInfo[playerid][pMembro] == 3 || PlayerInfo[playerid][pLider] == 3)
            {
                Territorio[hamamortos] += 1;
            }
            if(PlayerInfo[playerid][pMembro] == 6 || PlayerInfo[playerid][pLider] == 6)
            {
                Territorio[talmortos] += 1;
            }
            if(PlayerInfo[playerid][pMembro] == 15 || PlayerInfo[playerid][pLider] == 15)
            {
                Territorio[almortos] += 1;
            }
        }
    }
//=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=====( SUSPEITO MORTO )=-=-=-=-=-=-=-=-=-=-=-=-=-=-===//
    if(WantedPoints[playerid] >= 1)
    {
            new price = WantedPoints[playerid] * 100;
            if(PlayerInfo[killerid][pMembro] == 1 || PlayerInfo[killerid][pLider] == 1 || PlayerInfo[killerid][pMembro] == 2 || PlayerInfo[killerid][pLider] == 2 || PlayerInfo[killerid][pMembro] == 3 || PlayerInfo[killerid][pLider] == 3 || PlayerInfo[killerid][pMembro] == 16 || PlayerInfo[killerid][pLider] == 16)
            {
                format(gstring, sizeof(gstring), "~w~Suspeito ~w~Morto~w~Bonus~g~R$%d", price);
                GameTextForPlayer(killerid, gstring, 5000, 1);
                ConsumingMoney[killerid] = 1;
                GivePlayerMoney(killerid, price / 2);
                PlayerPlaySound(killerid, 1058, 0.0, 0.0, 0.0);
                GivePlayerMoney(playerid, - price);
                PlayerInfo[playerid][pJailed] = 1;
                PlayerInfo[playerid][pJailTime] = (WantedPoints[playerid])*(150);
                format(gstring, sizeof(gstring), "* Vocк estб preso por %d Segundos na Policia Militar, e perdeu R$%d por trocar tiros e fugir dos policiais.", PlayerInfo[playerid][pJailTime], price);
                SendClientMessage(playerid, COLOR_LIGHTRED, gstring);
                WantedPoints[playerid] = 0;
                SetPlayerWantedLevel(playerid, 0);
                PlayerInfo[playerid][pDrogas] = 0;
                PlayerInfo[playerid][pDrogas2] = 0;
                PlayerInfo[playerid][pDrogas3] = 0;
                PlayerInfo[playerid][pMats] = 0;
                if(PlayerCuffed[playerid])
                {
                    ClearAnimations(playerid);
                    RemovePlayerAttachedObject(playerid,4);
//                  SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE); warning
                    TogglePlayerControllable(playerid, 1);
                    PlayerCuffed[playerid] = 0;
                    PlayerInfo[playerid][pMuted] = 0;
                }
            }
    }
//=-=-=-=-=-=-=-=-=-=-==( NOVO ROUBAR )=-=-=-=-=-=-=-=-=-=-=
    if(ProvocoOperacao[playerid] == 1)
    {
        new string[128];
        GetPlayerName(playerid, sendername, sizeof(sendername));
        format(string, sizeof(string), "{808000}* {FF0000} %s {808000}e os{FF0000} %s {FF0000}nгo {808000}conseguiram finalizar a Operaзгo no Casarгo com sucesso! ", sendername, NomeORG(playerid));
        SendClientMessageToAll(COR_CV, string);
        ProvocoOperacao[playerid] = 0; roubando[playerid] = 0; operacao = 0; KillTimer(tempoop); tempooperacao = 0;
    }
    if(ProvocoBanco[playerid] == 1)
    {
        ProvocoBanco[playerid] = 0; roubando[playerid] = 0; roubobanco = 0; KillTimer(tempobanco); temporoubobanco = 0;
if(IsACop(playerid))
{
    new stest[64];
    format(stest, sizeof(stest), "COPOM: Missгo cumprida! Os assaltantes nгo conseguiram roubar o banco!");
    SendClientMessage(playerid, TEAM_BLUE_COLOR, stest);
}
    }
    if(Provocoposto[playerid] == 1)
    {
        Provocoposto[playerid] = 0; roubando[playerid] = 0; rouboposto = 0; KillTimer(tempoposto); temporouboposto = 0;
if(IsACop(playerid))
{
    new stest[64];
    format(stest, sizeof(stest), "COPOM: Missгo cumprida! Os assaltantes nгo conseguiram roubar o posto sul de LS!");
    SendClientMessage(playerid, TEAM_BLUE_COLOR, stest);
}
    }
    if(ProvocoLot[playerid] == 1)
    {
        ProvocoLot[playerid] = 0; roubando[playerid] = 0; roubolot = 0; KillTimer(tempolot); temporoubolot = 0;
if(IsACop(playerid))
{
    new stest[64];
    format(stest, sizeof(stest), "COPOM: Missгo cumprida! Os assaltantes nгo conseguiram roubar a loterica!");
    SendClientMessage(playerid, TEAM_BLUE_COLOR, stest);
}
    }
    if(ProvocoLoja1[playerid] == 1)
    {
        ProvocoLoja1[playerid] = 0; roubando[playerid] = 0; rouboloja1 = 0; KillTimer(tempoloja1); temporouboloja1 = 0;
if(IsACop(playerid))
{
    new stest[64];
    format(stest, sizeof(stest), "COPOM: Missгo cumprida! Os assaltantes nгo conseguiram roubar a loja de armas 1!");
    SendClientMessage(playerid, TEAM_BLUE_COLOR, stest);
}
    }
    if(ProvocoLoja2[playerid] == 1)
    {
        ProvocoLoja2[playerid] = 0; roubando[playerid] = 0; rouboloja2 = 0; KillTimer(tempoloja2); temporouboloja2 = 0;
if(IsACop(playerid))
{
    new stest[64];
    format(stest, sizeof(stest), "COPOM: Missгo cumprida! Os assaltantes nгo conseguiram roubar a loja de armas 2!");
    SendClientMessage(playerid, TEAM_BLUE_COLOR, stest);
}
    }
    if(ProvocoPrefe[playerid] == 1)
    {
        ProvocoPrefe[playerid] = 0; roubando[playerid] = 0; rouboprefe = 0; KillTimer(tempoprefe); temporouboprefe = 0;
if(IsACop(playerid))
{
    new stest[64];
    format(stest, sizeof(stest), "COPOM: Missгo cumprida! Os assaltantes nгo conseguiram roubar a prefeitura!");
    SendClientMessage(playerid, TEAM_BLUE_COLOR, stest);
}
    }
    if(ProvocoPuteiro2[playerid] == 1)
    {
        ProvocoPuteiro2[playerid] = 0; roubando[playerid] = 0; roubandoPuteiro = 0; KillTimer(TempoPuteiro); rroubandoPuteiro = 0;
if(IsACop(playerid))
{
    new stest[64];
    format(stest, sizeof(stest), "COPOM: Missгo cumprida! Os assaltantes nгo conseguiram roubar o puteiro!");
    SendClientMessage(playerid, TEAM_BLUE_COLOR, stest);
}
    }
    if(Provoco24[playerid] == 1)
    {
        Provoco24[playerid] = 0; roubando[playerid] = 0; roubando24 = 0; KillTimer(tempo24); rroubando24 = 0;
if(IsACop(playerid))
{
    new stest[64];
    format(stest, sizeof(stest), "COPOM: Missгo cumprida! Os assaltantes nгo conseguiram roubar a 24-7!");
    SendClientMessage(playerid, TEAM_BLUE_COLOR, stest);
}
    }
    if(Provocosorvete[playerid] == 1)
    {
        Provocosorvete[playerid] = 0; roubando[playerid] = 0; roubandosorvete = 0; KillTimer(tempo24); rroubandosorvete = 0;
if(IsACop(playerid))
{
    new stest[64];
    format(stest, sizeof(stest), "COPOM: Missгo cumprida! Os assaltantes nгo conseguiram roubar a sorveteria!");
    SendClientMessage(playerid, TEAM_BLUE_COLOR, stest);
}
    }
    if(Provocoshopping[playerid] == 1)
    {
        Provocoshopping[playerid] = 0; roubando[playerid] = 0; roubandoshopping = 0; KillTimer(tempo24); rroubandoshopping = 0;
if(IsACop(playerid))
{
    new stest[64];
    format(stest, sizeof(stest), "COPOM: Missгo cumprida! Os assaltantes nгo conseguiram roubar o shopping!");
    SendClientMessage(playerid, TEAM_BLUE_COLOR, stest);
}
    }
    if(Provococlube[playerid] == 1)
    {
        Provococlube[playerid] = 0; roubando[playerid] = 0; roubandoclube = 0; KillTimer(tempo24); rroubandoclube = 0;
if(IsACop(playerid))
{
    new stest[64];
    format(stest, sizeof(stest), "COPOM: Missгo cumprida! Os assaltantes nгo conseguiram roubar o clube VIP!");
    SendClientMessage(playerid, TEAM_BLUE_COLOR, stest);
}
    }
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=( FIM ROUBAR )=-=-=-=-=-=-=-=-=-=-=-=-=-=-==
    if(ProvocoMata[playerid] == 1)
    {
        GangZoneStopFlashForAll(GZMata);
        GangZoneShowForAll(GZMata, 0xFFFFFF96);
        GuerranoMata = 0;
        ProvocoMata[playerid] = 0;
        donomata = 0;
        Dominando[playerid] = 0;
        KillTimer(TempoGuerraMata);
    }
    if(ProvocoHotel[playerid] == 1)
    {
        GangZoneStopFlashForAll(GZHotel);
        GangZoneShowForAll(GZHotel, 0xFFFFFF96);
        GuerranoHotel = 0;
        ProvocoHotel[playerid] = 0;
        donohotel = 0;
        Dominando[playerid] = 0;
        KillTimer(TempoGuerraHotel);
    }
    if(ProvocoCasarao[playerid] == 1)
    {
        GangZoneStopFlashForAll(GZCasarao);
        GangZoneShowForAll(GZCasarao, 0xFFFFFF96);
        GuerranoCasarao = 0;
        ProvocoCasarao[playerid] = 0;
        donocasarao = 0;
        Dominando[playerid] = 0;
        KillTimer(TempoGuerraCasarao);
    }
    if(ProvocoEstacao[playerid] == 1)
    {
        GangZoneStopFlashForAll(GZEstacao);
        GangZoneShowForAll(GZEstacao, 0xFFFFFF96);
        GuerranaEstacao = 0;
        ProvocoEstacao[playerid] = 0;
        donoestacao = 0;
        Dominando[playerid] = 0;
        KillTimer(TempoGuerraEstacao);
    }
    if(ProvocoEstacaoLV[playerid] == 1)
    {
        GangZoneStopFlashForAll(GZEstacaoLV);
        GangZoneShowForAll(GZEstacaoLV, 0xFFFFFF96);
        GuerranaEstacaoLV = 0;
        ProvocoEstacaoLV[playerid] = 0;
        donoestacaoLV = 0;
        Dominando[playerid] = 0;
        KillTimer(TempoGuerraEstacaoLV);
    }
    if(Provocoroda[playerid] == 1)
    {
        GangZoneStopFlashForAll(GZroda);
        GangZoneShowForAll(GZroda, 0xFFFFFF96);
        Guerranaroda = 0;
        Provocoroda[playerid] = 0;
        donoroda = 0;
        Dominando[playerid] = 0;
        KillTimer(TempoGuerraroda);
    }
    if(Provocopg[playerid] == 1)
    {
        GangZoneStopFlashForAll(GZparkglen);
        GangZoneShowForAll(GZparkglen, 0xFFFFFF96);
        Guerranapg = 0;
        Provocopg[playerid] = 0;
        donopg = 0;
        Dominando[playerid] = 0;
        KillTimer(TempoGuerrapg);
    }
    if(ProvocoFavela[playerid] == 1)
    {
        GangZoneStopFlashForAll(GZFavela);
        GangZoneShowForAll(GZFavela, 0xFFFFFF96);
        GuerranaFavela = 0;
        ProvocoFavela[playerid] = 0;
        donoFavela = 0;
        Dominando[playerid] = 0;
        KillTimer(TempoGuerraFavela);
    }
    if(ProvocoSkate[playerid] == 1)
    {
        GangZoneStopFlashForAll(GZSkate);
        GangZoneShowForAll(GZSkate, 0xFFFFFF96);
        GuerranoSkate = 0;
        ProvocoSkate[playerid] = 0;
        donoskate = 0;
        Dominando[playerid] = 0;
        KillTimer(TempoGuerraSkate);
    }
    if(GetPlayerState(killerid) == 2)
    {
        GetPlayerName(killerid,kickname,sizeof(kickname));
        format(gstring,sizeof(gstring),"Atenзгo: {E8000B}%s ID:[%d]{FFF8F8} cometeu DB em {E8000B}%s ID:[%d]{FFF8F8} e serб kickado por um admin !",kickname,killerid,PlayerName(playerid),playerid);
        SendClientMessageToAll(COLOR_WHITE,gstring);
    }
    if(reason == 38)
    {
        if(IsPlayerConnected(killerid))
        {
            format(gstring, 128, "AdmAviso: [%d]%s usou minigun em %s.",killerid,PlayerName(killerid),PlayerName(playerid));
            ABroadCast(COLOR_YELLOW,gstring,1);
            printf("%s", gstring);
        }
    }
    if(reason == 35)
    {
        if(IsPlayerConnected(killerid))
        {
            format(gstring, 128, "AdmAviso: [%d]%s usou Bazuka em %s.",killerid,PlayerName(killerid),PlayerName(playerid));
            ABroadCast(COLOR_YELLOW,gstring,1);
            printf("%s", gstring);
        }
    }
    if(reason == 36)
    {
        if(IsPlayerConnected(killerid))
        {
            format(gstring, 128, "AdmAviso: [%d]%s usou Bazuka =2= em %s.",killerid,PlayerName(killerid),PlayerName(playerid));
            ABroadCast(COLOR_YELLOW,gstring,1);
            printf("%s", gstring);
        }
    }
    if(reason == 26)
    {
        if(IsPlayerConnected(killerid))
        {
            format(gstring, 128, "AdmAviso: [%d]%s usou 12 Cano cerrado em %s.",killerid,PlayerName(killerid),PlayerName(playerid));
            ABroadCast(COLOR_YELLOW,gstring,1);
            printf("%s", gstring);
        }
    }
    if(reason == 32)
    {
        if(IsPlayerConnected(killerid))
        {
            format(gstring, 128, "AdmAviso: [%d]%s usou TEC9 em %s.",killerid,PlayerName(killerid),PlayerName(playerid));
            ABroadCast(COLOR_YELLOW,gstring,1);
            printf("%s", gstring);
        }
    }
    if (gPlayerCheckpointStatus[playerid] > 4 && gPlayerCheckpointStatus[playerid] < 11)
    {
        DisablePlayerCheckpoint(playerid);
        gPlayerCheckpointStatus[playerid] = CHECKPOINT_Nenhum;
    }
    new caller = Mobile[playerid];
    if(caller != 255)
    {
        if(caller < 255)
        {
            SendClientMessage(caller,  COLOR_GRAD2, "Morreram do outro lado da linha....");
            CellTime[caller] = 0;
            CellTime[playerid] = 0;
            Mobile[caller] = 255;
        }
        Mobile[playerid] = 255;
        CellTime[playerid] = 0;
    }
    ClearCrime(playerid);
    if(PlayerPaintballing[playerid] != 0)
    {
        PlayerPaintballKills[killerid] ++;
        if(PlayerPaintballKills[killerid] > PaintballWinnerKills)
        {
            PaintballWinner = killerid;
            PaintballWinnerKills = PlayerPaintballKills[killerid];
            for(new i = 0; i < MAX_PLAYERS; i++)
            {
                if(IsPlayerConnected(i))
                {
                    if(PlayerPaintballing[i] != 0)
                    {
                        format(gstring, sizeof(gstring), "* %s estб em 1є com %d Kills.",PlayerName(killerid),PaintballWinnerKills);
                        SendClientMessage(i, COLOR_WHITE, gstring);
                    }
                }
            }
        }
    }
    if(PlayerInfo[playerid][pHeadValue] > 0)
    {
        if(IsPlayerConnected(killerid))
        {
            if(gTeam[killerid] == 10 || PlayerInfo[killerid][pLider] == 8  || PlayerInfo[killerid][pMembro] == 8)
            {
                if(GoChase[killerid] == playerid)
                {
                    ConsumingMoney[killerid] = 1;
                    GivePlayerMoney(killerid, PlayerInfo[playerid][pHeadValue]);
                    format(gstring,128,"Vocк foi morto por contrato pelo hitman %s no valor de %d e nгo foi DM!",PlayerName(killerid),PlayerInfo[playerid][pHeadValue]);
                    SendClientMessage(playerid, COLOR_YELLOW, gstring);
                    format(gstring, sizeof(gstring), "<< Assasino %s Cumpriu o contrato em %s e recebeu $%d >>",PlayerName(killerid),PlayerName(playerid),PlayerInfo[playerid][pHeadValue]);
                    SendClientMessageToAll(COLOR_YELLOW, gstring);
                    PlayerInfo[playerid][pHeadValue] = 0;
                    GotHit[playerid] = 0;
                    GetChased[playerid] = 999;
                    GoChase[killerid] = 999;
                }
            }
        }
    }
    if(PlayerInfo[playerid][pHeadValueT] > 0)
    {
        if(IsPlayerConnected(killerid))
        {
            if(PlayerInfo[killerid][pLider] == 27  || PlayerInfo[killerid][pMembro] == 27)
            {
                if(GoChase[killerid] == playerid)
                {
                    ConsumingMoney[killerid] = 1;
                    GivePlayerMoney(killerid, PlayerInfo[playerid][pHeadValue]);
                    format(gstring,128,"Vocк foi morto por contrato pelo triad %s no valor de %d e nгo foi DM!",PlayerName(killerid),PlayerInfo[playerid][pHeadValueT]);
                    SendClientMessage(playerid, COLOR_YELLOW, gstring);
                    format(gstring,128,"<< Triad %s Cumpriu o contrato em %s e recebeu $%d >>",PlayerName(killerid),PlayerName(playerid),PlayerInfo[playerid][pHeadValueT]);
                    SendFamilyMessage(27, COLOR_YELLOW, gstring);
                    PlayerInfo[playerid][pHeadValueT] = 0;
                    GotTri[playerid] = 0;
                    GetChased[playerid] = 999;
                    GoChase[killerid] = 999;
                }
            }
        }
    }
    if(PlayerInfo[killerid][pHeadValue] > 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pLider] == 8  || PlayerInfo[playerid][pMembro] == 8)
            {
                if(GoChase[playerid] == killerid)
                {
                    ConsumingMoney[playerid] = 1;
                    format(gstring,128,"<< Assasino %s foi morto por %s e perdeu o contrato >>",PlayerName(playerid),PlayerName(killerid));
                    SendFamilyMessage(8, COLOR_YELLOW, gstring);
                    PlayerInfo[killerid][pHeadValue] = 0;
                    GotHit[killerid] = 0;
                    GetChased[killerid] = 999;
                    GoChase[playerid] = 999;
                }
            }
        }
    }
    else if(PlayerInfo[killerid][pHeadValueT] > 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pLider] == 27  || PlayerInfo[playerid][pMembro] == 27)
            {
                if(GoChase[playerid] == killerid)
                {
                    ConsumingMoney[playerid] = 1;
                    format(gstring,128,"<< Triad %s foi morto por %s e perdeu o contrato >>",PlayerName(playerid),PlayerName(killerid));
                    SendFamilyMessage(27, COLOR_YELLOW, gstring);
                    PlayerInfo[killerid][pHeadValueT] = 0;
                    GotTri[killerid] = 0;
                    GetChased[killerid] = 999;
                    GoChase[playerid] = 999;
                }
            }
        }
    }
    killerid = INVALID_PLAYER_ID;
    SetPlayerColor(playerid,COLOR_GRAD2);
    return 1;
}



Re: Problema com onplayerdeath - luccagomes15 - 30.11.2013

O que eu faзo gente?


Re: Problema com onplayerdeath - DannielCooper - 30.11.2013

este cуdigo de 'Anti Invuneravel' estб mal feito... muito mal feito... recomendo ele para servidores que sejam de 4FUN, DM, etc


Re: Problema com onplayerdeath - luccagomes15 - 02.12.2013

Foi mal havia perdido o post, mas pq ta ruim cara? Ta funcionando, os caras de xiter perde vida, mas ta bugando meu onplayerdeath todo, sу pode ser isso, um amigo q me passou, mas se n tiver alem dos xiteres abusarem, n tira nem vida qnd atira! O que tem que arrumar ai?


Re: Problema com onplayerdeath - luccagomes15 - 05.12.2013

galera ajuda ai, o que eu faзo!?


Re: Problema com onplayerdeath - luccagomes15 - 06.12.2013

upppp


Re: Problema com onplayerdeath - arakuta - 06.12.2013

Quando vocк seta a vida de um player para 0, nos calculos to tiro na skin, OnPlayerDeath й executada sem nenhum killerid.

O fato de as vezes funcionar e as vezes nгo, pode ser o tiro no lag que parece tambйm estar presente no servidor


Re: Problema com onplayerdeath - Ley - 06.12.2013

Creio que vocк poderб impedir os xiters de god mod, de uma maneira mais eficaz:

PHP код:
new Floatvidap;
GetPlayerHealth(playeridvidap);
if(
vidap[playerid] > 120) return SetPlayerHealth(playerid100.0); 
Creio que irб funcionar.