[Ajuda] Stock
#1

sei que sou chato pessoal mais podem me ajudar ? kkkk
o objetivo dessa stock seria o player nao dar coletet perto de algum rival , sу q ele consegue dar mesmo asssim , sу aparece a msg

Код:
stock VerificarRival(playerid)
{

for(new i = 0; i < MAX_PLAYERS; ++i)
    {
        if(GetDistanceBetweenPlayers(playerid, i) <= 80)
        {
            if(Player[i][pFaccao] != Player[playerid][pFaccao])
            {
                return 1;
            }
        }
    }
	return 0;
}
Код:
dcmd_coletet(playerid, params[])
{
    #pragma unused params

	if(Player[playerid][pInEvento] == true)
		    return SCM(playerid, COR_ERRO, "[ERRO] Vocк estб no Evento.");
		    
 	if(VerificarRival(playerid)) // Aqui vocк coloca nos comandos que quer proibir quando tiver rival prуximo
    {
    	SendClientMessage(playerid, 0xFF0000FF, "(ERRO) Existe rivais prуximos de vocк!");
    }
    
    if(Player[playerid][pAdmin] >= 1 || Player[playerid][pFrente] >= 1 || Player[playerid][pLider] >= 1 || Player[playerid][pPCRJ] >= 3 || Player[playerid][pPMRJ] >= 3)
	{
	    for(new i = 0; i <= HighestID; i++)
			if(GetDistanceBetweenPlayers(playerid, i) <= 50)
			    if(GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(i))
				{
			    	SetPlayerArmour(i, 100);
					SendFormattedMessage(i, COR_ROXO, "[INFO] %s distribuiu colete para todos perto dele! ", getPName(playerid));
				}

	} else SCM(playerid, COR_ERRO, "[ERRO] Vocк nгo tem permissгo para usar este comando!");

	return 1;
}
Reply
#2

pawn Код:
if(!VerificarRival(playerid))
return SendClientMessage(playerid, -1, "Sei lб");
tenta por o ! na frente

ou

Trocar o != por ==
Reply
#3

vou testar aqui meu mano , ah tenho outra pergunta , para evitar criar tуpicos toda hora queria saber como faзo um ant aliado em que se um player da mesma facзгo atirar no outro , o outro nao perde vida

ja tentei por o SetPlayerTeam , mais queria uma base ou alguma forma de por
Reply
#4

pow manin continua dando colete
Reply
#5

Quote:
Originally Posted by LukasMartins
Посмотреть сообщение
vou testar aqui meu mano , ah tenho outra pergunta , para evitar criar tуpicos toda hora queria saber como faзo um ant aliado em que se um player da mesma facзгo atirar no outro , o outro nao perde vida

ja tentei por o SetPlayerTeam , mais queria uma base ou alguma forma de por
Poise eu uso a callback OnPlayerGiveDamage ai

pawn Код:
if(Player[playerid][Gangue] == Player[damagedid][Gangue])
{
// Mensagem que vocк quer
}
Tem como fazer com a OnPlayerTakeDamage mais nгo recomendo nгo
Reply
#6

pow obrigadгo ai mano , mais a stock lб continua dando colete e aparecendo a mensagem
Reply
#7

PHP код:

stock VerificarRival
(playerid)
{
    for(new 
x=0MAX_PLAYERSx++)
    {
        if(
IsPlayerConnected(x))
        {
            if(
GetDistanceBetweenPlayers(playeridx) <= 20)
            {
                if(
Player[playerid][pFaccao] == Player[x][pFaccao])
                {
                    return 
0;
                }
                else
                {
                    return 
0;
                }
            }
        }
    }
    return 
1;
}
stock GetDistanceBetweenPlayers(p1p2)
{
    new 
Float:POS1[3], Float:POS2[3], Float:tmpdis;
    
GetPlayerPos(p1POS1[0], POS1[1], POS1[2]);
    
GetPlayerPos(p2POS2[0], POS2[1], POS2[2]);
    
tmpdis floatsqroot(floatpower(floatabs(floatsub(POS2[0], POS1[0])), 2) + floatpower(floatabs(floatsub(POS2[1], POS1[1])), 2) + floatpower(floatabs(floatsub(POS2[2], POS1[2])), 2));
    return 
floatround(tmpdis);

Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)