Thread: [Ajuda] bug desert eagle
View Single Post
Old 03/06/2020, 02:59 AM   #8
k2bi
Big Clucker
 
k2bi's Avatar
 
Join Date: Sep 2017
Location: Novo Horizonte - SP
Posts: 186
Reputation: 5
Default Re: bug desert eagle

PHP Code:
public OnPlayerDeath(playeridkilleridreason)
{
    
InShamal[playerid] = 0;
    
SetPlayerVirtualWorld(playerid0);
    if(
gPlayerUsingLoopingAnim[playerid])
    {
        
gPlayerUsingLoopingAnim[playerid] = 0;
        
TextDrawHideForPlayer(playerid,txtAnimHelper);
    }
    if (
killerid == INVALID_PLAYER_ID) {SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);}
    
SendDeathMessage(killerid,playerid,reason);
    if (
gTeam[killerid] != gTeam[playerid])
    {
        
// Valid kill
        
GivePlayerMoney(killerid5000);
        
exp[killerid] ++;
        
SetPlayerScore(killeridexp[killerid]);
        new 
Kzone IsInZone(killerid);
        new 
Vzone IsInZone(playerid);
        if (
Kzone != -&& Kzone == Vzone && gTeam[killerid] != ZoneOwner[Kzone] && UnderAttack[Kzone] == 0)
        {
            
UnderAttack[Kzone]=gTeam[killerid];
            for (new 
i=0;i<MAX_PLAYERS;i++)
            {
                if  (
gTeam[i]==gTeam[killerid])
                {
                    
GameTextForPlayer(i,"ATACK!",5000,5);
                    
SendClientMessage(i,COLOR_BRIGHTRED,"FIRST GANG WHICH WILL KILL 10 ENEMIES IN AREA.WILL WIN!");
                    
GangZoneFlashForPlayer(i,Kzone,COLOR_BRIGHTRED);
                }
                if  (
gTeam[i]==ZoneOwner[Kzone])
                {
                    
GameTextForPlayer(i,"YOU ARE ATACKED!",5000,5);
                    
SendClientMessage(i,COLOR_BRIGHTRED,"FIRST GANG WHICH WILL KILL 10 ENEMIES IN AREA.WILL WIN!");
                    
GangZoneFlashForPlayer(i,Kzone,COLOR_BRIGHTRED);
                }
            }
        }
        if (
UnderAttack[Kzone]>0)
        {
            if  (
UnderAttack[Kzone]==gTeam[killerid] || gTeam[playerid]==ZoneOwner[Kzone])
            {
                
KillCount[gTeam[killerid]][Kzone]++;
                if (
KillCount[gTeam[killerid]][Kzone] == 10)
                {
                    
UnderAttack[Kzone] = -1;
                    
SetTimerEx("unsafe",300000,0,"d",Kzone);
                    
KillCount[gTeam[killerid]][Kzone]=0;
                    
KillCount[gTeam[playerid]][Kzone]=0;
                    new 
color=getColor(killerid);
                    
GangZoneShowForAll(Kzone,color);
                    for (new 
i=0;i<MAX_PLAYERS;i++)
                    {
                        if  (
gTeam[i]==gTeam[killerid])
                        {
                            
GameTextForPlayer(i,"WE WON!",5000,5);
                            
SendClientMessage(i,COLOR_BRIGHTRED,"ZONE WILL BE SAFE FOR 5 MINUTES.");
                            
GangZoneStopFlashForPlayer(i,Kzone);
                        }
                        if  (
gTeam[i]==ZoneOwner[Kzone])
                        {
                            
GameTextForPlayer(i,"WE LOST!",5000,5);
                            
SendClientMessage(i,COLOR_BRIGHTRED,"YOU HAVE TO WHAIT FOR 5 MINUTES BEFORE ATACKING.");
                            
GangZoneStopFlashForPlayer(i,Kzone);
                        }
                    }
                }
                else
                {
                    new 
kill =10 KillCount[gTeam[killerid]][Kzone];
                    
format(TEXT,sizeof(TEXT),"We still have to kill %d enemies",kill);
                    
SendClientMessage(killerid,COLOR_BRIGHTRED,TEXT);
                }
            }
        }
        else
        {
            
//Team Killer!
            
new warning[256];
            
format(warningsizeof(warning), "Be Careful!You Were Punished for killing Team Member.");
            
SendClientMessage(killerid0xFFFF00AAwarning);
            
SetPlayerScore(killeridGetPlayerScore(killerid) - 1);
            
GivePlayerMoney(killerid, -5000);
        }
    }
    return 
1;

Se o bug persistir, use o printf em todas as condições para ver se todas estão sendo verificadas corretamente quando o player morre.
k2bi is offline   Reply With Quote