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

// Token: 0x0200030B RID: 779
[Token(Token = "0x200030B")]
[Serializable]
public class NobetaIKController
{
	// Token: 0x170001AD RID: 429
	// (get) Token: 0x06001ECF RID: 7887 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x170001AD")]
	public Vector3 LookAtOriginalPos
	{
		[Token(Token = "0x6001ECF")]
		[Address(RVA = "0xECD490", Offset = "0xECC290", VA = "0x180ECD490")]
		get
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}
	}

	// Token: 0x06001ED0 RID: 7888 RVA: 0x0004A5E8 File Offset: 0x000487E8
	[Token(Token = "0x6001ED0")]
	[Address(RVA = "0xECD280", Offset = "0xECC080", VA = "0x180ECD280")]
	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: 0x06001ED1 RID: 7889 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001ED1")]
	[Address(RVA = "0xECD320", Offset = "0xECC120", VA = "0x180ECD320")]
	public void Setup(NobetaIKController prevIk)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001ED2 RID: 7890 RVA: 0x0004A630 File Offset: 0x00048830
	[Token(Token = "0x6001ED2")]
	[Address(RVA = "0xECD2F0", Offset = "0xECC0F0", VA = "0x180ECD2F0")]
	public void SetAimWeight(float value)
	{
		this.aimIK.solver.SetIKPositionWeight(value);
	}

	// Token: 0x06001ED3 RID: 7891 RVA: 0x0004A654 File Offset: 0x00048854
	[Token(Token = "0x6001ED3")]
	[Address(RVA = "0xECD430", Offset = "0xECC230", VA = "0x180ECD430")]
	public void SwtLookAtWeight(float value)
	{
		this.lookAtIK.solver.SetLookAtWeight(value);
		this.hairIK.solver.SetIKPositionWeight(value);
	}

	// Token: 0x06001ED4 RID: 7892 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001ED4")]
	[Address(RVA = "0xECD1B0", Offset = "0xECBFB0", VA = "0x180ECD1B0")]
	public Vector3 GetHeadDirection(Transform lookAtObject)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001ED5 RID: 7893 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001ED5")]
	[Address(RVA = "0xECD050", Offset = "0xECBE50", VA = "0x180ECD050")]
	public void CalculateHairTargetPos(Transform source, bool isBattling)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001ED6 RID: 7894 RVA: 0x0004A68C File Offset: 0x0004888C
	[Token(Token = "0x6001ED6")]
	[Address(RVA = "0x3D8B20", Offset = "0x3D7920", VA = "0x1803D8B20")]
	public NobetaIKController()
	{
	}

	// Token: 0x040028BC RID: 10428
	[FieldOffset(Offset = "0x10")]
	[Token(Token = "0x40028BC")]
	[SerializeField]
	private AimIK aimIK;

	// Token: 0x040028BD RID: 10429
	[FieldOffset(Offset = "0x18")]
	[Token(Token = "0x40028BD")]
	[SerializeField]
	private LookAtIK lookAtIK;

	// Token: 0x040028BE RID: 10430
	[FieldOffset(Offset = "0x20")]
	[Token(Token = "0x40028BE")]
	[SerializeField]
	private Transform lookAtOriginal;

	// Token: 0x040028BF RID: 10431
	[FieldOffset(Offset = "0x28")]
	[Token(Token = "0x40028BF")]
	[SerializeField]
	private Transform head;

	// Token: 0x040028C0 RID: 10432
	[FieldOffset(Offset = "0x30")]
	[Token(Token = "0x40028C0")]
	[SerializeField]
	private CCDIK hairIK;

	// Token: 0x040028C1 RID: 10433
	[FieldOffset(Offset = "0x38")]
	[Token(Token = "0x40028C1")]
	[SerializeField]
	private Transform hairTarget;
}
