I am impressed with construct 2s brilliance in every area except for one vital flaw: I would propose that not having user defined events (ideally with parmeters) makes writing clear code (I mean the event sheets) without duplication difficult.
I agree that it is missing some "Function" feature at the moment, having an action executing specific events and action at a given time.
But there are numerous ways to workaround this (groups that you activate/deactivate, picking of instances thanks to instance variables/boolean, finish state machine) which after a while become quite natural.
C2 is still in development anyway, and no doubt there will be a feature at some point allowing for every of that.