using System;
using Cpp2IlInjected;
using UnityEngine;

namespace RootMotion.FinalIK
{
	// Token: 0x02000461 RID: 1121
	[Token(Token = "0x2000461")]
	[HelpURL("http://www.root-motion.com/finalikdox/html/page12.html")]
	[AddComponentMenu("Scripts/RootMotion.FinalIK/Rotation Limits/Rotation Limit Angle")]
	public class RotationLimitAngle : RotationLimit
	{
		// Token: 0x0600285A RID: 10330 RVA: 0x000592B0 File Offset: 0x000574B0
		[Token(Token = "0x600285A")]
		[Address(RVA = "0xBE83F0", Offset = "0xBE71F0", VA = "0x180BE83F0")]
		[ContextMenu("User Manual")]
		private void OpenUserManual()
		{
			Application.OpenURL("http://www.root-motion.com/finalikdox/html/page12.html");
		}

		// Token: 0x0600285B RID: 10331 RVA: 0x000592C8 File Offset: 0x000574C8
		[Token(Token = "0x600285B")]
		[Address(RVA = "0xBE83B0", Offset = "0xBE71B0", VA = "0x180BE83B0")]
		[ContextMenu("Scrpt Reference")]
		private void OpenScriptReference()
		{
			Application.OpenURL("http://www.root-motion.com/finalikdox/html/class_root_motion_1_1_final_i_k_1_1_rotation_limit_angle.html");
		}

		// Token: 0x0600285C RID: 10332 RVA: 0x000592E0 File Offset: 0x000574E0
		[Token(Token = "0x600285C")]
		[Address(RVA = "0xBE8430", Offset = "0xBE7230", VA = "0x180BE8430")]
		[ContextMenu("Support Group")]
		private void SupportGroup()
		{
			Application.OpenURL("https://groups.google.com/forum/#!forum/final-ik");
		}

		// Token: 0x0600285D RID: 10333 RVA: 0x000592F8 File Offset: 0x000574F8
		[Token(Token = "0x600285D")]
		[Address(RVA = "0xBE7F00", Offset = "0xBE6D00", VA = "0x180BE7F00")]
		[ContextMenu("Asset Store Thread")]
		private void ASThread()
		{
			Application.OpenURL("http://forum.unity3d.com/threads/final-ik-full-body-ik-aim-look-at-fabrik-ccd-ik-1-0-released.222685/");
		}

		// Token: 0x0600285E RID: 10334 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x600285E")]
		[Address(RVA = "0xBE7F40", Offset = "0xBE6D40", VA = "0x180BE7F40", Slot = "4")]
		protected override Quaternion LimitRotation(Quaternion rotation)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x0600285F RID: 10335 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x600285F")]
		[Address(RVA = "0xBE81B0", Offset = "0xBE6FB0", VA = "0x180BE81B0")]
		private Quaternion LimitSwing(Quaternion rotation)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002860 RID: 10336 RVA: 0x00059310 File Offset: 0x00057510
		[Token(Token = "0x6002860")]
		[Address(RVA = "0xBE8470", Offset = "0xBE7270", VA = "0x180BE8470")]
		public RotationLimitAngle()
		{
			float z = Vector3.forward.z;
			this.axis.z = z;
			base..ctor();
		}

		// Token: 0x040031B0 RID: 12720
		[FieldOffset(Offset = "0x38")]
		[Token(Token = "0x40031B0")]
		[Range(0f, 180f)]
		public float limit = 45f;

		// Token: 0x040031B1 RID: 12721
		[FieldOffset(Offset = "0x3C")]
		[Token(Token = "0x40031B1")]
		[Range(0f, 180f)]
		public float twistLimit = 180f;
	}
}
