Eco
En Wired Code: variable.echo
Coge otra variable de la sala —una del sistema, una inteligente, una subvariable o una que creaste tú— y le pone un nombre propio, para poder usarla donde solo se admiten variables creadas por ti.
Cómo funciona
Sección titulada «Cómo funciona»Las variables del sistema, las que empiezan por arroba como @state o @direction, existen siempre y
se pueden leer sin declarar nada. Pero hay sitios que solo aceptan variables creadas por ti: los
complementos que se apilan encima de una caja, como el
Conector de texto, no saben ponerse sobre una del sistema.
Esta caja resuelve eso. La envuelves, le das un nombre, y a partir de ahí se comporta como si la hubieras creado tú: puedes apilarle complementos y usarla donde antes no entraba. También puedes envolver una variable tuya, para darle otro nombre y otros complementos sin tocar la caja original.
No es una copia. Es la misma variable con dos nombres. No guarda ningún valor propio: cuando la lees, te devuelve el de la envuelta; cuando escribes en ella, escribes en la envuelta. Si esperabas una foto congelada o un espejo de una variable tuya, esta pieza no hace eso.
No hereda los complementos de la envuelta. Lo que cuenta es lo que pongas en la baldosa del Eco: un Conector de texto, un Sistema de subida de nivel… La tabla de textos que traiga de fábrica una variable del sistema no pasa a su Eco.
Configuración
Sección titulada «Configuración»
Nombre de la variable, cómo se va a llamar en tu sala: de 1 a 40 caracteres, con letras, números y
guion bajo (_). Al elegir la variable, la ventana te propone uno —el de la envuelta sin la @ ni la ~
y con guiones bajos en lugar de puntos, así que @position.x pasa a ser position_x— si el campo
estaba vacío o llevaba la propuesta de la variable anterior.
Escoge una variable, cuál envuelve, con los cuatro iconos de ámbito —furni, usuario, global y contexto— al lado del rótulo. Salen todas las variables visibles de ese ámbito: las del sistema, las inteligentes, las subvariables y las que has creado tú.
No tiene opciones de disponibilidad: hereda el ámbito de la variable que envuelve, y los cuatro iconos solo filtran la lista.
Ejemplo
Sección titulada «Ejemplo»Decir con palabras si una lámpara está encendida o apagada. El estado de un furni, @state, es un
número, y la variable del sistema no admite complementos, así que primero la envuelves:
Caja de variable: Eco [estado ← @state]Ahora ya puedes apilarle encima, en la misma baldosa, un Conector de texto con la tabla de nombres:
0=apagada1=encendidaY en la pila:
Pila A│├─ Complemento: Marcador de posición de variable│ ├─ Nombre del identificador ................ estado_txt│ ├─ Escoge una variable ..................... estado (ámbito furni)│ ├─ Escoge la fuente de la variable ......... Usar furnis seleccionados (la lámpara)│ └─ Escoge el tipo de visualización ......... Textual│├─ Causante: Click en Furni│ └─ Elige Furni ............................. Interruptor de Suelo 1│└─ Efecto: Mensaje ├─ ¿Cuál es el mensaje? .................... "La lámpara está $(estado_txt)" └─ Visibilidad del mensaje ................. Solo el usuario desencadenanteUn Eco no puede envolver a otro Eco ni a sí mismo. La lista los enseña, pero al pulsar Listo sale el aviso «Un Eco no puede replicarse a sí mismo ni a otro Eco.» y no se guarda: la ventana sigue abierta para que lo corrijas.
Escribir en el Eco escribe en el original. No hay copia que se quede aparte: son el mismo dato. Con las variables del sistema que se pueden escribir, eso es justo lo que quieres.
Si lo que buscas es sacar un dato privado a un sitio público, esto no lo hace. Para eso lee la variable de usuario y escribe su valor en una global con Cambiar valor de variable.