Ok I'll try to understand every piece of advise you gave me.
The thing about picking I knew was a flaw of mine. But I am not using nTH (which I suppose it's the one that takes the IID, referenced just for their sprite, so being into a container and created at the same time as their parent object, should always have the same IID, if I understood what you meant), but pick by evaluate variable, so I check the global variable Active troop. I tried with the sprite pick by UID by for whatever reason it always picked both instances or none. Now it is picking the right one.
I tried even with your capx, replacing the picking nTH to 'pick by evaluate' and works with UID as it does with IID + 'pick by nTH'. Tried also with system compare variable and also picks the right one. The point is I think not to understand correctly the benefits of picking by IID instead of UID. Talking about containers- according to what I have read, on a sprite created, each other attached sprite in his container is also created. So they are always created in the same order. So they should have the same IID. Don't they? In my case, first troop has IID 0 and his arrow IID 0 (first instance of his object) too. As second troop is created, it gets assigned IID 1 and his arrow is created also with IID 1 (second instance of his object). That way is simpler to relate them. Did I understand correctly?
Right now, with system compare by evaluate picking condition each troop is moving towards its own arrow. I added a boolean instance variable TargetLocked which sets up at double tapping tilemap/arrow, thus confirming target. Then, when skipping turn, an AND condition picking instances with TargetLocked true.
Indenting all the arrow and target as a sub-event I did as well and everything seems fine with that. The point is that at tapping the troop instance, arrow shows up, when it should have been set invisible. That is an event-order issue I suppose. Will work on that.
My main problem now is When I tap a different instance, the arrow of the previous ibstance I had activated before, still keeps visible.
I see what you mean with the every tick on the arrow line. As you say, I am no as used to event arranging. So my guess is condition should be 'Troop is moving'.
Even the thing about not being able to double tap!!! I know what you mean. By indenting the event, I ensure each double tap 'belongs' only to their picked troop instance. But the point is that if I have Touch.Tap as a condition on the parent event, it is no longer showing up to be selected as a condition for the sub-event.
C3 simply doesn't allow to say:
-parent condition: tap on instance
- sub-event condition: double tap on arrow/tilemap
I am not sure if I understand correctly what you are explaining about triggers. Could it mean that 'double tap on tilemap/arrow' can't be conditioned as a sub-event of 'tap on troop' because they are both triggers, so runtime would expect to happen at the same time? That would explain why the first touch of the 'double tap on tilemap/arrow always triggers the 'tap on troop event'. So... if changing the sub-event condition to 'is touching tilemap/arrow' wouldn't make it succed either, as I have experienced.
Maybe the link for my capx didn't updated when I was working on it last night.
Here is again:
Thanks again for taking the time to help. I know it's a basic issue, but coming from a non IT background, reading the forum, tutorials on scirra and the manual don't happen to clear my mind. And any pointing in the right direction is most appreciated. I'll play around with your capx to see if I can understand.