Jump to content
Sign in to follow this  
lightbug

Atributo "Condition"

Recommended Posts

Hola, acá dejo un simple pero muy útil atributo que me es de mucha ayuda. Despues de tanto renegar viendo que algun campo tenía asignado algún valor/referencia, pero resultaba que el script no estaba en el "modo adecuado" para que ese campo funcione (debido a alguna otra propiedad) me puse y me salió este atributo. Estoy casi seguro de que vi un atributo similar dando vueltas en internet (y probablemente mucho mejor que este 😑).

¿Qué hace?

El atributo se encarga de mostrar/ocultar (visibilidad o edición) la propiedad elegida en base a una condición, que relaciona a alguna otra propiedad del mismo objeto (dentro de la clase).

¿Dónde está el código?

Regístrate para acceder a este contenido.

¿Para qué sirve?

Por ejemplo, suele pasar que a veces tenemos un campo X, que a pesar de figurar en el inspector, este no aporta nada. Un ejemplo clásico es el poder filtrar por tag, si queremos usar esto necesitamos de un string que represente a dicho tag, y de una bool que lo habilite o no. Si la bool es false, entonces el campo de tag nos molesta.

Ni hablar si nos gusta hacer herramientas para otros usuarios, ya visualmente les estamos diciendo que eso que no aparece no debería influir en el resultado (de ahí a que lo haga es otro tema 😅)

¿Cómo lo uso?

El atributo se coloca encima del campo que queremos condicionar.

Luego se especifican los parámetros del atributo:

  1. Propiedad usada como condición (un string con el nombre exacto)
  2. Tipo de condición (igual, verdadero, mayor que, menor que)
  3. Tipo de visibilidad.
  4. Valor del argumento (Ej: si es mayor a 5)

Ejemplo:

Spoiler
Regístrate para acceder a este contenido.

 

Condition-Attr.gif

 

Espero que sirva de algo.

Saludos.

Edited by lightbug
  • Thanks 1

Share this post


Link to post
Share on other sites
On 11/20/2020 at 7:43 AM, leocub58 said:

Qué bueno, no lo conocía. Siempre tiro de customInspectors para hacer ese tipo de cosas

Sí, yo terminaba haciendo clases de C# para cada grupito de variables dependientes de otras, y a eso le metía un PropertyDrawer.

Share this post


Link to post
Share on other sites
Sign in to follow this  

×
×
  • Create New...