Jump to content
Firebro113

thisList Does Not Work without Activation

Recommended Posts

I have 2 triggers placed side-by-side that 5 BLUFOR units are inside, with these attributes:

 

Trigger 1:

  • Activation BLUFOR, Type Present
  • Expression: condition true, onActivation "hint str (count thisList);"
  • Timer: None

Trigger 2:

  • Activation None
  • Expression: (identical to Trigger 1)
  • Timer: 1 sec

 

The problem is that the Trigger 1's hint message displays "5" while Trigger 2's displays "0", seemingly indicating that thisList does not work when there is no activation conditon.

 

At first, I thought it was the units not initializing right at the start for thisList to pick up, but the timer disproves that.

 

How could I fix this?

Share this post


Link to post
Share on other sites

show screenshots of your triggers pls or try to give more structured info...

Share this post


Link to post
Share on other sites
6 hours ago, Firebro113 said:

indicating that thisList does not work when there is no activation conditon.

Sounds about right, thisList is a list of objects that satisfies the activation. If you have no activation then there is no list.

 

6 hours ago, Firebro113 said:

Expression: condition true

Just true will make the trigger fire no matter the activation. This will make the trigger activate even though there maybe no thisList results.

 

6 hours ago, Firebro113 said:

How could I fix this? 

Supply an activation. I suppose it depends on what you are actually doing and where.

Can always make your own code to provide a list...

_myList = allunits select { _x inArea thisTrigger && { side group _x isEqualTo west } };

 

Share this post


Link to post
Share on other sites

@sarogahtyp Can't, website won't let me.

 

@Larrow

11 minutes ago, Larrow said:

Of course not, thisList is a list of objects that satisfies the activation. If you have no activation then there is no list.

 

So, you're saying my guess is correct, right? The wiki didn't explicitly state it, so wasn't sure.

 

11 minutes ago, Larrow said:

Just ture will make the trigger fire no matter the activation. This will make the trigger activate even though there maybe no thisList results.

 

Well that's kind of the point, I was simply testing how thisList works, I would obviously include an actual condition in missions.

 

Edit: Also, thank you for the solution, didn't see it at first.

Share this post


Link to post
Share on other sites

thisList refers to activation (preset condition like BLUFOR Present). thisList is not the result for some "count units" satisfying the condition field!

 

Test in a trigger area, BLUFOR Present, place 8 BLUFOR & 4 Civilians

In On act. field: hint str count thisList

 

now, in condition field:

this  // returns 8 (the BLUFOR)

true //  8 (based on thisList of course)

what ever returns true // 8

OK

Change the pre-set condition, thisList will return the preset count:

- for None  on preset and something true on cond. // 0   The trigger fires but there is no pre-set count.

- for Anybody on preset and something true on cond (no matter what (like:   {_x inArea thisTrigger && side _x == WEST} count allUnits >0) // 12

Here the condition is true (8>0) but thisList is not supposed to return 8

 

The result of the magic variable thisList depends on the magic variable this (the preset condition).

 

NOTE: The trigger condition (preset and condition field) is checked twice a second but, when you are using a repeatable trigger, the on act. field will run the code at the moment the condition is true. That means  thisList is the "actual array" at this moment. You need to deactivate the trigger in order to re-run the code, applying the new actual value for thisList (even thisList is actualized in engine of the trigger each 0.5 sec.). Important, for example, if you need to update the comings and goings in the trigger.

 

  • Like 2

Share this post


Link to post
Share on other sites

@pierremgi Ok, thank you for the explanation.

What about Seized by? When I tried, it seemed like it takes into account all units.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×