Component:RandomObjectSpawner: Difference between revisions

From Resonite Wiki
No edit summary
 
m change resonite button to legacy button, type not types
Line 12: Line 12:
{{Table ComponentTriggers
{{Table ComponentTriggers
|Spawn()|''None''| Spawns a slot randomly selected from <code>Templates</code>, located at the origin of this component's parent slot.
|Spawn()|''None''| Spawns a slot randomly selected from <code>Templates</code>, located at the origin of this component's parent slot.
|SpawnAtPoint()|'''[[:Category:Types:Float3|Float3]]'''| Spawns a slot randomly selected from <code>Templates</code>, located at the position specified in the <code>Float3</code> argument  
|SpawnAtPoint()|'''[[Types:Float3|Float3]]'''| Spawns a slot randomly selected from <code>Templates</code>, located at the position specified in the <code>Float3</code> argument  
}}
}}
{{Table ComponentFields
{{Table ComponentFields
Line 18: Line 18:
|LocalSpace|Slot| Slot where the selected template item will be spawned, unless <code>UseParentSpace</code> is true, or <code>OverrideRootSpace</code> is not null.
|LocalSpace|Slot| Slot where the selected template item will be spawned, unless <code>UseParentSpace</code> is true, or <code>OverrideRootSpace</code> is not null.
|UseParentSpace|Bool| Template item will be spawned in the parent of the <code>LocalSpace</code> slot, unless <code>OverrideRootSpace</code> is set.
|UseParentSpace|Bool| Template item will be spawned in the parent of the <code>LocalSpace</code> slot, unless <code>OverrideRootSpace</code> is set.
|OverrideRootSpace|RootSpace| Reference to a [[:Category:Types:RootSpace|SpawnSpace]] element on another component, which overrides <code>LocalSpace</code> and <code>UseParentSpace</code> on this component.
|OverrideRootSpace|RootSpace| Reference to a [[Type:RootSpace|SpawnSpace]] element on another component, which overrides <code>LocalSpace</code> and <code>UseParentSpace</code> on this component.
}}
}}
== Behavior ==
== Behavior ==
When triggered by any event source that accepts an Action (for <code>Spawn()</code>), or Action<float3> (for <code>SpawnAtPoint()</code>, this component will spawn a random slot from <code>Templates</code>
When triggered by any event source that accepts an Action (for <code>Spawn()</code>), or Action<float3> (for <code>SpawnAtPoint()</code>, this component will spawn a random slot from <code>Templates</code>


The <code>Spawn()</code> trigger can be invoked by a component such as [[ButtonActionTrigger (Component)| Button Action Trigger]], when bound to a [[Button (Component)|UIX Button]] or [[NeosButton (Component)| Resonite Button]]
The <code>Spawn()</code> trigger can be invoked by a component such as [[ButtonActionTrigger (Component)| Button Action Trigger]], when bound to a [[Button (Component)|UIX Button]] or [[LegacyButton (Component)| Legacy Button]]


The <code>SpawnAtPoint()</code> trigger can be invoked by a component such as [[CharacterEventTrigger (Component)|Character Event Trigger]], which provides the required '''[[:Category:Types:Float3| Float3]]''' argument.
The <code>SpawnAtPoint()</code> trigger can be invoked by a component such as [[CharacterEventTrigger (Component)|Character Event Trigger]], which provides the required '''[[Type:Float3| Float3]]''' argument.


Prior to [https://discordapp.com/channels/402159838827905024/469131434628612116/774938408870346772 Build 2020.11.8.605], this component would duplicate a random slot from <code>Templates</code> in-place, without changing its location.
Prior to [https://discordapp.com/channels/402159838827905024/469131434628612116/774938408870346772 Build 2020.11.8.605], this component would duplicate a random slot from <code>Templates</code> in-place, without changing its location.

Revision as of 18:32, 18 January 2024


This article or section is a Stub. You can help the Resonite Wiki by expanding it.


Component image 
RandomObjectSpawner component as seen in the Scene Inspector

Intoduction

The RandomObjectSpawner component selects a slot from the Templates list, and spawns it either at this component's parent (in the case of Spawn()), or at the point specified in an argument (in the case of SpawnAtPoint())

Usage

Triggers
Name Arguments Description
Spawn() None Spawns a slot randomly selected from Templates, located at the origin of this component's parent slot.
SpawnAtPoint() Float3 Spawns a slot randomly selected from Templates, located at the position specified in the Float3 argument
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.
Templates SpawnData List of slots to be selected from, when a Trigger is invoked
LocalSpace Slot Slot where the selected template item will be spawned, unless UseParentSpace is true, or OverrideRootSpace is not null.
UseParentSpace Bool Template item will be spawned in the parent of the LocalSpace slot, unless OverrideRootSpace is set.
OverrideRootSpace RootSpace Reference to a SpawnSpace element on another component, which overrides LocalSpace and UseParentSpace on this component.

Behavior

When triggered by any event source that accepts an Action (for Spawn()), or Action<float3> (for SpawnAtPoint(), this component will spawn a random slot from Templates

The Spawn() trigger can be invoked by a component such as Button Action Trigger, when bound to a UIX Button or Legacy Button

The SpawnAtPoint() trigger can be invoked by a component such as Character Event Trigger, which provides the required Float3 argument.

Prior to Build 2020.11.8.605, this component would duplicate a random slot from Templates in-place, without changing its location.

Examples

Related Components