Arma Reforger Explorer 1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Loading...
Searching...
No Matches
SCR_InstantTriggerComponent.c
Go to the documentation of this file.
1[ComponentEditorProps(category: "GameScripted/Trigger", description: "Gets the BaseTriggerComponent on the entity and triggers it on EOnInit")]
3{
4 //------------------------------------------------------------------------------------------------
5 //Needs BaseTriggerComponent
6 static override array<typename> Requires(IEntityComponentSource src)
7 {
8 array<typename> requires = {};
9
10 requires.Insert(BaseTriggerComponent);
11
12 return requires;
13 }
14}
15
16class SCR_InstantTriggerComponent : ScriptComponent
17{
18 //------------------------------------------------------------------------------------------------
19 override void EOnInit(IEntity owner)
20 {
21 if (SCR_Global.IsEditMode(owner))
22 return;
23
24 //~ Call init slightly later so Other systems can set the proper instigators
25 GetGame().GetCallqueue().CallLater(DelayedInit, 50, false, owner);
26 }
27
28 //------------------------------------------------------------------------------------------------
29 void DelayedInit(IEntity owner)
30 {
31 if (!owner)
32 return;
33
35 if (trigger)
36 trigger.OnUserTrigger(owner);
37 else
38 Print("'SCR_InstantTriggerComponent' could not find 'BaseTriggerComponent'!", LogLevel.ERROR);
39 }
40
41 //------------------------------------------------------------------------------------------------
42 override void OnPostInit(IEntity owner)
43 {
44 SetEventMask(owner, EntityEvent.INIT);
45 }
46}
ArmaReforgerScripted GetGame()
Definition game.c:1398
enum EAIGroupCombatMode ComponentEditorProps(category:"GameScripted/AI", description:"Component for utility AI system for groups")
override void DelayedInit(IEntity owner)
override void DelayedInit()
proto external int SetEventMask(notnull IEntity owner, int mask)
proto external Managed FindComponent(typename typeName)
static bool IsEditMode()
Definition Functions.c:1566
void EOnInit(IEntity owner)
proto void Print(void var, LogLevel level=LogLevel.NORMAL)
Prints content of variable to console/log.
LogLevel
Enum with severity of the logging message.
Definition LogLevel.c:14
EntityEvent
Various entity events.
Definition EntityEvent.c:14