Here's what I did to give the perception of more than 1 state button.
For your scenario, we can do 3 states by utilizing visible field
Set button 1 Visible field to variableX=0, button 2 to variableX=1, and variableX=2.
Button 1 OnSelect field with UpdateContext({variableX:1})
Button 2 OnSelect field with UpdateContext({variableX:2})
Button 3 OnSelect field with UpdateContext({variableX:1})
Hope this helps