Piranha, I know what you mean about working with boolean variables, where you can't set the value with an expression, which is different from string and number types. Unless I'm missing some technique? That seems odd, but must be a design choice in Construct, maybe to reduce developer errors.
I use booleans like you describe, toggling them from within a function, for example.