![]() |
#1
|
|||
|
|||
![]()
I want to use one time trigger to spawn multiple groups in an [ACTION] spawn
Is there a way you can spawn multiple actions when the time trigger G17 is active? [Trigger] G17 TTime 60 [Action] action17 ASpawnGroup 1 BoB_LW_KuFlGr_706.01 action18 ASpawnGroup 1 BoB_LW_KuFlGr_706.04 action19 ASpawnGroup 1 BoB_LW_KuFlGr_706.02 Code:
base.OnTrigger(missionNumber, shortName, active); if ("G17".Equals(shortName) && active) { AiAction action = GamePlay.gpGetAction("action17"); if (action != null) { action.Do(); }
__________________
__________________ Win7, 64bit Ultra Asus P8P67Pro MB Intel i7-2600K Coursair 16GB (4x 4GB), DDR3-1600MHz Gainward Nvidia 580GTX 3GB DDR5 850-Watt Modular Power Supply WIN7 and COD on Gskill SSD 240GB 40" Panasonic LCD TrackIR5 + Thrustmaster Warthog stick, throttle & pedals |
#2
|
|||
|
|||
![]()
yes create a list (or array) which contains the actionnames.
Example: Code:
List<string> ActionToDoList = new List<string>{"action17", "action18", "action19"}; if ("G17".Equals(shortName) && active) { ActionToDoList.ForEach(item => { AiAction action = GamePlay.gpGetAction(item); if (action != null) { action.Do(); } }); } Code:
if ("G17".Equals(shortName) && active) { AiAction action = GamePlay.gpGetAction("action17"); if (action != null) { action.Do(); } action = GamePlay.gpGetAction("action18"); if (action != null) { action.Do(); } action = GamePlay.gpGetAction("action19"); if (action != null) { action.Do(); } } Last edited by FG28_Kodiak; 03-21-2012 at 08:43 AM. |
#3
|
|||
|
|||
![]()
FG28_Kodiak I tried this with a number of other changes but I keep getting the following server error.
The name 'action' does not exist in the current context. I have looked at other coding and can not see the problem. Code:
base.OnTrigger(missionNumber, shortName, active); List<string> ActionToDoList = new List<string>{"action17", "action18", "action19", "action20", "action21", "action22"}; if ("G17".Equals(shortName) && active) { ActionToDoList.ForEach(item => { if (action != null) { action.Do(); } }); } and if I use this code I get another error saying Invalid expression term 'if' Code:
List<string> ActionToDoList = new List<string>{"action17", "action18", "action19", "action20", "action21", "action22"}; if ("G17".Equals(shortName) && active) { ActionToDoList.ForEach(item => if (action != null) { action.Do(); } });
__________________
__________________ Win7, 64bit Ultra Asus P8P67Pro MB Intel i7-2600K Coursair 16GB (4x 4GB), DDR3-1600MHz Gainward Nvidia 580GTX 3GB DDR5 850-Watt Modular Power Supply WIN7 and COD on Gskill SSD 240GB 40" Panasonic LCD TrackIR5 + Thrustmaster Warthog stick, throttle & pedals Last edited by hc_wolf; 03-21-2012 at 08:20 PM. |
#4
|
|||
|
|||
![]()
Hm look at my example.
![]() ActionToDoList.ForEach(item => { AiAction action = GamePlay.gpGetAction(item); //<== you forget this line if (action != null) { action.Do(); } }); Second problem: if ("G17".Equals(shortName) && active) { ActionToDoList.ForEach(item => { //<== you forget this bracket if (action != null) { action.Do(); } }); |
#5
|
|||
|
|||
![]()
Yes that got it. Gees mate. I am gonna have to put your name in lights in this next mission to be released hahaha
Thanks so much
__________________
__________________ Win7, 64bit Ultra Asus P8P67Pro MB Intel i7-2600K Coursair 16GB (4x 4GB), DDR3-1600MHz Gainward Nvidia 580GTX 3GB DDR5 850-Watt Modular Power Supply WIN7 and COD on Gskill SSD 240GB 40" Panasonic LCD TrackIR5 + Thrustmaster Warthog stick, throttle & pedals |
![]() |
|
|