Reputation: 2535
I want to rotate a Unity button. Here is my code but it does not work.
if (GUI.Button(
new Rect(95 * Screen.width / 100 - Screen.height / 8,
4 * Screen.height / 5,
Screen.height / 4,
Screen.height / 4),
MoreUp) || this.ForceMoreClick)
{
this.transform.rotation.x = 10f;
this.PlayMenuButtonClick();
this.MoreAnimatedDir = this.MoreAnimatedDir == AnimatedDirection.UP
? AnimatedDirection.UPREVERT
: AnimatedDirection.UP;
this.moreAnimation.ChangeAnimatedDirection(this.MoreAnimatedDir);
this.ForceMoreClick = false;
}
Do I have to use TweenLean for this?
Upvotes: 0
Views: 3017
Reputation: 1828
I found this little bit of code that will rotate the button on click:
using UnityEngine;
using System.Collections;
public class RotateButton: MonoBehaviour {
private float rotAngle = 0;
private Vector2 pivotPoint;
void OnGUI() {
pivotPoint = new Vector2(Screen.width / 2, Screen.height / 2);
GUIUtility.RotateAroundPivot(rotAngle, pivotPoint);
if (GUI.Button(new Rect(Screen.width / 2 - 25, Screen.height / 2 - 25, 50, 50), "Rotate"))
rotAngle += 10; //This is rotating it 10 degrees.
}
}
Maybe it will help you out. Source: http://docs.unity3d.com/Documentation/ScriptReference/GUIUtility.RotateAroundPivot.html
Upvotes: 1