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

// Token: 0x0200036F RID: 879
[Serializable]
public class NobetaIKController : Il2CppSystem.Object
{
	// Token: 0x17002801 RID: 10241
	// (get) Token: 0x060073D0 RID: 29648 RVA: 0x001D6180 File Offset: 0x001D4380
	public unsafe Vector3 LookAtOriginalPos
	{
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 613028, XrefRangeEnd = 613029, 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: 0x060073D1 RID: 29649 RVA: 0x001D61D0 File Offset: 0x001D43D0
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 613029, XrefRangeEnd = 613032, 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: 0x060073D2 RID: 29650 RVA: 0x001D622C File Offset: 0x001D442C
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 613032, XrefRangeEnd = 613037, 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: 0x060073D3 RID: 29651 RVA: 0x001D6288 File Offset: 0x001D4488
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 613037, XrefRangeEnd = 613039, 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: 0x060073D4 RID: 29652 RVA: 0x001D62DC File Offset: 0x001D44DC
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 613039, XrefRangeEnd = 613042, 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: 0x060073D5 RID: 29653 RVA: 0x001D6330 File Offset: 0x001D4530
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 613042, XrefRangeEnd = 613045, 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: 0x060073D6 RID: 29654 RVA: 0x001D6398 File Offset: 0x001D4598
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 613045, XrefRangeEnd = 613050, 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: 0x060073D7 RID: 29655 RVA: 0x001D6404 File Offset: 0x001D4604
	[CallerCount(1664)]
	[CachedScanResults(RefRangeStart = 7711, RefRangeEnd = 9375, XrefRangeStart = 7711, XrefRangeEnd = 9375, 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: 0x060073D8 RID: 29656 RVA: 0x001D6450 File Offset: 0x001D4650
	// 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, 100671870);
		NobetaIKController.NativeMethodInfoPtr_Init_Public_Void_NobetaSkinController_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671871);
		NobetaIKController.NativeMethodInfoPtr_Setup_Public_Void_NobetaIKController_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671872);
		NobetaIKController.NativeMethodInfoPtr_SetAimWeight_Public_Void_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671873);
		NobetaIKController.NativeMethodInfoPtr_SwtLookAtWeight_Public_Void_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671874);
		NobetaIKController.NativeMethodInfoPtr_GetHeadDirection_Public_Vector3_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671875);
		NobetaIKController.NativeMethodInfoPtr_CalculateHairTargetPos_Public_Void_Transform_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671876);
		NobetaIKController.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NobetaIKController>.NativeClassPtr, 100671877);
	}

	// Token: 0x060073D9 RID: 29657 RVA: 0x0000A74C File Offset: 0x0000894C
	public NobetaIKController(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x170027FB RID: 10235
	// (get) Token: 0x060073DA RID: 29658 RVA: 0x001D6598 File Offset: 0x001D4798
	// (set) Token: 0x060073DB RID: 29659 RVA: 0x001D65CC File Offset: 0x001D47CC
	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: 0x170027FC RID: 10236
	// (get) Token: 0x060073DC RID: 29660 RVA: 0x001D65F4 File Offset: 0x001D47F4
	// (set) Token: 0x060073DD RID: 29661 RVA: 0x001D6628 File Offset: 0x001D4828
	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: 0x170027FD RID: 10237
	// (get) Token: 0x060073DE RID: 29662 RVA: 0x001D6650 File Offset: 0x001D4850
	// (set) Token: 0x060073DF RID: 29663 RVA: 0x001D6684 File Offset: 0x001D4884
	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: 0x170027FE RID: 10238
	// (get) Token: 0x060073E0 RID: 29664 RVA: 0x001D66AC File Offset: 0x001D48AC
	// (set) Token: 0x060073E1 RID: 29665 RVA: 0x001D66E0 File Offset: 0x001D48E0
	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: 0x170027FF RID: 10239
	// (get) Token: 0x060073E2 RID: 29666 RVA: 0x001D6708 File Offset: 0x001D4908
	// (set) Token: 0x060073E3 RID: 29667 RVA: 0x001D673C File Offset: 0x001D493C
	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: 0x17002800 RID: 10240
	// (get) Token: 0x060073E4 RID: 29668 RVA: 0x001D6764 File Offset: 0x001D4964
	// (set) Token: 0x060073E5 RID: 29669 RVA: 0x001D6798 File Offset: 0x001D4998
	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: 0x04004D08 RID: 19720
	private static readonly IntPtr NativeFieldInfoPtr_aimIK;

	// Token: 0x04004D09 RID: 19721
	private static readonly IntPtr NativeFieldInfoPtr_lookAtIK;

	// Token: 0x04004D0A RID: 19722
	private static readonly IntPtr NativeFieldInfoPtr_lookAtOriginal;

	// Token: 0x04004D0B RID: 19723
	private static readonly IntPtr NativeFieldInfoPtr_head;

	// Token: 0x04004D0C RID: 19724
	private static readonly IntPtr NativeFieldInfoPtr_hairIK;

	// Token: 0x04004D0D RID: 19725
	private static readonly IntPtr NativeFieldInfoPtr_hairTarget;

	// Token: 0x04004D0E RID: 19726
	private static readonly IntPtr NativeMethodInfoPtr_get_LookAtOriginalPos_Public_get_Vector3_0;

	// Token: 0x04004D0F RID: 19727
	private static readonly IntPtr NativeMethodInfoPtr_Init_Public_Void_NobetaSkinController_0;

	// Token: 0x04004D10 RID: 19728
	private static readonly IntPtr NativeMethodInfoPtr_Setup_Public_Void_NobetaIKController_0;

	// Token: 0x04004D11 RID: 19729
	private static readonly IntPtr NativeMethodInfoPtr_SetAimWeight_Public_Void_Single_0;

	// Token: 0x04004D12 RID: 19730
	private static readonly IntPtr NativeMethodInfoPtr_SwtLookAtWeight_Public_Void_Single_0;

	// Token: 0x04004D13 RID: 19731
	private static readonly IntPtr NativeMethodInfoPtr_GetHeadDirection_Public_Vector3_Transform_0;

	// Token: 0x04004D14 RID: 19732
	private static readonly IntPtr NativeMethodInfoPtr_CalculateHairTargetPos_Public_Void_Transform_Boolean_0;

	// Token: 0x04004D15 RID: 19733
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
}
