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

namespace RootMotion.Demos
{
	// Token: 0x02000445 RID: 1093
	public class BendGoal : MonoBehaviour
	{
		// Token: 0x0600824A RID: 33354 RVA: 0x00213F10 File Offset: 0x00212110
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 625602, XrefRangeEnd = 625608, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Start()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BendGoal.NativeMethodInfoPtr_Start_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600824B RID: 33355 RVA: 0x00213F54 File Offset: 0x00212154
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 625608, XrefRangeEnd = 625615, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void LateUpdate()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BendGoal.NativeMethodInfoPtr_LateUpdate_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600824C RID: 33356 RVA: 0x00213F98 File Offset: 0x00212198
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 541431, RefRangeEnd = 541432, XrefRangeStart = 541431, XrefRangeEnd = 541432, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe BendGoal()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<BendGoal>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BendGoal.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600824D RID: 33357 RVA: 0x00213FE4 File Offset: 0x002121E4
		// Note: this type is marked as 'beforefieldinit'.
		static BendGoal()
		{
			Il2CppClassPointerStore<BendGoal>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "RootMotion.Demos", "BendGoal");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<BendGoal>.NativeClassPtr);
			BendGoal.NativeFieldInfoPtr_limbIK = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BendGoal>.NativeClassPtr, "limbIK");
			BendGoal.NativeFieldInfoPtr_weight = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BendGoal>.NativeClassPtr, "weight");
			BendGoal.NativeMethodInfoPtr_Start_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BendGoal>.NativeClassPtr, 100673182);
			BendGoal.NativeMethodInfoPtr_LateUpdate_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BendGoal>.NativeClassPtr, 100673183);
			BendGoal.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BendGoal>.NativeClassPtr, 100673184);
		}

		// Token: 0x0600824E RID: 33358 RVA: 0x0000351C File Offset: 0x0000171C
		public BendGoal(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17002C43 RID: 11331
		// (get) Token: 0x0600824F RID: 33359 RVA: 0x00214078 File Offset: 0x00212278
		// (set) Token: 0x06008250 RID: 33360 RVA: 0x002140AC File Offset: 0x002122AC
		public unsafe LimbIK limbIK
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BendGoal.NativeFieldInfoPtr_limbIK);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new LimbIK(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(BendGoal.NativeFieldInfoPtr_limbIK), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002C44 RID: 11332
		// (get) Token: 0x06008251 RID: 33361 RVA: 0x002140D4 File Offset: 0x002122D4
		// (set) Token: 0x06008252 RID: 33362 RVA: 0x002140FC File Offset: 0x002122FC
		public unsafe float weight
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BendGoal.NativeFieldInfoPtr_weight);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BendGoal.NativeFieldInfoPtr_weight)) = value;
			}
		}

		// Token: 0x04005736 RID: 22326
		private static readonly IntPtr NativeFieldInfoPtr_limbIK;

		// Token: 0x04005737 RID: 22327
		private static readonly IntPtr NativeFieldInfoPtr_weight;

		// Token: 0x04005738 RID: 22328
		private static readonly IntPtr NativeMethodInfoPtr_Start_Private_Void_0;

		// Token: 0x04005739 RID: 22329
		private static readonly IntPtr NativeMethodInfoPtr_LateUpdate_Private_Void_0;

		// Token: 0x0400573A RID: 22330
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
