C# para Unity - Parte 4
Como lo prometido es
deuda, acá les traigo la condicional múltiple Switch, esta condicional es capaz
de analizar una variable y arrojar un resultado dependiendo del valor de la
misma si se cumple una condición determinada, de no cumplirse ninguna se
ejecutara una acción por defecto. Veamos un ejemplo muy simple.
Abramos nuestro Unity y
creemos por lo menos tres (3) círculos mas mucho mas pequeños que nuestro amigo
Player y le ponemos colores distintos como se ve en la imagen.
La idea es hacerlos pasar
por monedas y darles a cada una un valor distinto.
Su estructura es algo así:
Switch(variable){
case “condición 1”:
Código a ejecutar si se
cumple la condición;
break;
case “condición 2”:
Código a ejecutar si se
cumple la condición;
break;
case “condición 3”:
Código a ejecutar si se
cumple la condición;
break;
default:
Código a ejecutar si no
se cumple ninguna de las condiciones de arriba;
break;
}
Ok, analicemos lo que
tenemos aquí, empezamos declarando la condicional o estructura de control Switch
y seguidamente abrimos y cerramos paréntesis, en medio de los cuales vamos a
colocar la variable que queremos analizar. Como mencione anteriormente, esta
condicional toma una variable y analiza su contenido y ejecuta un código
dependiendo de el contenido de dicha variable, para esto creamos todos los casos
posibles.
Entre las llaves de la
condicional empezamos colocando la palabra reservada case seguido de el valor
que podría tener la variable y luego colocamos dos puntos ( : ), ahora
colocamos el código que se ejecutaría si la variable tuviere ese valor,
finalizando la sentencia con punto y coma ( ; ), acto seguido
finalizamos ese caso con la palabra reservada break, esto detiene la
ejecución del Switch si se cumple ese caso.
Podemos poner tantos casos
como sea necesario, al poner todos los casos terminaremos con la palabra
reservada default seguido de dos puntos ( : ) luego colocamos el
código que se ejecutaría por defecto si no se cumple ninguna de las condiciones
anteriores y finalizamos con su respectivo break.
Ahora si, vamos con la
practica con un pequeño ejemplo de lo que podemos hacer con un Switch, (Tal
vez no sea el mejor ejemplo, pero mas adelante veremos mejores formas de usar
esta condicional) dentro del mismo código que hemos venido trabajando vamos a
crear una variable del tipo string y la llamaremos valorMoneda, creamos
la función OnTreggerEnter2D vamos
a hacer uso del if para asignarle el valor a la variable dependiendo de
la “moneda” a la que toquemos:
Recuerden que para que
esto funcione debemos de colocar a nuestras monedas un Collider y
activar la casilla “Trigger” y Nombrarlo como corresponde a cada una:
y también le agregaremos
un par de componentes al “Player” como son su Collider y un RiggidBody
el cual le pondremos su gravedad a 0, Ojo, todo en 2D ya que es la
estructura con la que estamos trabajando:
Bien, lo que queremos
hacer con este trozo de código es asignarle un valor a la variable “valorMoneda”
dependiendo de la moneda que tomemos y luego de asignar dicho valor
desaparecemos la moneda. Usaremos la variable “valorMoneda” en la
condicional Switch para mostrar en consola un valor (Puntos) dependiendo de la
“moneda” que tomemos.
Ahora en la función Update
vamos a agregar la condicional Switch de la manera que se ve en la
imagen, como dije anteriormente, acá veremos algo en consola dependiendo de la
moneda que tomemos y si no tomamos ninguna sera 0, el valor por defecto.
Ya podemos poner en marcha
nuestro proyecto, pero para tomar las monedas debemos mover nuestro “Player”
manualmente ya que por el momento no hemos hecho el script para movernos con el
teclado :v
Muy bien, sin mas por el
momento nos leemos en el próximo articulo de C# para Unity, hasta luego...
C# para Unity - Parte 4
Reviewed by Joel Martinez
on
12:22
Rating:
Publica un comentario