[Ajuda] Ajuda com esse comando
#1

Код:
CMD:poder1(playerid)
{
if(!PlayerDados[playerid][Gang]) return SendClientMessage(playerid, VERMELHO, "Vocк nгo tem o poder 1 ! ");
{
SendClientMessage(playerid, VERDE, "Doton !");
}
new Barreira, Float: x, Float: y, Float: z, Float:A;
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid, A);
PosicaoFrentePlayer(playerid, x, y, 3);
SetTimerEx("Barreira",15000,false,"fff",x,y,z,0,50.0);
Barreira = CreateObject(905, x, y, z, A, 0.0, 1000.0); 
CreateExplosion(x, y, z, 1, 5);
SetTimerEx("DestruirBarreira",15000,false,"d",Barreira); // 15seg
return 1;
}
Esse codigo estб, funcionando perfeitamente . Sу que tipo, como eu coloquei o CreateExplosion , e explosгo pega em mim e eu perco vida, eu quero por para que o objeto e a explosгo fique longe de mim por uns 10 metros, o bastante para o fogo nгo pegar em mim .
Obrigado
Reply
#2

PHP код:
CMD:poder1(playerid)
{
    if(!
PlayerDados[playerid][Gang]) return SendClientMessage(playeridVERMELHO"Vocк nгo tem o poder 1 ! ");
    {
        
SendClientMessage(playeridVERDE"Doton !");
    }
    new 
BarreiraFloatxFloatyFloatzFloat:A;
    
GetPlayerPos(playerid,x,y,z);
    
GetPlayerFacingAngle(playeridA);
    
PosicaoFrentePlayer(playeridxy3);
    
SetTimerEx("Barreira",15000,false,"fff",x,y,z,0,50.0);
    
Barreira CreateObject(905xyzA0.01000.0);
    
CreateExplosion(xy+10z15);
    
SetTimerEx("DestruirBarreira",15000,false,"d",Barreira); // 15seg
    
return 1;

Reply
#3

Ele afastou , mas nгo estб se adequando ao angulo .
Reply
#4

Cos and sin, se nгo me falha a memoria xD
Reply
#5

Quote:
Originally Posted by FixSkuL
Посмотреть сообщение
Cos and sin, se nгo me falha a memoria xD
Am ?
Reply
#6

pawn Код:
// Tenta isso Ipsbruno me passou uma vez. xD
    new Float:x, Float:y, Float:z,Float:a;
        GetPlayerPos(playerid,x,y,z);
        GetPlayerFacingAngle(playerid, a);
        x += 10.0 * floatsin(-a, degrees);
        y += 10.0 * floatcos(-a, degrees);
        CreateExp.....
Tenta
Reply
#7

Tenta:

PHP код:
CMD:poder1(playerid)
{
    if(!
PlayerDados[playerid][Gang]) return SendClientMessage(playeridVERMELHO"Vocк nгo tem o poder 1 ! ");
    {
        
SendClientMessage(playeridVERDE"Doton !");
    }
    new 
BarreiraFloatxFloatyFloatzFloat:A;
    
GetPlayerPos(playerid,x,y,z);
    
GetPlayerFacingAngle(playeridA);
    
PosicaoFrentePlayer(playeridxy3);
    
SetTimerEx("Barreira",15000,false,"fff",x,y,z,0,50.0);
    
Barreira CreateObject(905xyzA0.01000.0);
    
CreateExplosion(x+15yz15);
    
SetTimerEx("DestruirBarreira",15000,false,"d",Barreira); // 15seg
    
return 1;

Reply
#8

Pessoal, desculpem tomar o tempo de vocкs , eu consegui ! Muito obrigado mesmo .

Codigo de como ficou :
Код:
CMD:poder1(playerid)
{
if(!PlayerDados[playerid][Gang]) return SendClientMessage(playerid, VERMELHO, "Vocк nгo tem o poder 1 ! ");
{
SendClientMessage(playerid, VERDE, "Doton !");
}
new Barreira, Float: x, Float: y, Float: z, Float:A;
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid, A);
x += 10.0 * floatsin(-A, degrees);
y += 10.0 * floatcos(-A, degrees);
SetTimerEx("Barreira",15000,false,"fff",x,y,z,0,50.0);
CreateObject(905, x, y, z, A, 0, 15); // 981 й a Barreira caso queira mudar O Objeto, o substitu-a
CreateExplosion(x, y, z, 1, 15);
SetTimerEx("DestruirBarreira",15000,false,"d",Barreira); //15Seg
return 1;
}
@EDIT:
Tenho sу mais 1 dъvida :
Por exemplo esse comando explodir
Код:
CMD:explodir(playerid, params[])
{
	if(!NivelRequerido(playerid, 2)) return 1;
	if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[Administraзгo] Use /explodir [ID]", "Use o comando para explodir um jogador.");
	new Float:X,
	    Float:Y,
	    Float:Z;
	GetPlayerPos(ID, X, Y, Z);
	CreateExplosion(X, Y, Z, 1, 5);
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} explodiu o jogador %s", Nome(playerid), Nome(ID));
	return 1;
}
Como eu faзo para ele funcionar sу se o player estiver no maximo 30 metros longe de mim ?
Reply
#9

usa assim

pra ficar organizado

PHP код:
CMD:poder1(playerid)
{
    if(!
PlayerDados[playerid][Gang]) return SendClientMessage(playeridVERMELHO"Vocк nгo tem o poder 1 ! ");
    {
        
SendClientMessage(playeridVERDE"Doton !");
    }
    new 
BarreiraFloatxFloatyFloatzFloat:A;
    
GetPlayerPos(playerid,x,y,z);
    
GetPlayerFacingAngle(playeridA);
    
+= 10.0 floatsin(-Adegrees);
    
+= 10.0 floatcos(-Adegrees);
    
SetTimerEx("Barreira",15000,false,"fff",x,y,z,0,50.0);
    
CreateObject(905xyzA015); // 981 й a Barreira caso queira mudar O Objeto, o substitu-a
    
CreateExplosion(xyz115);
    
SetTimerEx("DestruirBarreira",15000,false,"d",Barreira); // Tempo para Destruir no caso 15Seg
    
return 1;

Reply
#10

Quote:
Originally Posted by SkullGamer
Посмотреть сообщение
Pessoal, desculpem tomar o tempo de vocкs , eu consegui ! Muito obrigado mesmo .

@EDIT:
Tenho sу mais 1 dъvida :
Por exemplo esse comando explodir
Код:
CMD:explodir(playerid, params[])
{
	if(!NivelRequerido(playerid, 2)) return 1;
	if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[Administraзгo] Use /explodir [ID]", "Use o comando para explodir um jogador.");
	new Float:X,
	    Float:Y,
	    Float:Z;
	GetPlayerPos(ID, X, Y, Z);
	CreateExplosion(X, Y, Z, 1, 5);
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} explodiu o jogador %s", Nome(playerid), Nome(ID));
	return 1;
}
Como eu faзo para ele funcionar sу se o player estiver no maximo 30 metros longe de mim ?
.....
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)