[Ajuda] Efeito da arma funcionar apenas 1 vez
#1

Oi pessoal gostaria de pedir ajuda aqui sobre um sistema que eu tenho que da knockdown no usuario com a shotgun porem a pessoa pode ficar atirando quantas vezes quiser e a pessoa toma knockdown eu queria colocar pra acontecer isso apenas 1 vez ex: ele atira 1 vez na pessoa com a shotgun ela vai levar 1 knockdown apenas 1 vez, mas ele pode atirar em outra pessoa que ele ainda nгo deu knockdown e a pessoa levar o knock , quando ele morre-se ou o player q ele mato morre-se, zerava o estado de knockdown

meu codigo

PHP код:
if(pInfo[issuerid][pPremium] == || pInfo[issuerid][pPremium] == ||  pInfo[issuerid][pPremium] == 6)
            {
                if(
weaponid == 25)
                {
                      new 
Float:pxFloat:py,Float:pz,Float:ix,Float:iy,Float:iz;
                    
GetPlayerPos(playeridpxpypz);
                    
GetPlayerPos(issueridixiyiz);
                    new 
Float:GetPlayerDistanceFromPoint(issueridpxpypz),Float:c1 py iy,Float:c2 px ix;
                    new 
Float:vx c2 h,Float:vy c1 h;
                    
SetPlayerVelocity(playerid0.35 vx0.35 vy0.1);
                    
ApplyAnimation(playerid"PED""FALL_back"4.0011101);
                    
defer GetUp(playerid);
                }
            }
        }
    } 
Reply
#2

Variaveis meu caro, nгo posso te ajudar exatamente mais vou te dar um exemplo


Код:
new exemple;
Код:
CMD:exemplo (playerid)
{
  exemple = 1;
  SendClientMessage(playerid, -1, "A Variбvel Exemplo agora й 1 !");
  return 1;
}
Код:
CMD:checarvariavel(playerid, params[]) 
{ 
  if (exemple == 1)
   {
     SendClientMessage(playerid, -1, "A Variбvel exemple e 1 !");
     return 1;
    }
     else if (exemplo == 0)
    {
      SendClientMessage(playerid, -1, "A Variбvel ainda nгo й 1 !");
      return 1;
    }
 return 1;
}
Reply
#3

Quote:
Originally Posted by ClaudioF
Посмотреть сообщение
Variaveis meu caro, nгo posso te ajudar exatamente mais vou te dar um exemplo


Код:
new exemple;
Код:
CMD:exemplo (playerid)
{
  exemple = 1;
  SendClientMessage(playerid, -1, "A Variбvel Exemplo agora й 1 !");
  return 1;
}
Код:
CMD:checarvariavel(playerid, params[]) 
{ 
  if (exemple == 1)
   {
     SendClientMessage(playerid, -1, "A Variбvel exemple e 1 !");
     return 1;
    }
     else if (exemplo == 0)
    {
      SendClientMessage(playerid, -1, "A Variбvel ainda nгo й 1 !");
      return 1;
    }
 return 1;
}
Ainda nгo entendi muito bem mas vou tentar fazer aqui
Reply
#4

Deixa eu ver se consigo te explicar melhor:

PHP код:
new acertou;   // A Variavel Ganha o Valo 0
if(pInfo[issuerid][pPremium] == || pInfo[issuerid][pPremium] == ||  pInfo[issuerid][pPremium] == 6)
            {
              if(
acertou == 0)   // Caso ela seja 0 executa a funcao abaixo:
              
{
                if(
weaponid == 25)
                {
                      new 
Float:pxFloat:py,Float:pz,Float:ix,Float:iy,Float:iz;
                    
GetPlayerPos(playeridpxpypz);
                    
GetPlayerPos(issueridixiyiz);
                    new 
Float:GetPlayerDistanceFromPoint(issueridpxpypz),Float:c1 py iy,Float:c2 px ix;
                    new 
Float:vx c2 h,Float:vy c1 h;
                    
SetPlayerVelocity(playerid0.35 vx0.35 vy0.1);
                    
ApplyAnimation(playerid"PED""FALL_back"4.0011101);
                    
defer GetUp(playerid);
                    
acertou 1;  // Depois de ter executado ela ganha Valor 1
                
}
                else if(
acertou == 1)  // Caso ela ja seja 1 executa a funcao Abaixo
                
{
                 
SendCLientMessage(playerid, -1,"{FF0000}O Jogador ja Foi 'Desmaiado' ");
                }
            }
        }
    } 
Obs: pode seta-la pra 0 Novamente ao jogador spawnar ou algum timer pra seta-la a 0
Reply
#5

Quote:
Originally Posted by ClaudioF
Посмотреть сообщение
Deixa eu ver se consigo te explicar melhor:

PHP код:
new acertou;   // A Variavel Ganha o Valo 0
if(pInfo[issuerid][pPremium] == || pInfo[issuerid][pPremium] == ||  pInfo[issuerid][pPremium] == 6)
            {
              if(
acertou == 0)   // Caso ela seja 0 executa a funcao abaixo:
              
{
                if(
weaponid == 25)
                {
                      new 
Float:pxFloat:py,Float:pz,Float:ix,Float:iy,Float:iz;
                    
GetPlayerPos(playeridpxpypz);
                    
GetPlayerPos(issueridixiyiz);
                    new 
Float:GetPlayerDistanceFromPoint(issueridpxpypz),Float:c1 py iy,Float:c2 px ix;
                    new 
Float:vx c2 h,Float:vy c1 h;
                    
SetPlayerVelocity(playerid0.35 vx0.35 vy0.1);
                    
ApplyAnimation(playerid"PED""FALL_back"4.0011101);
                    
defer GetUp(playerid);
                    
acertou 1;  // Depois de ter executado ela ganha Valor 1
                
}
                else if(
acertou == 1)  // Caso ela ja seja 1 executa a funcao Abaixo
                
{
                 
SendCLientMessage(playerid, -1,"{FF0000}O Jogador ja Foi 'Desmaiado' ");
                }
            }
        }
    } 
Obs: pode seta-la pra 0 Novamente ao jogador spawnar ou algum timer pra seta-la a 0
ah eu entendi agr, eu pensei em fz assim mas achei q iria fz errado gg man vlw й noiz <3
Reply
#6

"Demoro", Caso possa dar +Rep eu aceito kkk'
Reply
#7

Quote:
Originally Posted by ClaudioF
Посмотреть сообщение
"Demoro", Caso possa dar +Rep eu aceito kkk'
Saudades do -rep. *-*
Reply
#8

Quote:

Saudades do -rep. *-*

What ? kkk'
Reply
#9

Quote:
Originally Posted by ClaudioF
Посмотреть сообщение
"Demoro", Caso possa dar +Rep eu aceito kkk'
vlw ai jб dei o rep
Reply
#10

Nossa player Massa

Quote:

new bool:acertou[MAX_PLAYERS];//em cima da GM

if(pInfo[issuerid][pPremium] == 4 || pInfo[issuerid][pPremium] == 5 || pInfo[issuerid][pPremium] == 6) //na public
{
if(acertou[playerid] == false)
{
if(weaponid == 25)
{
new Floatx, Floaty,Floatz,Float:ix,Float:iy,Float:iz;
GetPlayerPos(playerid, px, py, pz);
GetPlayerPos(issuerid, ix, iy, iz);
new Float:h = GetPlayerDistanceFromPoint(issuerid, px, py, pz),Float:c1 = py - iy,Float:c2 = px - ix;
new Float:vx = c2 / h,Float:vy = c1 / h;
SetPlayerVelocity(playerid, 0.35 * vx, 0.35 * vy, 0.1);
ApplyAnimation(playerid, "PED", "FALL_back", 4.0, 0, 1, 1, 1, 0, 1);
defer GetUp(playerid);
acertou[playerid] = true;
}
else if(acertou[playerid] == true)
{
SendCLientMessage(playerid, -1,"{FF0000}O Jogador ja Foi 'Desmaiado' ");
}
}
}
return 1;
}

Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)