Component:MultiBoolConditionDriver: Difference between revisions

From Resonite Wiki
Automated: update Fields, Categories
m Fix logic mistakes I made.
 
(4 intermediate revisions by 3 users not shown)
Line 6: Line 6:
|Name=MultiBoolConditionDriver
|Name=MultiBoolConditionDriver
}}
}}
== Intoduction ==
The '''MultiBoolConditionDriver''' drives <code>Target</code> depending on the state of the <code>Conditions</code> list, and the <code>ConditionMode</code> selected.
The '''MultiBoolConditionDriver''' drives <code>Target</code> depending on the state of the <code>Conditions</code> list, and the <code>ConditionMode</code> selected.
One popular use for this component is disabling meshes that need to be turned on or off in conjunction with other meshes.
For example, disabling fur tufts when clothing is enabled by using Active on each clothing item as a Condition, Mode set to 'None', and Target being Active on the fur tuft.
== Usage ==
== Usage ==
{{Table ComponentFields
{{Table ComponentFields
|Target|{{RootFieldType|FieldDrive`1|[[Type:Bool|Bool]]}}|TypeAdv0=true| The field to drive to true if the bools in <code>Conditions</code> meet the conditions set by <code>ConditionMode</code>
|Target|{{RootFieldType|FieldDrive`1|[[Type:Bool|Bool]]}}|TypeAdv0=true| The field to drive to true if the bools in <code>Conditions</code> meet the conditions set by <code>ConditionMode</code>
|Mode|'''[[#ConditionMode|ConditionMode]]'''|TypeAdv1=true| What state the bools in <code>Conditions</code> must be in, to drive <code>Target</code> to true.
|Mode|'''[[#ConditionMode|MultiBoolConditionDriver.ConditionMode]]'''|TypeAdv1=true| What state the bools in <code>Conditions</code> must be in, to drive <code>Target</code> to true.
|Conditions|{{RootFieldType|SyncList`1|[[#Condition|Condition]]}}|TypeAdv2=true| A list of bool fields to compare against the <code>ConditionMode</code>
|Conditions|{{RootFieldType|SyncList`1|[[#Condition|MultiBoolConditionDriver.Condition]]}}|TypeAdv2=true| A list of bool fields to compare against the <code>ConditionMode</code>
}}
}}
== Behavior ==
== Behavior ==
Mode can be one of:
* All: Logical AND
* Any: Logical OR
* None: Logical NOR
== Examples ==
== Examples ==
[[File:MultiBoolConditionDriver example1.png|thumb|Example showing normal and inverted inputs.]]Top driven ValueField goes TRUE when the following conditions(Mode: All) are meet.
Condition 0 is TRUE
Condition 1 is TRUE
Condition 2 is FALSE  (Due to 'invert' flag.)
== Related Components ==
== Related Components ==
</translate>
</translate>

Latest revision as of 04:14, 30 September 2025

This article or section is a stub. You can help the Resonite wiki by expanding it.
Component image 
MultiBoolConditionDriver component as seen in the Scene Inspector

The MultiBoolConditionDriver drives Target depending on the state of the Conditions list, and the ConditionMode selected.

One popular use for this component is disabling meshes that need to be turned on or off in conjunction with other meshes.

For example, disabling fur tufts when clothing is enabled by using Active on each clothing item as a Condition, Mode set to 'None', and Target being Active on the fur tuft.

Usage

Fields
Name Type Description
persistent Bool Determines whether or not this item will be saved to the server.
UpdateOrder Int Controls the order in which this component is updated.
Enabled Bool Controls whether or not this component is enabled. Some components stop their functionality when this field is disabled, but some don't.
Target field drive of Bool The field to drive to true if the bools in Conditions meet the conditions set by ConditionMode
Mode MultiBoolConditionDriver.ConditionMode What state the bools in Conditions must be in, to drive Target to true.
Conditions list of MultiBoolConditionDriver.Condition A list of bool fields to compare against the ConditionMode

Behavior

Mode can be one of:

  • All: Logical AND
  • Any: Logical OR
  • None: Logical NOR

Examples

Example showing normal and inverted inputs.

Top driven ValueField goes TRUE when the following conditions(Mode: All) are meet.

Condition 0 is TRUE

Condition 1 is TRUE

Condition 2 is FALSE (Due to 'invert' flag.)

Related Components