createTrigger: Difference between revisions
Jump to navigation
Jump to search
m (page overhaul) |
Lou Montana (talk | contribs) m (Some wiki formatting) |
||
Line 23: | Line 23: | ||
|descr= Creates a [[trigger]] of the given type and at the given position. The type must be a class name in ''CfgNonAIVehicles'' or ''CfgVehicles'' with {{ic|simulation {{=}} detector}}. An array containing all units that have activated the trigger is available via {{ic|[[list]] triggerobj}}. Since triggers are [[object|'''objects''']], commands such as [[getPosASL]], [[setPosASL]], [[deleteVehicle]], etc. work on them. | |descr= Creates a [[trigger]] of the given type and at the given position. The type must be a class name in ''CfgNonAIVehicles'' or ''CfgVehicles'' with {{ic|simulation {{=}} detector}}. An array containing all units that have activated the trigger is available via {{ic|[[list]] triggerobj}}. Since triggers are [[object|'''objects''']], commands such as [[getPosASL]], [[setPosASL]], [[deleteVehicle]], etc. work on them. | ||
{{Feature | Informative | Since | {{Feature | Informative | Since {{arma3}} v1.54 triggers can be disabled/enabled using [[enableSimulation]] command.}} | ||
Triggers are created with default parameters: | Triggers are created with default parameters: | ||
{{Columns|4| | {{Columns|4| | ||
* <tt>a</tt>: 50 | * <tt>a</tt>: 50 | ||
* <tt>b</tt>: 50 | * <tt>b</tt>: 50 | ||
* <tt>c</tt>: -1 | * <tt>c</tt>: -1 | ||
* <tt>angle</tt>: 0 | * <tt>angle</tt>: 0 | ||
Line 45: | Line 45: | ||
* <tt>expActiv</tt>: "" | * <tt>expActiv</tt>: "" | ||
* <tt>expDesactiv</tt>: "" | * <tt>expDesactiv</tt>: "" | ||
* <tt>interval</tt>: 0.5 | * {{GVI|arma3|1.98|size=0.8}} <tt>interval</tt>: 0.5 | ||
}} | }} | ||
Line 55: | Line 55: | ||
|p2= type: [[String]] - usually "EmptyDetector" | |p2= type: [[String]] - usually "EmptyDetector" | ||
|p3= position: [[Position2D]], [[Position3D]] or [[Object]] | |p3= position: [[Position2D]], [[Position3D]] or [[Object]] | ||
|p4= makeGlobal (Optional - default [[true]]) | |p4= makeGlobal: [[Boolean]] - (Optional - default [[true]]) locality flag | ||
* [[true]] - trigger is global {{Icon|globalEffect|24}} | * [[true]] - trigger is global {{Icon|globalEffect|24}} | ||
* [[false]] - trigger is local {{Icon|localEffect|24}} | * [[false]] - trigger is local {{Icon|localEffect|24}} | ||
|p4since= arma3 1.44 | |||
|r1= [[Object]] - created trigger | |r1= [[Object]] - created trigger | ||
Line 89: | Line 90: | ||
<dd class="notedate">Posted on March 6, 2013 - 14:15 (CEST)</dd> | <dd class="notedate">Posted on March 6, 2013 - 14:15 (CEST)</dd> | ||
<dt class="note">[[User:TeaCup|teaCup]]</dt> | <dt class="note">[[User:TeaCup|teaCup]]</dt> | ||
<dd class="note">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. | <dd class="note">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.</dd> | ||
</dl> | </dl> |
Revision as of 09:56, 11 August 2021
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, position, makeGlobal]: Array
- 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:
- setTriggerActivationsetTriggerAreasetTriggerStatementssetTriggerTextsetTriggerTimeoutsetTriggerTypesetEffectConditionsetSoundEffectsetMusicEffectsetTitleEffectdeleteVehiclesynchronizeWaypointsynchronizeTriggercreateGuardedPointtriggerIntervalsetTriggerIntervalenableSimulationsimulationEnabled
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 March 6, 2013 - 14:15 (CEST)
- teaCup
- 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