Like I did on Golden Lotus?
Put them inside a family and check:
System>Compare two Variables>distance(family.X,family.Y,Shield.X,Shield.Y) > desired distance = create shield
Where shield will have the fade behavior and pin to the player.
You don't need to use "for each", and don't need to use variables, just active the fade when you want and create shield when desired.