24.02.2019, 20:22
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.
estas as pre-definidas para colocar no loop e verificar se o jogador estar entre elas, (NAO REMOVERA A VIDA DE QUEM APERTAR)
OBS: ao realizar este calculo (EXEMPLO)
й 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
eu coloquei o codigo na public OnPlayerKeyStateChange
na KEY_FIRE.
PHP Code:
for(new i, p = MAX_PLAYERS; i < p; i++)
{
new Float:x, Float:y, Float:z, Float:a;
GetPlayerPos(playerid, x, y, z);
GetPlayerFacingAngle(playerid, a);
x += floatsin(-a, degrees) * DistanciaDisparo[i][0];
y += floatcos(-a, degrees) * DistanciaDisparo[i][0];
if(IsPlayerInRangeOfPoint(i, 0.5, x, y, z))
{
if(playerid != i)
{
new Float:phealth;
GetPlayerHealth(i, phealth);
SetPlayerHealth(i, phealth-5.0);
}
else
{
}
}
}
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}
};
Code:
x += floatsin(-a, degrees) * 1.0; y += floatcos(-a, degrees) * 1.0;