Detectar um Evento

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Detectar um Evento

Mensagem por Arthur em Qui 20 Nov 2008, 09:28

Eu estava com muita saudade dos RM's e voltei a trabalhar no meu projeto e em determinada parte dele o personagem principal precisa detectar certo item, mas ele tinha que ter uma distancia minima de distancia, né? Senão seria muito fácil.
A aula era de geografia e o ano já acabou, mas o professor ainda falava... eu criei o sistema (, mas depois vi que já existia uns tutoriais, mas como eu usei toda a minha lógica pra fazer o que estava escrito no tutorial, ele é de minha criação)
Acho que dá pra fazer em outros RM's, este é pra RMXP

Eu não gosto de dar tudo mastigado, então vou fazer você pensar na mesma linha de raciocinio que usei!

Conhecimentos:

  • Variáveis
  • Condições
  • Eventos Comuns
  • Criatividade para poder implementar o seu sistema mais tarde



Você precisa de 8 variaveis:
Heroi_X, Heroi_Y, Distancia_Minima, Evento_X, Evento_Y, Distancia_X, Distancia_Y e Raio.
Atenção: As 6 ultimas para cada evento que pode ser detectado!

Pense (leitura opcional):
O que eu preciso para medir aproximação, no caso do RM?
Código:
[spoiler]Coordenadas: tira-las do personagem e do evento.
[/spoiler]Como?
Spoiler:
Tirando a diferença entre o personagem e o evento.
Quais as possibilidades para este calculo?
Spoiler:
Positivo ou negativo.
Por que não neutro?
Spoiler:
Por que o personagem não estará no mesmo "quadradinho" que o evento!
Posso usar valores positivos?
Spoiler:
Sim, estes vão ser os únicos valores usados.
Posso usar valores negativos?
Spoiler:
Não, o raio de um circulo não pode ser negativo e vamos "detectar algo dentro do raio de".
Como fazer isso?
Spoiler:
Usando mais calculos, você conhece as potencias?
Quando começaremos?
Spoiler:
Agora.
Vá pro próximo tópico!

Fazendo:
Crie um evento comum por processo paralelo que leia Heroi_X e Heroi_Y as coordenadas X e Y, respectivamente.


Crie o evento, de nome Item que será detectado, ativado por tecla. Nele deve estar tudo o que for acontecer caso o jogador "fale" com ele.

Crie um evento de processo paralelo no mesmo mapa de Item. Neste fica todo o macete.
Determine uma distancia mínima, ou seja, essa é a distancia que o jogador precisa estar para detectar Item
Código:
Distancia_Minima = 5;
Pegue as coordenadas X e Y de Item em Evento_X e Evento_Y.
Agora começam os cálculos!!!
Código:
Distancia_X = Heroi_X;
Distancia_X -= Evento_X;
Distancia_X *= Distancia_X;
Ou seja
Código:
Distancia_X = (Heroi_X - Evento_X) * (Heroi_X - Evento_X)
E
Código:
Distancia_Y = Heroi_Y;
Distancia_Y -= Evento_Y;
Distancia_Y *= Distancia_Y;
Ou seja
Código:
Distancia_Y = (Heroi_Y - Evento_Y) * (Heroi_Y - Evento_Y)
Agora usaremos o raio
Código:
Raio = Distancia_X;
Raio += Distancia_Y;
Raio /= Distancia_Minima
;
Ou seja
Código:
Raio = (Distancia_X + Distancia_Y)/Distancia_Minima
Agora usaremos a condição:
Código:
se Raio <= Distancia_Minima
então "você vê Item"
senão "Item fica invisivel"

Fim!

Em breve SS's, desculpe se ficou mal explicado, me perguntem se for necessario.

Faça:
Spoiler:
1-Precisar de um item para ser possivel detectar, por exemplo um detector de metais.
2-Só detectar se estiver apontando/olhando na direção do evento.

Criado por SB

_____________________________________________________________________________________________________________



Um dia tudo isso irá acabar...

Arthur
Rei
Rei

Masculino
Número de Mensagens : 149
Idade : 19
Localização : Na minha casa?
Profissão : Estudante
Mensagem Pessoal : Viva o/
Qual Maker você usa? : RPG Maker 2003
Especialidade maker : De tudo um pouco
Reputação Reputação : 6

Ver perfil do usuário http://terramakersconsulta.forumeiros.com

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum