Señales y pilas remotas
Las pilas son independientes: cada baldosa es su propio programa. Las señales son la forma normal de conectarlas.
Cómo funciona
Sección titulada «Cómo funciona»Intervienen tres piezas:
- Una antena, que es un furni cualquiera que hace de canal.
- Un efecto Enviar Señal, que apunta a esa antena.
- Un causante Recibir Señal, en otra baldosa, que escucha esa misma antena.
Cuando la primera pila ejecuta el efecto de enviar, todas las pilas cuyo causante escuche esa antena arrancan.
Baldosa (3,3) Baldosa (10,7) Causante: alguien pisa Causante: recibir señal [antena X] Efecto: enviar señal → X ──► Efecto: abrir la puertaUna antena puede tener muchos oyentes. Un solo envío dispara todas las pilas que la escuchen, lo que la convierte en la herramienta natural para “que pasen diez cosas a la vez en sitios distintos”.
Las señales van al final
Sección titulada «Las señales van al final»Como se explica en El orden de ejecución, enviar señal es de las últimas cosas que hace una pila, después de todos sus demás efectos.
Esto no es un detalle interno: es la garantía que hace útiles las señales. Cuando la pila remota arranca, ve el mundo ya modificado por la pila que la llamó. Si mueves un furni y envías una señal, la pila que recibe encuentra el furni en su sitio nuevo.
Por eso, cuando necesites que dos cosas ocurran en un orden garantizado, la respuesta es encadenar con señal, no apilar dos efectos.
Qué viaja con la señal
Sección titulada «Qué viaja con la señal»Una señal no es solo un aviso: puede llevarse consigo el usuario y los furnis con los que estaba trabajando la pila que la envía.
En la pila que recibe, los efectos pueden elegir “la señal” como fuente, y entonces actúan sobre lo que vino de la otra baldosa. Es la manera de pasar información entre pilas sin usar variables.
Ejemplo típico: la pila A detecta quién pisó, envía señal; la pila B recibe y teletransporta “al usuario de la señal”. La pila B nunca supo quién era, y no le hace falta.
Varias pilas escuchando lo mismo
Sección titulada «Varias pilas escuchando lo mismo»Cuando una antena tiene varios oyentes, todos ellos evalúan sus condiciones antes de que ninguno ejecute sus efectos. Todos ven el mismo estado de la sala.
Y va más allá: si un efecto envía varias señales seguidas –una por cada usuario de un grupo, por ejemplo– todas las pilas que reciben evalúan contra el mismo estado inicial. La señal del segundo usuario no ve lo que hizo la del primero.
Esto es deliberado y casi siempre es lo que quieres: evita que el primero de la lista se “coma” el recurso y deje a los demás sin cumplir la condición.
Cuidado con los bucles
Sección titulada «Cuidado con los bucles»Nada te impide que la pila B envíe una señal que despierte a la pila A. Y nada te impide que eso se repita para siempre.
El servidor tiene protecciones que cortan la recursión, así que no vas a tumbar el hotel, pero tu pila dejará de funcionar a mitad de camino y de forma poco predecible. Si necesitas un ciclo, móntalo con un causante periódico, que está pensado para eso.
Antena, no “cable”
Sección titulada «Antena, no “cable”»La antena es un furni normal y corriente que actúa de canal. Dos cosas que conviene saber:
- Si mueves o recoges la antena, las pilas que la referencian dejan de encontrarse.
- Usar antenas distintas para propósitos distintos es lo que mantiene una sala entendible. Una sola antena para todo convierte cualquier envío en un disparo global.
Lo siguiente
Sección titulada «Lo siguiente»- Límites y rendimiento – hasta dónde puedes encadenar.
- Causante: Recibir Señal – la ficha completa.