I been request this feature a few times (Don't click invisible sprites), but there is a reason why this can't be implemented.
All Construct project that use hidden touch will be broken, I know is bad.
I have an idea, what if there is a Touch plugin properties to "Ignore invisible object"? also is good to add Touch plugin option to only click/execute front object.
And make these properties disable by default, so, older project will not be affected.
I also using several js game framework, these framework ignoring clicking on invisible object, it's very clear and straight forward.
Why this important for me:
- Mostly I grouped / families all buttons, and make button clicking effect and play button sound with families. if hidden object is clickable, effect and sound still played.
- If I have multiple hidden layer that have a bunch of buttons (and some reused buttons), It's will be a lot of work to create an identifier or condition.
- "Is visible" object is return true on hidden layer
I like to create a efficient, less code/event and less duplicated events