[Pedido] proibir atacar em certos locais
#1

boas, eu tenho um gm que quando se faz login vai-se para um lobby e nesse lobby nao queria que as pessoas se atacassem. ha alguma forma de proibir isso?
Reply
#2

up up
Reply
#3

Que tal retirar a armas das pessoas no lobby?

pawn Код:
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
Caso vocк nгo tenha no seu GM coloque-a /\

E coloque esse no final do seu GM:

pawn Код:
forward lobby(playerid);
public lobby(playerid)
{
    if(PlayerToPoint(10.0,playerid,X,Y,Z))
//10.0 й o Tamanho da бrea que vai pegar, playerid й уbvio que й os players e o X , Y , Z vocк poeem as coordenadas da lobby
        {
            ResetPlayerWeaponsEx(playerid);
            return 1;
        }
return 1;
}
Tenta ai cara, se eu estiver errado poste os erros '-'
Reply
#4

nao й tirar armas. Eu quando estou la com outros players, eu queria que eles n andassem ao murro
Reply
#5

Pera ai nao entendi, Vocк quer que as pessoas nгo morra ou perca life no seu lobby certo?
Reply
#6

sim. eu quero й que eles nao andem ao soco
Reply
#7

TOPO DO GM
pawn Код:
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
forward lobbytimer(playerid);
FINAL DO GM (Troquei o ResetPlayerWeapons e adicionei um settimer, fazendo com que o player nгo perca life no lobby)

pawn Код:
public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
{
    if(IsPlayerConnected(playerid))
    {
        new Float:oldposx, Float:oldposy, Float:oldposz;
        new Float:tempposx, Float:tempposy, Float:tempposz;
        GetPlayerPos(playerid, oldposx, oldposy, oldposz);
        tempposx = (oldposx -x);
        tempposy = (oldposy -y);
        tempposz = (oldposz -z);
        //printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
        if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
        {
            return 1;
        }
    }
    return 0;
}
public lobbytimer(playerid)
{
    if(IsPlayerConnected(playerid))
    {
        ResetPlayerWeaponsEx(playerid);
        SetPlayerHealth(playerid,100);
    }
}
forward lobby(playerid);
public lobby(playerid)
{
    if(PlayerToPoint(10.0,playerid,X,Y,Z))
//10.0 й o Tamanho da бrea que vai pegar, playerid й уbvio que й os players e o X , Y , Z vocк poeem as coordenadas da lobby
        {
            SetTimerEx("lobbytimer", 100, true, "i", playerid);
            return 1;
        }
    else
    {
    KillTimer(lobbytimer);
    }
return 1;
}
Agora tenta ae, num sei se vai da certo, mais vale tentar
Reply
#8

deu certo mas da pa atacar na mesma
Reply
#9

Entгo cara, a бrea da proteзгo da lobby que ta 10.0 , sу tenta aumentar pra 50.0 , as vezes a lobby й grande e 10.0 nao alcanзa '-'
Reply
#10

tambem consigo dar soco
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)