Ahora hablemos de condiciones más complejas que puedes evaluar con tus programas.
Para mostrarlas, he preparado la pantalla para que se vea como un juego que yo solía jugar
Cuatro cuadros.
Hay cuatro cuadros (el nombre del juego es acertado), y te paras en un cuadro y rebotas tu pelota a los otros cuadros.
Ahora dibujaré una elipse por donde pase mi ratón, para que sea nuestra pelota
Lo que quiero hacer es resaltar el cuadro en el que se encuentra la pelota, dibujando un rectángulo blanco en la parte superior.
Sé que necesito una sentencia "if" para hacer eso, porque sólo quiero hacerlo con uno a la vez, sólo cuando estoy sobre ese rectángulo
Ok, empecemos dibujando ese rectángulo.
Así que sólo copiaré el rectángulo de ahí, pero lo voy a rellenar con un color diferente, un relleno blanco
Bien. Ahora vamos a ponerlo en un "if"
Puedes ver que autocompleta las llaves, así que tengo que mover esto dentro de ellas.
Ok. Entonces, ¿cuándo tengo que mostrar ese rectángulo?
Bueno, sé que debo hacerlo cuando la posición de "x" del mouse sea menor que 200 (mouseX < 200)
Eso funciona, pero cuando me pongo aquí abajo, el rectángulo sigue blanco.
Así que también necesito revisar "mouseY".
Bueno, ¿cómo compruebo las dos cosas?
Es por eso que tenemos el operador "AND"
Así que usamos el operador "AND" cuando queremos comprobar múltiples condiciones.
Entonces sólo escribimos "&&" y luego escribimos la siguiente condición, "mouseY < 200".
Así que no lo resalta cuando estoy aquí y ¡sí lo hace cuando estoy aquí! ¡Yeey!
Hagamos el siguiente cuadro, sólo para probar que esto funciona.
Muy bien, sólo tenemos que cambiar algunas cosas.
Ahora tenemos que tomar este rectángulo y obviamente cambiar las condiciones por las que no se está resaltando.
Así que en esta ocasión, "mouseX" necesita ser más grande que 200 y "mouseY" seguir siendo menor que 200.
Hermoso, ¡miren eso!
Muy bien, ahora en Cuatro Cuadros, cuando la pelota pega en los bordes, es decir, en las líneas del centro y las esquinas
gritamos "¡Edge Ball!" ("¡Fuera!")
Y lo quiero hacer aquí también. Empecemos por escribir "EDGE BALL"
Y lo voy a escribir en medio y con letras rojas.
Muy bien, y sólo quiero que esto pase si estoy en los bordes.
Así que voy a añadir un "if",
y mover este código dentro del "if".
Entonces, ¿cuándo quiero que esto ocurra?
Bueno, hay bordes en el centro, así que el centro es cuando "mouseX === 200"
Muy bien, vamos a ver. Voy a poner la pelota en el borde.
Aquí voy. ¡EDGE BALL!
Ok. Mmm. Esto sólo funciona para esta línea del centro.
Pero quiero que funcione también para esta otra línea.
En ese caso, quiero que "mouseY === 200", porque ahí es donde está la línea del centro.
Ok, vamos a ver, no está funcionando. Nada está funcionando.
Oh, sólo funciona aquí, en el punto central.
Bueno, eso es porque usé un "AND", y lo va a hacer sólo si las dos condiciones aquí son verdaderas, y eso sólo pasa en el punto central.
Entonces, lo que en realidad quiero decir es: "si cualquiera de esas condiciones es verdadera".
Así que usaremos el operador "OR".
El operador OR se escribe así: "||".
A esos símbolos los llamamos plecas o barras verticales, y probablemente nunca los habías usado.
Tienes que buscarlos en tu teclado, generalmente están en la parte superior derecha.
Esperemos que lo tengas en tu teclado.
¿Todo bien? Sensacional, vamos a ver si funciona...
Muy bien, sí funciona aquí y aquí y también aquí, hermoso...
podemos seguir añadiendo condiciones aquí,
así que con "AND" y "OR", puedes tener tantas condiciones como quieras,
si necesitas comprobar 60 condiciones diferentes, puedes hacerlo completamente, ok.
No hemos tenido cuidado de todos los bordes ...
digamos que "mouseX" es menor que 3.
Eso sería ... aquí vamos, ese pequeño borde de aquí.
Muy bien.
O "mouseX" es mayor que 397 ("mouseX > 397")
Aquí está... ¡hermoso!
Entonces podemos hacerlo para todos los bordes.
Así que... ¡sí!, existe "AND" y "OR" y ahora puedes ver cómo construir condiciones mucho más complejas en tus programas.
Y eso es bueno, porque el mundo es un lugar complejo.