View Single Post
Old 24/02/2019, 08:22 PM   #1
zHellSync
Big Clucker
 
zHellSync's Avatar
 
Join Date: Dec 2018
Location: Fortaleza - CE
Posts: 93
Reputation: 0
Default multiplicação com verificações de posições de jogadores

Alguem me ajuda! estou querendo fazer um loop para verificar a distancia onde o jogador estar, calculada com angulo de visão e então retirar 5.0 de vida do jogador caso esteja entre a distancia.

eu coloquei o codigo na public OnPlayerKeyStateChange
na KEY_FIRE.

PHP Code:
for(new iMAX_PLAYERSpi++)
{
    new 
Float:xFloat:yFloat:zFloat:a;
    
GetPlayerPos(playeridxyz);
    
GetPlayerFacingAngle(playerida);

    
+= floatsin(-adegrees) * DistanciaDisparo[i][0];
    
+= floatcos(-adegrees) * DistanciaDisparo[i][0];

    if(
IsPlayerInRangeOfPoint(i0.5xyz))
    {
        if(
playerid != i)
        {
            new 
Float:phealth;
            
GetPlayerHealth(iphealth);
            
SetPlayerHealth(iphealth-5.0);
        }
        else
        {
        }
    }

estas as pre-definidas para colocar no loop e verificar se o jogador estar entre elas, (NAO REMOVERA A VIDA DE QUEM APERTAR)

PHP Code:
new Float:DistanciaDisparo[20][1] =
{
    {
0.1},
    {
0.2},
    {
0.3},
    {
0.4},
    {
0.5},
    {
0.6},
    {
0.7},
    {
0.8},
    {
0.9},
    {
1.0},
    {
1.1},
    {
1.2},
    {
1.3},
    {
1.4},
    {
1.5},
    {
1.6},
    {
1.7},
    {
1.8},
    {
1.9},
    {
2.0}
}; 
OBS: ao realizar este calculo (EXEMPLO)
Code:
x += floatsin(-a, degrees) * 1.0;
y += floatcos(-a, degrees) * 1.0;
é recebida em X e Y um metro a frente.. entao de forma resumida, quero que ele comece a verificar de 0.1 a 2.0.. o restante, deixe comigo.. obrigado
__________________
Desenvolvedor de servidor SA:MP Android
Quote:
Originally Posted by zHellSync
Hm...
Code:
Placa mãe: GA-H270M-Gaming
Memoria RAM: 16GB
HD SATA: Kingstom 2TB SATA III
Fonte: 700w 80 Plus White Smart 
Processador: Intel Core i9-9900k Coffee Lake Refresh 9a Geração, Cache 16MB, 3.6GHz (5.0GHz Max Turbo)
zHellSync is offline   Reply With Quote