[ Pedido ] FloatRound
4 participantes
Página 1 de 1
[ Pedido ] FloatRound
Teria como alguém me dar um exemplo de como usar Floatround para checar a posição de um player em uma corrida ?
Exemplo: Eu estou na frente de um jogador ( Corrida 1x1 ) e em uma textdraw iria aparecer: 1/2 e se caso eu tivesse atrás dele seria 2/2, teria como alguém me dar um exemplo? Já tentei fazer mas acabei quebrando a cabeça...
Exemplo: Eu estou na frente de um jogador ( Corrida 1x1 ) e em uma textdraw iria aparecer: 1/2 e se caso eu tivesse atrás dele seria 2/2, teria como alguém me dar um exemplo? Já tentei fazer mas acabei quebrando a cabeça...
ClipX- Novato
- Mensagens : 3
Data de inscrição : 15/09/2013
Re: [ Pedido ] FloatRound
Primeiramente, seja bem vindo ao fórum
Floatround é uma função para "arredondar" uma Float, ou seja, transforma-la de float para int, então, do jeito que você necessita você pode checar a distancia do Ponto Final da corrida e a de cada player, descobrindo assim quem esta mais longe ( caso for uma corrida em linha reta ), caso uma corrida com bastante curvas, você teria que pensar em uma outra lógica.
Floatround é uma função para "arredondar" uma Float, ou seja, transforma-la de float para int, então, do jeito que você necessita você pode checar a distancia do Ponto Final da corrida e a de cada player, descobrindo assim quem esta mais longe ( caso for uma corrida em linha reta ), caso uma corrida com bastante curvas, você teria que pensar em uma outra lógica.
Gustavo Araújo- Novato
- Mensagens : 1
Data de inscrição : 08/09/2013
Re: [ Pedido ] FloatRound
Obrigado,
pois bem, é uma corrida em linha reta, vamos se dizer que seria aquelas avenidas de LV...
Bom, teria como você postar um exemplo ? Ou até mesmo a função para checar quem esta perto/longe do checkpoint final.
Obrigado, por responder.
pois bem, é uma corrida em linha reta, vamos se dizer que seria aquelas avenidas de LV...
Bom, teria como você postar um exemplo ? Ou até mesmo a função para checar quem esta perto/longe do checkpoint final.
Obrigado, por responder.
ClipX- Novato
- Mensagens : 3
Data de inscrição : 15/09/2013
Re: [ Pedido ] FloatRound
Se a corrida for apenas em linha reta eu posso te ajudar facilmente.
Pense comigo, se você tem dois pontos disputando para chegar em um ponto X em que a esse caminho é sempre traçado somente por uma reta, se você aplicar o calculo da distância entre os 2 pontos e o X, você pode fazer a seguinte comparação:
o ponto que tiver menos longe é o 1º colocado, e o outro é o 2º colocado.
Calculo da distância d = raizQuadrada((x1 - x2)² + (y1 - y2)²)
No pawn isso ficaria:
Abraços.
Pense comigo, se você tem dois pontos disputando para chegar em um ponto X em que a esse caminho é sempre traçado somente por uma reta, se você aplicar o calculo da distância entre os 2 pontos e o X, você pode fazer a seguinte comparação:
o ponto que tiver menos longe é o 1º colocado, e o outro é o 2º colocado.
Calculo da distância d = raizQuadrada((x1 - x2)² + (y1 - y2)²)
No pawn isso ficaria:
- Código:
stock raio(point1, point2)
{
new
Float: sPp[3],
Float: sOp[3],
distance = NULL;
GetPlayerPos(point1, sPp[0], sPp[1], sPp[2]);
GetPlayerPos(point2, sOp[0], sOp[1], sOp[2]);
distance = floatsqroot(floatadd(floatadd(floatpower(sPp[0]-sOp[0],2), floatpower(sPp[1]-sOp[1],2)),floatpower(sPp[2]-sOp[2],2)));
return (distance);
}
- Código:
if (raio(JOGADOR_ID, PONTO_FINAL) > raio(JOGADOR_ID2, PONTO_FINAL)) //JOGADOR_ID2 é o 1º lugar
else //JOGADOR_ID é o 1º lugar
Abraços.
Re: [ Pedido ] FloatRound
Obrigado @Gustavo_Araujo...
Obrigado @Wilian, você me explicou no skype e eu entendi corretamente, enfim, obrigado. ^^
Obrigado @Wilian, você me explicou no skype e eu entendi corretamente, enfim, obrigado. ^^
ClipX- Novato
- Mensagens : 3
Data de inscrição : 15/09/2013
Re: [ Pedido ] FloatRound
blz,mais paritcipa com noes aew no forum pra krescer e tals....ClipX escreveu:Obrigado @Gustavo_Araujo...
Obrigado @Wilian, você me explicou no skype e eu entendi corretamente, enfim, obrigado. ^^
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|