[ajuda] gang zones
#1

pawn Код:
public OnPlayerEnterCheckpoint(playerid)
{
    if(IsPlayerInCheckpoint(playerid))
    {
        new msg[82];
        new sendername[MAX_PLAYER_NAME];
        GetPlayerName(playerid, sendername, sizeof(sendername));
        SetTimerEx("Checkp", 60000, false, "d", playerid);
        GangZoneFlashForAll(police, 0xFF000096);
        if(policia[playerid])
        {
            format(msg, sizeof(msg), "[BDP] %s e os Policiais estгo dominando uma area no /CS", sendername);
            SendClientMessageToAll(-1, msg);
            return 1;
        }
        else if(ladrao[playerid])
        {
            format(msg, sizeof(msg), "[BDP] %s e os Ladrхes estгo dominando uma area no /CS", sendername);
            SendClientMessageToAll(-1, msg);
            return 1;
        }
        return 1;
    }
    return 1;
}
pawn Код:
forward Checkp(playerid);
public Checkp(playerid)
{
    if(ladrao[playerid])
    {
        if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2, 1204.2378, 2791.3430, 10.8203))
        {
            if(gz[0] == 1) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(police);
            gz[0] = 1;
            return 1;
        }
        else if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2,1363.3153, 2777.4819, 10.8203))
        {
            if(gz[1] == 1) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(terror);
            gz[1] = 1;
            return 1;
        }
        return 1;
    }
    else if(policia[playerid])
    {
        if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2, 1363.3153, 2777.4819, 10.8203))
        {
            if(gz[1] == 2) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(terror);
            gz[1] = 2;
            return 1;
        }
        else if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2, 1204.2378, 2791.3430, 10.8203))
        {
            if(gz[0] == 2) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(police);
            gz[0] = 2;
            return 1;
        }
        return 1;
    }
    return 1;
}
quando o flash parar a gang zone ira mudar para outra cor?
e como faзo para caso o player nгo tiver no check point quando acabar de dominar a gang zone voltar a cor normal?
Reply
#2

Use IsPlayerInRangeOfPoint para ver se o player estб perto de x,y e z coordenadas a um raio tal.
Reply
#3

Quando vc poe GangZoneFlashForAll ele vai piscar entre a cor que vc colocar no (zoneid, COR) e a cor que a GZ tinha antes.

Se isso que vc postou й a public Checkp, verifica onde ta comentado:
pawn Код:
if(ladrao[playerid])
    {
        if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2, 1204.2378, 2791.3430, 10.8203))
        {
            if(gz[0] == 1) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(police);
            gz[0] = 1;
            return 1;
        }
        else if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2,1363.3153, 2777.4819, 10.8203))
        {
            if(gz[1] == 1) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(terror);
            gz[1] = 1;
            return 1;
        }
        else
        {
            //significa que ele ta fora das gangzones
        }
        return 1;
    }
    else if(policia[playerid])
    {
        if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2, 1363.3153, 2777.4819, 10.8203))
        {
            if(gz[1] == 2) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(terror);
            gz[1] = 2;
            return 1;
        }
        else if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2, 1204.2378, 2791.3430, 10.8203))
        {
            if(gz[0] == 2) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(police);
            gz[0] = 2;
            return 1;
        }
        else
        {
            //significa que ele ta fora das gangzones
        }
        return 1;
    }
    return 1;
}
Reply
#4

Quote:
Originally Posted by Pharrel
Посмотреть сообщение
Quando vc poe GangZoneFlashForAll ele vai piscar entre a cor que vc colocar no (zoneid, COR) e a cor que a GZ tinha antes.

Se isso que vc postou й a public Checkp, verifica onde ta comentado:
pawn Код:
if(ladrao[playerid])
    {
        if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2, 1204.2378, 2791.3430, 10.8203))
        {
            if(gz[0] == 1) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(police);
            gz[0] = 1;
            return 1;
        }
        else if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2,1363.3153, 2777.4819, 10.8203))
        {
            if(gz[1] == 1) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(terror);
            gz[1] = 1;
            return 1;
        }
        else
        {
            //significa que ele ta fora das gangzones
        }
        return 1;
    }
    else if(policia[playerid])
    {
        if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2, 1363.3153, 2777.4819, 10.8203))
        {
            if(gz[1] == 2) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(terror);
            gz[1] = 2;
            return 1;
        }
        else if(IsPlayerInCheckpoint(playerid) && IsPlayerInRangeOfPoint(playerid, 2, 1204.2378, 2791.3430, 10.8203))
        {
            if(gz[0] == 2) return SendClientMessage(playerid, -1, "[BDP] Esta area jб estб dominada pela sua equipe");
            GangZoneStopFlashForAll(police);
            gz[0] = 2;
            return 1;
        }
        else
        {
            //significa que ele ta fora das gangzones
        }
        return 1;
    }
    return 1;
}
se caso eu estiver dominando a area como ladrao e chegar um policia e entrar no check point tbm, vai ficar meio louco, pra isso nгo acontecer eu deveria usar um bool por exemplo dominando[2] ?
pawn Код:
else
        {
            //significa que ele ta fora das gangzones
        }
como faзo pra gang zone parar de piscar e nгo mudar de cor?
Reply
#5

Talvez colocando a mesma cor que a mesma jб possui.
Reply
#6

Consegui ..
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)