Bark On Idle

Component > Dialogue System > Trigger > Bark On Idle

Bark On Idle barks automatically on an interval.

Properties

Property Function
Once Bark once and then destroy this component
Conversation The title of the conversation that contains the bark lines
Condition The Trigger Conditions required for the trigger to fire
Skip If No Valid Entries If ticked, don't fire the trigger if no entries have Conditions that are true
Conversant The speaker of the bark. In unassigned, defaults to the component's GameObject
Bark Order Specifies whether to bark the lines in the conversation in sequential or random order or the first valid entry
Allow During Conversations If ticked, the trigger may fire even when a conversation is active
Cache Bark Lines Only evaluate Conditions when the NPC is first enabled, and always use the resulting list of entries (an optimization option for slow devices)
Min Seconds The minimum seconds between barks
Max Seconds The maximum seconds between barks
Target The actor to whom the bark is directed. If assigned, this GameObject also receives "OnBarkStart" and "OnBarkEnd" messages

Details

This component makes an actor bark every [Min Seconds .. MaxSeconds] seconds. The actor (assigned to the Conversant property) must have a Bark UI.

When an actor barks, it sends "OnBarkStart", "OnBarkLine", and "OnBarkEnd" messages to the Conversant and Target. See Script Messages for more details.

Note that the NPC will not bark if you're using Bark Priority Values and the NPC is currently barking a higher priority line.

Bark On Idle can give a lot of life to your game, allowing NPCs to bark without any prompting from the player. You can make barks react to the current state of the game world by setting Conditions on the dialogue entries and/or using [lua()] Dialogue Markup Tags.

If you want the NPC to bark only when the player is nearby, use a Range Trigger.


<< Components