Movimiento Válido
En Wired Code: condition.valid_moves
Comprueba, antes de mover nada, que todos los furnis que la pila está a punto de mover tengan sitio donde caer. Si a uno solo no le cabe, la condición falla y no se mueve ninguno.
Cómo funciona
Sección titulada «Cómo funciona»Es la única condición del sistema que, antes de mirar la sala, mira la propia pila. Al evaluarse, le pregunta a cada efecto de movimiento que tenga al lado a dónde piensa mandar sus furnis, y comprueba que cada uno quepa en su destino.
Cada furni se comprueba contra la sala tal como está ahora: los demás furnis cuentan como quietos aunque la propia pila los vaya a mover. Por eso una hilera de cajas que avanza una posición no es válida si cada caja tiene delante a otra que no admite apilar, aunque todas se muevan a la vez. Dos furnis que van a la misma casilla libre sí pasan; luego, si no se pueden apilar, solo llegará uno (al azar).
Lo que sí se encadena es el mismo furni: si dos efectos de la pila lo mueven, el segundo se comprueba desde donde lo deja el primero, y los dos pasos tienen que ser válidos.
Lo que comprueba de cada destino:
- Que la casilla exista y se pueda pisar.
- Que no haya nadie de pie en ella. La excepción son los asientos, que sí se pueden colocar debajo de alguien.
- Que lo que ya haya en la casilla sea apilable.
- Que, si el efecto es Cambiar Altitud de Furni, la altura pedida no baje de 0 ni pase de 80.
Un movimiento es inválido cuando el efecto quería moverse y no puede: porque el destino no cabe, o porque su propia regla se lo impide —Caza o Fuga con alguien pegado, que es una colisión, o Cambiar dirección de Furni parado en «Esperar» o sin salida—. Girar, esquivar o pasear no son movimientos inválidos.
Su gracia es el todo o nada. Sin ella, un grupo de furnis que se mueve junto se desordena en cuanto uno se topa con una pared: los demás siguen y aquél se queda. Con ella, si uno no puede, no se mueve ninguno y el conjunto no se rompe.
Configuración
Sección titulada «Configuración»
No tiene opciones. Colócala en la pila y ya está.
Ejemplo
Sección titulada «Ejemplo»Tres furnis colocados uno al lado del otro que avanzan juntos sin desmontarse:
Pila A│├─ Causante: Periodos│ └─ Establecer tiempo ....................... 1 s│├─ Condición: Movimiento Válido│ └─ (no tiene nada que configurar)│└─ Efecto: Mover ├─ Elige Furni ............................. los tres Cofres del tesoro ├─ Mover Furni ............................. Norte └─ Rotar Furni ............................. Sin rotaciónCuando uno de los tres topa con la pared o con algo que no se puede apilar, la condición falla y los tres se quedan quietos a la vez, en formación. Sin la condición, los otros dos seguirían avanzando y la fila se desordenaría.
Sin efectos de movimiento en la pila, se cumple. No tiene nada que comprobar, así que deja pasar. No la pongas “por si acaso” en una pila que no mueve furnis: no aporta nada.
Sí mira a las personas. Un furni no puede aterrizar donde haya alguien de pie, así que una persona plantada en el destino de uno de ellos para la fila entera. Las excepciones son los asientos, que sí se colocan debajo de quien está de pie; tener en la pila un Movimientos físicos que atraviese usuarios; y Mover Furni a Usuario, para la persona a la que va, salvo que haya un Movimientos físicos en la pila.
Solo cuentan los efectos que mueven furnis. Se adelanta a Mover, Movimiento Relativo de Furni, Cambiar dirección de Furni, Cambiar Altitud de Furni, Mover Furni a Furni, Mover Furni a Usuario, Mover Furnis en Grupo, Caza, Fuga y A cero cuando restaura la posición. También a Cambiar valor de variable cuando escribe la posición, la ocupación, la rotación o la altitud de un furni —esas variables están en Variables de furni—: una posición ocupada, un giro que ese furni no tiene o una altura fuera de 0 a 80 hacen fallar la condición. Los que mueven personas — Mover y Rotar Usuario y Mover Usuario a Furni— no cuentan: una pila que solo mueve personas la cumple siempre.
Mira lo que el efecto va a mover de verdad. La condición no tiene fuentes propias: para cada efecto usa la fuente de ese efecto —los furnis seleccionados, los del selector, los de la señal o el desencadenante—. Con un efecto de movimiento que toma los furnis de un selector, la condición mira lo que elige el selector, no lo que haya marcado a mano en la ventana del efecto. Si el selector no encuentra nada, no hay nada que comprobar y se cumple.
Las direcciones al azar se sortean dos veces. Un Mover con dirección aleatoria, el giro al azar de Cambiar dirección de Furni o la esquiva de Fuga se sortean en la condición por su cuenta y luego otra vez en el efecto: la condición puede aprobar un paso que el efecto, al sortear de nuevo, no podrá dar.