Tried that. On the surface it does look like it is working but put that on a smaller button where the mouse could go over it faster than the FSM can calculate the action and it'll reverse the value of the boolean that's being used to store the "hovering" state.
If you're developing for mobile, chances are this will fit the bill since you have a set framework and a smaller range of CPU power/latency... but for a PC deployed action game with a deployment across a very broad range of CPU power, i cannot afford to have that level of unpredictability since that bug (and it is a bug) could ruin the gameplay for some of my players and it'd be more noticeable on lower-end computers. so, if the toggle gets flipped and doesn't flip back properly, their entire weapon systems will be disabled with this method and that would lead to an infuriatingly-negative customer experience.
Found more ways it could break too... Since it's using a flip instead of a manual set, if this is using buttons within a screen that has this feature (so, say a screen is open with a character sheet and it also has a selection of buttons... the bool is already supposed to be "disable weapons" but when it rolls over another button in this character screen it could toggle it as well. I do understand you can change these things but from a design perspective, it's not a very good workaround since my menu screens are designed in such a way as to give the player the option to do some menu actions on the fly and some while paused. setting up a system to detect and disable/enable as needed is a potential workaround but that is a lot more work to try and get around not being able to view and use a simple boolean value.
Simple boolean value? no workaround, you just use it.
complex and convoluted workaround? too many options where bugs can occour and it's an awful lot of wiring just to get around not being able to access a simple value.
So, i guess i'd like to put in a request for either an action set or an adjustment to the first script (or both?) so as to be able to find and read these values. Also, being able to access these values more directly will allow more options for useability and less headached with workarounds.