Sign in to follow this  
Followers 0
Dieguin451

Tutorial Avanzao de variables

5 posts in this topic

Tutorial Avanzao de Variables


¿Y que mejor pa aprender variables de modo avanzao, que haciendo un engine de rango de vision para enemigos?

Los que ya manejeis variables, operaciones con variables y tal, no os resultará muy dificil comprender esto y manejaros con esto.

Antes de nada.

Vamos a mezclar variables y coordenadas, ya sabeis que se usan las coordenadas X e Y, X como horizontal e Y como vertical.

Empezando.

En un engine de rango de vision, tenemos que darle un area de vision al enemigo, segun a donde este mirando..... Se suele usar un area conica, de menos a mas pero no muy extensa.....

Hacer el engine.

Antes de na tenemos que creas las variables, del enemigo y del prota, en un evento en proceso paralelo.

CODE
Operaciones de variable: [0001: X Enemigo] = Enemigo - Coordenada X
Operaciones de variable: [0002: Y Enemigo] = Enemigo - Coordenada Y
Operaciones de variable: [0003: X Personaje] = Personaje - Coordenada X
Operaciones de variable: [0004: Y Personaje] = Personaje - Coordenada Y


Cuando esten creas las 4 variables, pasaremos a hacer el engine de verdad.

Vamos a crear un evento comun, donde tengamos las acciones y el engine de la vision del enemigo:
[Spoiler]
user posted image
user posted image
user posted image[/Spoiler]

Bueno, ese seria el engine, con el rango de vision, mirando hacia abajo el enemigo, esto nos daria un rango de vision en efecto cono, Ejemplo:

[spoiler]user posted image[/spoiler]

Ahora la explicación:

La primera condicion, es que este mirando hacia abajo.

Despues podemos ver que ahi 4 operaciones de variable antes de cada condicion y efecto.

Estas operaciones, lo que hacen es igualar las 2 variables a las coordenadas X e Y del personaje, despues de cada condicion anterior, las siguen otras 2 operaciones de variables, las cuales hacen una operacion, restan la coordenada X del personaje a la coordenada X del enemigo, haciendo lo mismo con la coordenada Y.

Despues de cada operacion, ponemos condiciones y efectos, indicandole el "rango".

Por ejemplo, en la primera.

Le decimos que la coordenda Y del pesonaje debe ser igual a 1 (es decir, le estamos diciendo que el personaje tiene que estar 1 tile por debajo del enemigo) y que la coordenada X tiene que ser = a 0 (es decir, tiene que estar alineao con el enemigo).


En la segunda, le decimos que la coordenada Y del personaje debe ser igual a 2 (2 tiles por debajo del enemigo) y la coordenada X debe ser igual a 0 (tiene k estar alineao con el enemigo).

En las siguientes condiciones, le decimos que la coordenada Y debe ser igual a 2, y la coordenada X igual a 1 (es decir, aqui ya estamos ampliando el rango de vision hacia los lados, que la coordenada X sea igual a 1, quiere decir que el personaje puede estar a 1 tile a su izquierda).

Y en la siguiente condicion hacemos lo mismo pero diciendole a la coordenada X que seria a -1, es decir, que puede estar 1 tile a su derecha. (izquierda y derecha del enemigo, no la nuestra).

Las siguientes condiciones, son lo mismo, solo que vamos bajando y vamos ampliando la coordenada X para que lo vea estando mas a su derecha e izquierda.

Basicamente, este es el engine de rango de vision, solo queda hacer las demas posiciones, que vienen siendo lo mismo, jugar con ambas variables, las variables que guardan el valor de la coordenada X e Y del enemigo/Personaje.

No tiene ninguna complicacion para los que esten acostumbrados a manejar coordenadas negativas y positivas, por que si no, uno se lia con to esto...

Esta es solo una forma de hacerlo (pa mi la mas sencilla) ahi varias......

Espero que lo hayais entendio y si no.. ya sabeis.

Salu2 icon13.gif


0

Share this post


Link to post
Share on other sites
Esta muy bien el tuto, buen aporte icon13.gif

Salu2 icon13.gif
0

Share this post


Link to post
Share on other sites
Entiendo o.o

Entonces, hay que recrear la vision del enemigo, con 4 variables principales: Evento mirando arriba, evento mirando abajo, evento mirando a izquierda, evento mirando a derecha.

y espues, con varias subvariables, dependientes de cada variable principal.
as vez, hay kea ñadir una subvariable que sirve para detectar si el heroe o lo que sea este dentro del rango de vision.

Seria algo como:

Si evento mira para arriba:
-Si la posicion de algo es igual a posicion evento + (Relevantemente)[
[-2 -3] [-1 -3] [ 0 -3] [ 1 -3] [ 2 -3]
+++++[-1 -2] [ 0 -2] [ 1 -2] [ 2 -2]
++++++++++[ 0 -1]
]
-Poner variable "Ha caido" en marcha.

Asi con cada tipo, no?

Pero hay n fallo de railsmo...realismo.

user posted image

Se nota el fallo? Hay diagonales cerca del evento que no se cubren.

Por lo tanto, habria que añadir una hxeta por cada rango mas ke keramos fijarnos, haciendo varias posiciones compartidas por dos o varias de las variales globales.

estoy en ll ceto?
0

Share this post


Link to post
Share on other sites
Mmmm

Bueno, los numeros que se usan como veo k en la segunda imagen pones 0 en su diagonal del enemigo hmm....

Los numeros k usamos es para referirnos a la coordemada del enemigo....

El Enemigo seria la coordenada 0 x e y respecto al personaje, a nuestra izquierda la coordenada X es negativa, a nuestra derecha positiva, la coordenada Y hacia arriba es negativa, hacia abajo positiva...

Por eso lo de los numeros, le indicamos lo que nos estamos "alejando" de el, ya que el enemigo es el 0..

PD:

Ya e entendio lo que querias decir, entonces es cuestion de agregar un rango de vision mas grande en diagonal, justo delante del enemigo.

Salu2 icon13.gif Edited by Dieguin451
0

Share this post


Link to post
Share on other sites
Muy buen tutorial dieguín, yo estube intentando hacer uno con iteradores (lo cual ofrece mucha más flexibilidad y menos posibilidades de errores) y todo eso, pero la cosa iba lentísima, aunque funcionaba xD
Está bastante bien para que aprendan los más novatos y se entren en el engorroso (gracias gaynterbrain) mundo de los engines xD.png
0

Share this post


Link to post
Share on other sites
Sign in to follow this  
Followers 0