createTrigger: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>") |
Lou Montana (talk | contribs) m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>") |
||
Line 78: | Line 78: | ||
"this", | "this", | ||
"thisTrigger getVariable ""BarGateObj""; animateSource [""Door_1_sound_source"", 1]", | "thisTrigger getVariable ""BarGateObj""; animateSource [""Door_1_sound_source"", 1]", | ||
"thisTrigger getVariable ""BarGateObj""; | "thisTrigger getVariable ""BarGateObj""; animateSource [""Door_1_sound_source"", 0]" | ||
]; | ]; | ||
};</code> | };</code> |
Revision as of 13:10, 12 May 2022
Description
- Description:
- Creates a trigger of the given type and at the given position. The type must be a class name in CfgNonAIVehicles or CfgVehicles with
simulation = detector
. An array containing all units that have activated the trigger is available vialist triggerobj
. Since triggers are objects, commands such as getPosASL, setPosASL, deleteVehicle, etc. work on them.Triggers are created with default parameters:
- a: 50
- b: 50
- c: -1
- angle: 0
- rectangular: false
- activationBy: None
- activationType: Present
- repeating: false
- timeoutMin: 0
- timeoutMid: 0
- timeoutMax: 0
- interruptable: true
- type: None
- text: ""
- name: ""
- expCond: "this"
- expActiv: ""
- expDesactiv: ""
- 1.98 interval: 0.5
- Groups:
- Triggers
Syntax
- Syntax:
- createTrigger [type, position, makeGlobal]
- Parameters:
- type: String - usually "EmptyDetector"
- position: Position2D, Position3D or Object
- since 1.44
- makeGlobal: Boolean - (Optional - default true) locality flag
- Return Value:
- Object - created trigger
Examples
- Example 1:
_trg = createTrigger ["EmptyDetector", getPos player]; _trg setTriggerArea [5, 5, 0, false]; _trg setTriggerActivation ["CIV", "PRESENT", true]; _trg setTriggerStatements ["this", "hint 'Civilian near player'", "hint 'no civilian near'"];
- Example 2:
- Open/close Bar Gate automatically:
//--- init of the Bar Gate if (isServer) then { _gateTrigger = createTrigger ["EmptyDetector", getPosWorld this, false]; _gateTrigger setVariable ["BarGateObj", this]; _gateTrigger setTriggerActivation ["ANYPLAYER", "PRESENT", true]; _gateTrigger setTriggerArea [5, 25, getDir this, true]; _gateTrigger setTriggerStatements [ "this", "thisTrigger getVariable ""BarGateObj""; animateSource [""Door_1_sound_source"", 1]", "thisTrigger getVariable ""BarGateObj""; animateSource [""Door_1_sound_source"", 0]" ]; };
Additional Information
- See also:
- setTriggerActivation setTriggerArea setTriggerStatements setTriggerText setTriggerTimeout setTriggerType setEffectCondition setSoundEffect setMusicEffect setTitleEffect deleteVehicle synchronizeWaypoint synchronizeTrigger createGuardedPoint triggerInterval setTriggerInterval enableSimulation simulationEnabled
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
- Posted on Mar 06, 2013 - 14:15 (UTC)
- Calling list immediately after creating a trigger this way (and setting up activation, area, statements, timeout, etc..), will return <null> instead of an array. It seems the trigger needs about 1 second to initialise, after which it will behave as expected: returning an array of all the objects inside the trigger (the ones matching the criteria), or an empty array.
Categories:
- Scripting Commands
- Introduced with Operation Flashpoint: Elite version 1.00
- Operation Flashpoint: Elite: New Scripting Commands
- Operation Flashpoint: Elite: Scripting Commands
- ArmA: Armed Assault: Scripting Commands
- Arma 2: Scripting Commands
- Arma 2: Operation Arrowhead: Scripting Commands
- Take On Helicopters: Scripting Commands
- Arma 3: Scripting Commands
- Command Group: Triggers