Hi.
If wall have the trigger events then make a separate fsm for trigger event.
State 1 have a trigger stay and a Set bool value 'false' (name it "In Trigger" for example) and connect to state 2
State 2 have a trigger exit and a Set bool value 'true' and connect to state 1.
Then have a 2nd fsm and use 'Fsm Bool Test' (to check "In Trigger")
if in trigger fade out then after fade out you can check again if in trigger is false to fade in.
This might not be the most efficient way tho.
A different way would be using arrays and a Overlap Box action (
Ecosystem)
have 1 array with all 'Unfaded' walls, then have a 2nd array with 'Faded' Walls
when overlap box used loop thru the 'overlap' list and see if exists in the 'Unfaded'
list.
if so then send event to it to fade and remove it from the 'Unfaded' and add it to the 'Faded' List.
Then loop thru the 'faded' list to see if they are in the 'overlap' list.
If not then send event to Unfade and add to the 'Unfaded' List.
Then have a short delay before looping back to check again.
Its best to use Array Maker (
Ecosystem) than the build in arrays.
This way would probably more efficient as you don't need to have trigger events on each wall, but is a bit more complex to setup.