Estados y condiciones

Gestión de estados de ítems y lógica condicional

Lógica condicional

Agrega condiciones a un trigger, para que la acción solo ocurra si se cumplen esas condiciones. Por ejemplo, hacer clic en una puerta solo activa la acción "Open" si no estaba ya abierta.

Para agregar una condición, haz clic en el icono de tres puntos junto a Trigger event y selecciona Add Trigger Condition.



Un solo trigger puede incluir múltiples condiciones. Haz clic en el + icono para agregar más condiciones. Cuando existe más de una condición, puedes seleccionar una de estas opciones:

  • Todas las condiciones deben cumplirse (AND): El trigger solo ocurre si cada una de las condiciones es verdadera.

  • Cualquier condición puede cumplirse (OR) El trigger ocurre si al menos una de las condiciones es verdadera.



States

El States component está incluido en varios smart items. Enumera posibles estados en los que el smart item puede estar. En un momento dado, el smart item está en uno de estos estados. Por ejemplo, una puerta puede estar Open u Closed. La acción Open establece el estado en Open, la acción Close establece el estado en Closed.

Puedes hacer lo siguiente con los estados:

  1. Usar una condición en un trigger para comprobar el estado de una entidad. De esa forma la acción solo se ejecuta si un estado específico está activo.


  1. Cambiar un estado mediante el Set State Loop


  1. Reaccionar a cambios de estado mediante el activan una acción cuando la escena se carga. En lugar de esperar a que el jugador interactúe con un item, la acción se ejecuta de inmediato. trigger event.

Para alternar entre dos acciones, define dos triggers, cada uno con una condición que compruebe un estado. Por ejemplo, las puertas tienen un trigger que activa la acción Open, con una condición que primero comprueba que el estado de la puerta es Closed, y otro trigger que activa la acción Close, con una condición que comprueba que el estado de la puerta es Open. Solo uno de los dos se activa cada vez que el jugador hace clic en la puerta.



Puedes añadir tantos estados como quieras a un smart item. Simplemente haz clic en el Add New State botón para agregar otro a la lista.



Uno de los estados está seleccionado como predeterminado; el elemento siempre comenzará en este estado cuando la escena se ejecute. Puedes asignar un estado diferente como predeterminado haciendo clic en los tres puntos junto a otro de los estados y seleccionando Set as Default.

circle-info

💡 Tip: Mantén las interacciones entre ítems simples. Por ejemplo, evita escenarios como tener un botón que abre una puerta activando tres acciones: reproducir la animación de la puerta, reproducir el sonido de la puerta y cambiar el estado de la puerta. En su lugar, haz que el botón cambie el estado de la puerta. Luego usa un activan una acción cuando la escena se carga. En lugar de esperar a que el jugador interactúe con un item, la acción se ejecuta de inmediato. trigger para que la propia puerta se encargue de reproducir la animación y el sonido cada vez que el estado cambie.

Counter

te permite seleccionar si una animación debe reproducirse solo una vez o si debe mantenerse en bucle. Counter component para llevar la cuenta de un número, que puede cambiar a medida que el jugador realiza acciones en la escena. Puedes usar los valores del contador en la lógica condicional.

Cuando una entidad tiene un Counter component, puedes ejecutar las siguientes acciones sobre ella:

  • Increment Counter: Incrementa el valor del contador en 1.

  • Decrease Counter: Disminuye el valor del contador en 1.

  • Set Counter: Establece el valor del contador a un número específico, por ejemplo para restablecerlo a 0.

te permite seleccionar si una animación debe reproducirse solo una vez o si debe mantenerse en bucle. On Counter Change trigger para realizar una acción cada vez que cambie el valor del contador. Agrega una condición a este trigger para que solo se active al superar cierto umbral.



En una condición, puedes comprobar si el valor del contador es

  • Mayor que un valor dado

  • Menor que un valor dado

  • Igual a un valor dado

circle-info

💡 Tip: Para comprobar mayor o igual, puedes agregar dos condiciones al trigger event, usando la opción AND.

Para hacer que una acción ocurra solo una vez al superar un umbral, y no se repita en cada incremento posterior, combina el contador con un Animator component. Establece el State en "Done" cada vez que alcances el valor deseado, y agrega una condición para comprobar este estado en el trigger event.

, etc.

Última actualización