Hello,
Hmmmm , Sorry it took me quite some time to answer
It was challenging to make this work , I tried rigidbody it couldn't work for it ,
But I made this using I same scene as you [simple primitives ] and I created a empty gameobject and but it at cylinder position and parented the cylinder and the cube to it , it has become like an anchor , when you rotate in z , it rotates perfectly around it like a speed meter ,
Now I have known What I need to do [Keep playing with actions to rotate z ]
I tried all float animate values but no use , I ended up using [I Tween Rotation Add] it adds 10 Degrees to left or right according to a KickStarter State I started with .
And when it reaches 90 degrees or -90 degrees the player lose [it doesn't matter what in the gui 90 or 100 I am talking only about rotation].
And using A , D Keys the player can prevent the thing from reaching that point , by subtracting in the opposite direction .
The KickStarter State is just a state with [Random Float value , ease float , set rotation]
So the player get a different result every time he hit play .
I hope this helps.