top of page

Basic Movement

Ancla 1

El jugador solo puede interactuar para saltar, ya sea durante más o menos rato, para saltar más o menos alto, por lo tanto una buena parte del movimiento del jugador es automática.

imagen_2022-10-07_132000774.png

Como podemos observar en el código que acabamos de leer se nombra al boss, esto es porque el boss y el player tienen el mismo sistema de movimiento por lo tanto ambos heredan este código.

imagen_2022-10-07_132656892.png

Como podemos ver en el salto volvemos a nombrar el chaseTime, esto es simplemente para comprobar cuando salta el Player y cuando el boss

En el video anterior podemos ver las mecánicas explicadas anteriormente. Tambien podemos ver las monedas funcionando.

Currency

Ancla 2
imagen_2022-10-07_135653022.png

La información se guarda temporalmente en un ScriptableObject que tiene 3 bool y indica en que Mundo estamos y nivel.

De todas formas la información se guarda también en un XML.

Enemies

Ancla 3

Los enemigos se mueven de forma similar al propio jugador.

imagen_2022-10-07_144807174.png

De este "sistema" estoy personalmente orgullosa ya que funciono muy bien y es fácilmente ampliable

imagen_2022-10-07_145828861.png

Ya que me parece que es mucho código para poner aquí he añadido la foto que hay encima y a continuación explicaré como funciona el sistema que diseñe para aplicar efectos a enemigos/jugador.

Tenemos una interfaz llamada IDMG, simplemente para indicar que el resto de clases tendrán el método Apply(), a partir de aquí tenemos la clase abstracta DamageBehaviour donde declaramos un par de variables que nos servirán para aplicar los diferentes efectos. Aclarar que la existencia de IDMG es solo porque teníamos intención de usarla en más situaciones pero de momento no ha sido así.

En DamageBehaviourPlayer definimos el método ApplyEffect, este sirve para aplicar el efecto en los enemigos llamando al método Apply que hay en DamageBehaviorEnemy, Hacemos referencia al enemigo con la variable que nos devuelve el método OnCollisionEnter. 

La clase abstracta de DamageBehaviourEnemy su función es similar a la del jugador pero para el enemigo y tiene un hijo por cada tipo de enemigo y el efecto que tiene que aplicar. 

Ancla 4

La idea de este boss era algo así como Badeline de Celeste 

Boss

imagen_2022-10-07_174338870.png

El movimiento de tanto el jugador como del boss son similares, solo que el boss salta en el mismo punto que el jugador en vez de cuando se pulsa el input para saltar y en la siguiente foto podemos observar el sistema para detectar el salto y cuando se tiene que ejecutar. 

imagen_2022-10-07_183014950.png

La función de esta clase y el struct que hay definido es:

- Guardar los datos que nos son relevantes

- Indicar cuando toca saltar para que los saltos del enemigo sean lo más parecido     a los del jugador.

- Borrar los comandos para que no se llene la memoria.

bottom of page