Ai goal actbusy: Difference between revisions
Jump to navigation
Jump to search
m (Fixed true format) |
m (→Inputs: Syntax!) |
||
Line 45: | Line 45: | ||
:The ''max time'' parameter specifies the maximum time to actbusy. If no ''max time'' is specified, it'll use the default. Specifying 0 as the ''max time'' will make the NPC(s) act busy until disturbed. | :The ''max time'' parameter specifies the maximum time to actbusy. If no ''max time'' is specified, it'll use the default. Specifying 0 as the ''max time'' will make the NPC(s) act busy until disturbed. | ||
:The ''$customactivityorsequence'' parameter specifies the name of a custom activity, prepended by a "$", that the NPC(s) will preform while navigating to the node, e.g. <code>$ACT_RUN</code> will make the NPC(s) run to the node. Sequence names can be used instead of activities. | :The ''$customactivityorsequence'' parameter specifies the name of a custom activity, prepended by a "$", that the NPC(s) will preform while navigating to the node, e.g. <code>$ACT_RUN</code> will make the NPC(s) run to the node. Sequence names can be used instead of activities. | ||
*'''ForceThisNPCToActBusy''' | *'''ForceThisNPCToActBusy <string>''' | ||
: | : Force a parameter-specified NPC (outputted from another entity) to act busy. Only usable from an output that specifies an entity, as a connection for outputs of other entities that pass along the NPC. The most common usage of this is to connect the ''OnSpawnNPC'' output of an [[npc_maker]] to this input, since the ''OnSpawnNPC'' output contains the spawned NPC in the parameter. If there are multiple NPCs with the same name, only ''one'' will be ordered. | ||
*'''ForceThisNPCToLeave''' | *'''ForceThisNPCToLeave <string>''' | ||
: | : Force a parameter-specified NPC (outputted from another entity) to find an ''NPC exit point'' (HINT_NPC_EXIT_POINT hintnode) and vanish. Supports wildcards. | ||
*'''SetBusySearchRange''' | *'''SetBusySearchRange <float>''' | ||
: | : Alters the '''busysearchrange''' keyvalue for all actors. | ||
==Outputs== | ==Outputs== |
Revision as of 22:42, 5 April 2006
Entity Description
This entity points to a set of NPCs to control, and contains options about how it should go about making those NPCs act busy. There are two common methods of using ai_goal_actbusy entities:
The first is to fire the Activate input on the ai_goal_actbusy entity, which will cause it to start ordering the NPCs under its command to act busy.
The second is to leave the ai_goal_actbusy inactive, and send it ForceNPCToActBusy inputs to order specific NPCs under its command to act busy.
Keyvalues
- Template:Kv targetname
- actor
- <target_name_or_class> Actor(s) to affect - The targetname or classname of any NPCs that is to act busy. Wildcards are supported.
- StartActive
- <boolean> Start Active
- SearchType
- <choices> Search Type - What type of targetname the actor keyvalue is refering to.
Literal value Description 0 Entity Name 1 Classname
- busysearchrange
- <float> Search Range for Busy Hints - Maximum distance between an actbusy hint and NPC for the NPC to consider it.
- visibleonly
- <boolean> Visible Busy Hints Only - If set, an NPC will only consider actbusy hints in view when deciding which to use. Once the choice has been made it will not change, even if new hints become visible.
Inputs
- Template:I targetname
- Activate
- Begin acting busy. Begins ordering NPCs to actbusy.
- Deactivate
- Cease acting busy. Ends ordering NPCs to actbusy. They will remain busy until they decide to move, at which point they will return to normal behavior.
- ForceNPCToActBusy <string>
- Format:
<targetname> [hint node targetname] [teleport] [nearest] [$<custom activity or sequence>] [max time]
- Force an NPC to act busy.
- The targetname parameter specifies the name of the NPC(s).
- The hint node targetname parameter specifies the name of the Hint node. Used to force an NPC to act busy on a specific node. If no hint node targetname is specified, it'll search for a random one.
- If the teleport keyword is specified as a parameter, the NPC will teleport onto the actbusy node instead of navigating to it.
- If the nearest keyword is specified as a parameter, the NPC will choose the nearest valid actbusy node, instead of choosing one randomly from all valid actbusy nodes.
- The max time parameter specifies the maximum time to actbusy. If no max time is specified, it'll use the default. Specifying 0 as the max time will make the NPC(s) act busy until disturbed.
- The $customactivityorsequence parameter specifies the name of a custom activity, prepended by a "$", that the NPC(s) will preform while navigating to the node, e.g.
$ACT_RUN
will make the NPC(s) run to the node. Sequence names can be used instead of activities.
- ForceThisNPCToActBusy <string>
- Force a parameter-specified NPC (outputted from another entity) to act busy. Only usable from an output that specifies an entity, as a connection for outputs of other entities that pass along the NPC. The most common usage of this is to connect the OnSpawnNPC output of an npc_maker to this input, since the OnSpawnNPC output contains the spawned NPC in the parameter. If there are multiple NPCs with the same name, only one will be ordered.
- ForceThisNPCToLeave <string>
- Force a parameter-specified NPC (outputted from another entity) to find an NPC exit point (HINT_NPC_EXIT_POINT hintnode) and vanish. Supports wildcards.
- SetBusySearchRange <float>
- Alters the busysearchrange keyvalue for all actors.
Outputs
- OnNPCFinishedBusy
- <string> Fired when an NPC targeted by this goal finishes an ActBusy animation sequence.
- OnNPCLeft
- <string> Fired when an NPC targeted by this goal, ordered by the ForceThisNPCToLeave input, finishes its forced leave.
- OnNPCStartedBusy
- <string> Fired when an NPC targeted by this goal starts an ActBusy animation sequence.