You can at the top of the piston set variables for what you want to happen based on triggers, then below that just evaluate your variables for what to run.
You likely won't use 'every' (as it is its own block that exits), but you could have a variable for when next to run.
You can put into the end of the piston the triggers