using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using Il2CppSystem;
using RootMotion.FinalIK;
using UnityEngine;

// Token: 0x0200031A RID: 794
[Serializable]
public class NobetaIKController : Il2CppSystem.Object
{
	// Token: 0x17002577 RID: 9591
	// (get) Token: 0x06006BB5 RID: 27573 RVA: 0x001B4440 File Offset: 0x001B2640
	public unsafe Vector3 LookAtOriginalPos
	{
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 581215, XrefRangeEnd = 581216, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		get
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(NobetaIKController.NativeMethodInfoPtr_get_LookAtOriginalPos_Public_get_Vector3_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}
	}

	// Token: 0x06006BB6 RID: 27574 RVA: 0x001B4490 File Offset: 0x001B2690
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 581216, XrefRangeEnd = 581219, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Init(NobetaSkinController skinData)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(skinData);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(NobetaIKController.NativeMethodInfoPtr_Init_Public_Void_NobetaSkinController_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06006BB7 RID: 27575 RVA: 0x001B44EC File Offset: 0x001B26EC
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 581219, XrefRangeEnd = 581224, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Setup(NobetaIKController prevIk)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(prevIk);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(NobetaIKController.NativeMethodInfoPtr_Setup_Public_Void_NobetaIKController_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06006BB8 RID: 27576 RVA: 0x001B4548 File Offset: 0x001B2748
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 581224, XrefRangeEnd = 581226, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void SetAimWeight(float value)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref value;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(NobetaIKController.NativeMethodInfoPtr_SetAimWeight_Public_Void_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06006BB9 RID: 27577 RVA: 0x001B459C File Offset: 0x001B279C
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 581226, XrefRangeEnd = 581229, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void SwtLookAtWeight(float value)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref value;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(NobetaIKController.NativeMethodInfoPtr_SwtLookAtWeight_Public_Void_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06006BBA RID: 27578 RVA: 0x001B45F0 File Offset: 0x001B27F0
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 581229, XrefRangeEnd = 581232, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe Vector3 GetHeadDirection(Transform lookAtObject)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(lookAtObject);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(NobetaIKController.NativeMethodInfoPtr_GetHeadDirection_Public_Vector3_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}
	}

	// Token: 0x06006BBB RID: 27579 RVA: 0x001B4658 File Offset: 0x001B2858
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 581232, XrefRangeEnd = 581237, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void CalculateHairTargetPos(Transform source, bool isBattling)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(source);
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref isBattling;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(NobetaIKController.NativeMethodInfoPtr_CalculateHairTargetPos_Public_Void_Transform_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006BBC RID: 27580 RVA: 0x001B46C4 File Offset: 0x001B28C4
	[CallerCount(1642)]
	[CachedScanResults(RefRangeStart = 7417, RefRangeEnd = 9059, XrefRangeStart = 7417, XrefRangeEnd = 9059, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe NobetaIKController()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(NobetaIKController.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006BBD RID: 27581 RVA: 0x001B4710 File Offset: 0x001B2910
	// Note: this type is marked as 'beforefieldinit'.
	static NobetaIKController()
	{
		Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "NobetaIKController");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr);
		NobetaIKController.NativeFieldInfoPtr_aimIK = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, "aimIK");
		NobetaIKController.NativeFieldInfoPtr_lookAtIK = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, "lookAtIK");
		NobetaIKController.NativeFieldInfoPtr_lookAtOriginal = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, "lookAtOriginal");
		NobetaIKController.NativeFieldInfoPtr_head = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, "head");
		NobetaIKController.NativeFieldInfoPtr_hairIK = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, "hairIK");
		NobetaIKController.NativeFieldInfoPtr_hairTarget = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, "hairTarget");
		NobetaIKController.NativeMethodInfoPtr_get_LookAtOriginalPos_Public_get_Vector3_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671183);
		NobetaIKController.NativeMethodInfoPtr_Init_Public_Void_NobetaSkinController_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671184);
		NobetaIKController.NativeMethodInfoPtr_Setup_Public_Void_NobetaIKController_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671185);
		NobetaIKController.NativeMethodInfoPtr_SetAimWeight_Public_Void_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671186);
		NobetaIKController.NativeMethodInfoPtr_SwtLookAtWeight_Public_Void_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671187);
		NobetaIKController.NativeMethodInfoPtr_GetHeadDirection_Public_Vector3_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671188);
		NobetaIKController.NativeMethodInfoPtr_CalculateHairTargetPos_Public_Void_Transform_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671189);
		NobetaIKController.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671190);
	}

	// Token: 0x06006BBE RID: 27582 RVA: 0x0000A688 File Offset: 0x00008888
	public NobetaIKController(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17002571 RID: 9585
	// (get) Token: 0x06006BBF RID: 27583 RVA: 0x001B4858 File Offset: 0x001B2A58
	// (set) Token: 0x06006BC0 RID: 27584 RVA: 0x001B488C File Offset: 0x001B2A8C
	public unsafe AimIK aimIK
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_aimIK);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new AimIK(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_aimIK), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17002572 RID: 9586
	// (get) Token: 0x06006BC1 RID: 27585 RVA: 0x001B48B4 File Offset: 0x001B2AB4
	// (set) Token: 0x06006BC2 RID: 27586 RVA: 0x001B48E8 File Offset: 0x001B2AE8
	public unsafe LookAtIK lookAtIK
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_lookAtIK);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new LookAtIK(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_lookAtIK), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17002573 RID: 9587
	// (get) Token: 0x06006BC3 RID: 27587 RVA: 0x001B4910 File Offset: 0x001B2B10
	// (set) Token: 0x06006BC4 RID: 27588 RVA: 0x001B4944 File Offset: 0x001B2B44
	public unsafe Transform lookAtOriginal
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_lookAtOriginal);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Transform(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_lookAtOriginal), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17002574 RID: 9588
	// (get) Token: 0x06006BC5 RID: 27589 RVA: 0x001B496C File Offset: 0x001B2B6C
	// (set) Token: 0x06006BC6 RID: 27590 RVA: 0x001B49A0 File Offset: 0x001B2BA0
	public unsafe Transform head
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_head);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Transform(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_head), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17002575 RID: 9589
	// (get) Token: 0x06006BC7 RID: 27591 RVA: 0x001B49C8 File Offset: 0x001B2BC8
	// (set) Token: 0x06006BC8 RID: 27592 RVA: 0x001B49FC File Offset: 0x001B2BFC
	public unsafe CCDIK hairIK
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_hairIK);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new CCDIK(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_hairIK), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17002576 RID: 9590
	// (get) Token: 0x06006BC9 RID: 27593 RVA: 0x001B4A24 File Offset: 0x001B2C24
	// (set) Token: 0x06006BCA RID: 27594 RVA: 0x001B4A58 File Offset: 0x001B2C58
	public unsafe Transform hairTarget
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_hairTarget);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Transform(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(NobetaIKController.NativeFieldInfoPtr_hairTarget), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x04004785 RID: 18309
	private static readonly IntPtr NativeFieldInfoPtr_aimIK;

	// Token: 0x04004786 RID: 18310
	private static readonly IntPtr NativeFieldInfoPtr_lookAtIK;

	// Token: 0x04004787 RID: 18311
	private static readonly IntPtr NativeFieldInfoPtr_lookAtOriginal;

	// Token: 0x04004788 RID: 18312
	private static readonly IntPtr NativeFieldInfoPtr_head;

	// Token: 0x04004789 RID: 18313
	private static readonly IntPtr NativeFieldInfoPtr_hairIK;

	// Token: 0x0400478A RID: 18314
	private static readonly IntPtr NativeFieldInfoPtr_hairTarget;

	// Token: 0x0400478B RID: 18315
	private static readonly IntPtr NativeMethodInfoPtr_get_LookAtOriginalPos_Public_get_Vector3_0;

	// Token: 0x0400478C RID: 18316
	private static readonly IntPtr NativeMethodInfoPtr_Init_Public_Void_NobetaSkinController_0;

	// Token: 0x0400478D RID: 18317
	private static readonly IntPtr NativeMethodInfoPtr_Setup_Public_Void_NobetaIKController_0;

	// Token: 0x0400478E RID: 18318
	private static readonly IntPtr NativeMethodInfoPtr_SetAimWeight_Public_Void_Single_0;

	// Token: 0x0400478F RID: 18319
	private static readonly IntPtr NativeMethodInfoPtr_SwtLookAtWeight_Public_Void_Single_0;

	// Token: 0x04004790 RID: 18320
	private static readonly IntPtr NativeMethodInfoPtr_GetHeadDirection_Public_Vector3_Transform_0;

	// Token: 0x04004791 RID: 18321
	private static readonly IntPtr NativeMethodInfoPtr_CalculateHairTargetPos_Public_Void_Transform_Boolean_0;

	// Token: 0x04004792 RID: 18322
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
}
