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

namespace RootMotion.FinalIK
{
	// Token: 0x020004AD RID: 1197
	[Serializable]
	public class InteractionLookAt : Il2CppSystem.Object
	{
		// Token: 0x06008D87 RID: 36231 RVA: 0x00244894 File Offset: 0x00242A94
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634261, XrefRangeEnd = 634268, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Look(Transform target, float time)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(target);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref time;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionLookAt.NativeMethodInfoPtr_Look_Public_Void_Transform_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008D88 RID: 36232 RVA: 0x00244900 File Offset: 0x00242B00
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 634286, RefRangeEnd = 634287, XrefRangeStart = 634268, XrefRangeEnd = 634286, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Update()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionLookAt.NativeMethodInfoPtr_Update_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008D89 RID: 36233 RVA: 0x00244944 File Offset: 0x00242B44
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634287, XrefRangeEnd = 634292, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void SolveSpine()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionLookAt.NativeMethodInfoPtr_SolveSpine_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008D8A RID: 36234 RVA: 0x00244988 File Offset: 0x00242B88
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634292, XrefRangeEnd = 634297, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void SolveHead()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionLookAt.NativeMethodInfoPtr_SolveHead_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008D8B RID: 36235 RVA: 0x002449CC File Offset: 0x00242BCC
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 634297, XrefRangeEnd = 634298, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe InteractionLookAt()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(InteractionLookAt.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008D8C RID: 36236 RVA: 0x00244A18 File Offset: 0x00242C18
		// Note: this type is marked as 'beforefieldinit'.
		static InteractionLookAt()
		{
			Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "RootMotion.FinalIK", "InteractionLookAt");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr);
			InteractionLookAt.NativeFieldInfoPtr_ik = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, "ik");
			InteractionLookAt.NativeFieldInfoPtr_lerpSpeed = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, "lerpSpeed");
			InteractionLookAt.NativeFieldInfoPtr_weightSpeed = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, "weightSpeed");
			InteractionLookAt.NativeFieldInfoPtr_isPaused = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, "isPaused");
			InteractionLookAt.NativeFieldInfoPtr_lookAtTarget = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, "lookAtTarget");
			InteractionLookAt.NativeFieldInfoPtr_stopLookTime = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, "stopLookTime");
			InteractionLookAt.NativeFieldInfoPtr_weight = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, "weight");
			InteractionLookAt.NativeFieldInfoPtr_firstFBBIKSolve = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, "firstFBBIKSolve");
			InteractionLookAt.NativeMethodInfoPtr_Look_Public_Void_Transform_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, 100674131);
			InteractionLookAt.NativeMethodInfoPtr_Update_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, 100674132);
			InteractionLookAt.NativeMethodInfoPtr_SolveSpine_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, 100674133);
			InteractionLookAt.NativeMethodInfoPtr_SolveHead_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, 100674134);
			InteractionLookAt.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<InteractionLookAt>.NativeClassPtr, 100674135);
		}

		// Token: 0x06008D8D RID: 36237 RVA: 0x0000A74C File Offset: 0x0000894C
		public InteractionLookAt(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17003019 RID: 12313
		// (get) Token: 0x06008D8E RID: 36238 RVA: 0x00244B4C File Offset: 0x00242D4C
		// (set) Token: 0x06008D8F RID: 36239 RVA: 0x00244B80 File Offset: 0x00242D80
		public unsafe LookAtIK ik
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_ik);
				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(InteractionLookAt.NativeFieldInfoPtr_ik), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x1700301A RID: 12314
		// (get) Token: 0x06008D90 RID: 36240 RVA: 0x00244BA8 File Offset: 0x00242DA8
		// (set) Token: 0x06008D91 RID: 36241 RVA: 0x00244BD0 File Offset: 0x00242DD0
		public unsafe float lerpSpeed
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_lerpSpeed);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_lerpSpeed)) = value;
			}
		}

		// Token: 0x1700301B RID: 12315
		// (get) Token: 0x06008D92 RID: 36242 RVA: 0x00244BF4 File Offset: 0x00242DF4
		// (set) Token: 0x06008D93 RID: 36243 RVA: 0x00244C1C File Offset: 0x00242E1C
		public unsafe float weightSpeed
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_weightSpeed);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_weightSpeed)) = value;
			}
		}

		// Token: 0x1700301C RID: 12316
		// (get) Token: 0x06008D94 RID: 36244 RVA: 0x00244C40 File Offset: 0x00242E40
		// (set) Token: 0x06008D95 RID: 36245 RVA: 0x00244C68 File Offset: 0x00242E68
		public unsafe bool isPaused
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_isPaused);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_isPaused)) = value;
			}
		}

		// Token: 0x1700301D RID: 12317
		// (get) Token: 0x06008D96 RID: 36246 RVA: 0x00244C8C File Offset: 0x00242E8C
		// (set) Token: 0x06008D97 RID: 36247 RVA: 0x00244CC0 File Offset: 0x00242EC0
		public unsafe Transform lookAtTarget
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_lookAtTarget);
				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(InteractionLookAt.NativeFieldInfoPtr_lookAtTarget), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x1700301E RID: 12318
		// (get) Token: 0x06008D98 RID: 36248 RVA: 0x00244CE8 File Offset: 0x00242EE8
		// (set) Token: 0x06008D99 RID: 36249 RVA: 0x00244D10 File Offset: 0x00242F10
		public unsafe float stopLookTime
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_stopLookTime);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_stopLookTime)) = value;
			}
		}

		// Token: 0x1700301F RID: 12319
		// (get) Token: 0x06008D9A RID: 36250 RVA: 0x00244D34 File Offset: 0x00242F34
		// (set) Token: 0x06008D9B RID: 36251 RVA: 0x00244D5C File Offset: 0x00242F5C
		public unsafe float weight
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_weight);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_weight)) = value;
			}
		}

		// Token: 0x17003020 RID: 12320
		// (get) Token: 0x06008D9C RID: 36252 RVA: 0x00244D80 File Offset: 0x00242F80
		// (set) Token: 0x06008D9D RID: 36253 RVA: 0x00244DA8 File Offset: 0x00242FA8
		public unsafe bool firstFBBIKSolve
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_firstFBBIKSolve);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(InteractionLookAt.NativeFieldInfoPtr_firstFBBIKSolve)) = value;
			}
		}

		// Token: 0x04005EA1 RID: 24225
		private static readonly IntPtr NativeFieldInfoPtr_ik;

		// Token: 0x04005EA2 RID: 24226
		private static readonly IntPtr NativeFieldInfoPtr_lerpSpeed;

		// Token: 0x04005EA3 RID: 24227
		private static readonly IntPtr NativeFieldInfoPtr_weightSpeed;

		// Token: 0x04005EA4 RID: 24228
		private static readonly IntPtr NativeFieldInfoPtr_isPaused;

		// Token: 0x04005EA5 RID: 24229
		private static readonly IntPtr NativeFieldInfoPtr_lookAtTarget;

		// Token: 0x04005EA6 RID: 24230
		private static readonly IntPtr NativeFieldInfoPtr_stopLookTime;

		// Token: 0x04005EA7 RID: 24231
		private static readonly IntPtr NativeFieldInfoPtr_weight;

		// Token: 0x04005EA8 RID: 24232
		private static readonly IntPtr NativeFieldInfoPtr_firstFBBIKSolve;

		// Token: 0x04005EA9 RID: 24233
		private static readonly IntPtr NativeMethodInfoPtr_Look_Public_Void_Transform_Single_0;

		// Token: 0x04005EAA RID: 24234
		private static readonly IntPtr NativeMethodInfoPtr_Update_Public_Void_0;

		// Token: 0x04005EAB RID: 24235
		private static readonly IntPtr NativeMethodInfoPtr_SolveSpine_Public_Void_0;

		// Token: 0x04005EAC RID: 24236
		private static readonly IntPtr NativeMethodInfoPtr_SolveHead_Public_Void_0;

		// Token: 0x04005EAD RID: 24237
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
