I am developing a board strategy game, where turn by turn, each player chooses a troop and aims to a tile. Then an arrow shows up towards that tile.
My issue is I want to make the aiming by drag. But, if I use condition 'on drag start', as the manual says, it is triggered by a tap or touch, without actually comparing whether the object moves or not. The point is that I have also tried with 'is dragging' and surprisingly, it neither compares movement. So I have no way of making a condition that triggers if one drags the object at least some pixels, but doesn't trigger if one just tap it.
Has anyone some clue of how to work around that?
I have an example capx where you can see the starting position of the sprite and the 'triggering' position of it until runtime recognizes it being dragged. Distance before dragging triggers is always 0!!! So 'on drag start' is exactly the same as 'os dragging', for they both get triggered with just a touch or tap. I know one is a trigger by itself and the other is a cpntinuous condition. But, is there a way to triggere something after the dragging has been of at least a few pixels, so a tap wouldn't trigger it as well?
when aiming to a tile, the line of the arrow repositions and changes width and angle according too the troop while dragging, so I need a work around that fits both for one-time triggering and continuously comparing.
I need to make a 'repeat once' event that triggers at start of drag to activate the troop and reveal the arrow, and another event that keeps repositioning and widening the arrow while dragging.
Here is a capx more similar to what I intend to do. Actually, the real one has a tilemap with every position value being translated to tiles, lots of functions passing objects as parameters and a simple boolean-toggling turn system to make each player is allowed to aim with only one troop at a given turn. At the end of the round -when each player has aimed or skipped every troop- they move, shoot and fight all at once.