O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Como ativar um Evento ao se aproximar?

Iniciado por Jerint, 20/09/2017 às 10:27

Olá, gostaria de saber como fazer um NPC se mover até mim mas só a partir de uma certa distancia.

20/09/2017 às 10:29 #1 Última edição: 20/09/2017 às 10:36 por Kyo Panda
Quote do Condado apenas para referência futura:

CitarCom 4 variáveis, o senhor poderia fazer o seguinte:

  • Na variável 1, armazenar a coordenada X do personagem.
  • Na variável 2, armazenar a coordenada Y do personagem.
  • Na variável 3, armazenar a coordenada X do evento.
  • Na variável 4, armazenar a coordenada Y do evento.

Com esses valores, o senhor já pode criar uma condicional que leva em consideração a distância do evento para o personagem.

A fórmula para distância entre dois pontos é:

[box2 class=well][/box2]

Ou:

RAIZ_QUADRADA( ( P1.X - P1.Y )² + ( P2.X - P2.Y )² )


Mas fazer essas operações diretamente com variáveis é um pouco complicado. Por isso é melhor usar a função Chamar Script para calcular a distância entre os dois:

$game_variables[5] = Math.hypot($game_variables[1] - $game_variables[2], $game_variables[3] - $game_variables[4])


O resultado será a distância do evento e do personagem na variável 5. Com isso é só criar uma condicional com o valor dessa variável e, caso ela for menor a distância desejada para ativar o evento, chamar o comando Mover > Perseguir personagem.

Sugiro que a inicialização do evento esteja em Processo paralelo para que isso seja calculado sempre que o jogador mover o personagem.

:)