using System;
using Cpp2IlInjected;
using RootMotion.FinalIK;
using UnityEngine;

// Token: 0x02000360 RID: 864
[Token(Token = "0x2000360")]
[Serializable]
public class NobetaIKController
{
	// Token: 0x170001CD RID: 461
	// (get) Token: 0x0600217E RID: 8574 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x170001CD")]
	public Vector3 LookAtOriginalPos
	{
		[Token(Token = "0x600217E")]
		[Address(RVA = "0xF19520", Offset = "0xF18520", VA = "0x180F19520")]
		get
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}
	}

	// Token: 0x0600217F RID: 8575 RVA: 0x00051564 File Offset: 0x0004F764
	[Token(Token = "0x600217F")]
	[Address(RVA = "0xF19310", Offset = "0xF18310", VA = "0x180F19310")]
	public void Init(NobetaSkinController skinData)
	{
		IKSolverAim solver = this.aimIK.solver;
		Transform aimTarget = skinData.aimTarget;
		solver.target = aimTarget;
		IKSolverLookAt solver2 = this.lookAtIK.solver;
		Transform lookAtObject = skinData.lookAtObject;
		solver2.target = lookAtObject;
		throw new NullReferenceException();
	}

	// Token: 0x06002180 RID: 8576 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6002180")]
	[Address(RVA = "0xF193B0", Offset = "0xF183B0", VA = "0x180F193B0")]
	public void Setup(NobetaIKController prevIk)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06002181 RID: 8577 RVA: 0x000515AC File Offset: 0x0004F7AC
	[Token(Token = "0x6002181")]
	[Address(RVA = "0xF19380", Offset = "0xF18380", VA = "0x180F19380")]
	public void SetAimWeight(float value)
	{
		this.aimIK.solver.SetIKPositionWeight(value);
	}

	// Token: 0x06002182 RID: 8578 RVA: 0x000515D0 File Offset: 0x0004F7D0
	[Token(Token = "0x6002182")]
	[Address(RVA = "0xF194C0", Offset = "0xF184C0", VA = "0x180F194C0")]
	public void SwtLookAtWeight(float value)
	{
		this.lookAtIK.solver.SetLookAtWeight(value);
		this.hairIK.solver.SetIKPositionWeight(value);
	}

	// Token: 0x06002183 RID: 8579 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6002183")]
	[Address(RVA = "0xF19240", Offset = "0xF18240", VA = "0x180F19240")]
	public Vector3 GetHeadDirection(Transform lookAtObject)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06002184 RID: 8580 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6002184")]
	[Address(RVA = "0xF190E0", Offset = "0xF180E0", VA = "0x180F190E0")]
	public void CalculateHairTargetPos(Transform source, bool isBattling)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06002185 RID: 8581 RVA: 0x00051608 File Offset: 0x0004F808
	[Token(Token = "0x6002185")]
	[Address(RVA = "0x36ABD0", Offset = "0x369BD0", VA = "0x18036ABD0")]
	public NobetaIKController()
	{
	}

	// Token: 0x04002B9A RID: 11162
	[FieldOffset(Offset = "0x10")]
	[Token(Token = "0x4002B9A")]
	[SerializeField]
	private AimIK aimIK;

	// Token: 0x04002B9B RID: 11163
	[FieldOffset(Offset = "0x18")]
	[Token(Token = "0x4002B9B")]
	[SerializeField]
	private LookAtIK lookAtIK;

	// Token: 0x04002B9C RID: 11164
	[FieldOffset(Offset = "0x20")]
	[Token(Token = "0x4002B9C")]
	[SerializeField]
	private Transform lookAtOriginal;

	// Token: 0x04002B9D RID: 11165
	[FieldOffset(Offset = "0x28")]
	[Token(Token = "0x4002B9D")]
	[SerializeField]
	private Transform head;

	// Token: 0x04002B9E RID: 11166
	[FieldOffset(Offset = "0x30")]
	[Token(Token = "0x4002B9E")]
	[SerializeField]
	private CCDIK hairIK;

	// Token: 0x04002B9F RID: 11167
	[FieldOffset(Offset = "0x38")]
	[Token(Token = "0x4002B9F")]
	[SerializeField]
	private Transform hairTarget;
}
