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

namespace RootMotion.Demos
{
	// Token: 0x020003AC RID: 940
	[Token(Token = "0x20003AC")]
	public class MechSpiderLeg : MonoBehaviour
	{
		// Token: 0x170001F7 RID: 503
		// (get) Token: 0x0600230B RID: 8971 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x170001F7")]
		public bool isStepping
		{
			[Token(Token = "0x600230B")]
			[Address(RVA = "0x402CC0", Offset = "0x401AC0", VA = "0x180402CC0")]
			get
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}
		}

		// Token: 0x170001F8 RID: 504
		// (get) Token: 0x0600230C RID: 8972 RVA: 0x000020D3 File Offset: 0x000002D3
		// (set) Token: 0x0600230D RID: 8973 RVA: 0x000507E0 File Offset: 0x0004E9E0
		[Token(Token = "0x170001F8")]
		public Vector3 position
		{
			[Token(Token = "0x600230C")]
			[Address(RVA = "0x402CD0", Offset = "0x401AD0", VA = "0x180402CD0")]
			get
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}
			[Token(Token = "0x600230D")]
			[Address(RVA = "0x402D30", Offset = "0x401B30", VA = "0x180402D30")]
			set
			{
				IKSolver iksolver = this.ik.GetIKSolver();
				float z = value.z;
				iksolver.IKPosition.z = z;
			}
		}

		// Token: 0x0600230E RID: 8974 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x600230E")]
		[Address(RVA = "0x4025B0", Offset = "0x4013B0", VA = "0x1804025B0")]
		private void Start()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x0600230F RID: 8975 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x600230F")]
		[Address(RVA = "0x4020C0", Offset = "0x400EC0", VA = "0x1804020C0")]
		private Vector3 GetStepTarget(out bool stepFound, float focus, float distance)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002310 RID: 8976 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002310")]
		[Address(RVA = "0x402940", Offset = "0x401740", VA = "0x180402940")]
		private void Update()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002311 RID: 8977 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002311")]
		[Address(RVA = "0x402890", Offset = "0x401690", VA = "0x180402890")]
		private IEnumerator Step(Vector3 stepStartPosition, Vector3 targetPosition)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002312 RID: 8978 RVA: 0x00050814 File Offset: 0x0004EA14
		[Token(Token = "0x6002312")]
		[Address(RVA = "0x402C80", Offset = "0x401A80", VA = "0x180402C80")]
		public MechSpiderLeg()
		{
		}

		// Token: 0x04002C4E RID: 11342
		[FieldOffset(Offset = "0x18")]
		[Token(Token = "0x4002C4E")]
		public MechSpider mechSpider;

		// Token: 0x04002C4F RID: 11343
		[FieldOffset(Offset = "0x20")]
		[Token(Token = "0x4002C4F")]
		public MechSpiderLeg unSync;

		// Token: 0x04002C50 RID: 11344
		[FieldOffset(Offset = "0x28")]
		[Token(Token = "0x4002C50")]
		public Vector3 offset;

		// Token: 0x04002C51 RID: 11345
		[FieldOffset(Offset = "0x34")]
		[Token(Token = "0x4002C51")]
		public float minDelay = 0.2f;

		// Token: 0x04002C52 RID: 11346
		[FieldOffset(Offset = "0x38")]
		[Token(Token = "0x4002C52")]
		public float maxOffset = 1f;

		// Token: 0x04002C53 RID: 11347
		[FieldOffset(Offset = "0x3C")]
		[Token(Token = "0x4002C53")]
		public float stepSpeed = 5f;

		// Token: 0x04002C54 RID: 11348
		[FieldOffset(Offset = "0x40")]
		[Token(Token = "0x4002C54")]
		public float footHeight = 0.15f;

		// Token: 0x04002C55 RID: 11349
		[FieldOffset(Offset = "0x44")]
		[Token(Token = "0x4002C55")]
		public float velocityPrediction = 0.2f;

		// Token: 0x04002C56 RID: 11350
		[FieldOffset(Offset = "0x48")]
		[Token(Token = "0x4002C56")]
		public float raycastFocus = 0.1f;

		// Token: 0x04002C57 RID: 11351
		[FieldOffset(Offset = "0x50")]
		[Token(Token = "0x4002C57")]
		public AnimationCurve yOffset;

		// Token: 0x04002C58 RID: 11352
		[FieldOffset(Offset = "0x58")]
		[Token(Token = "0x4002C58")]
		public ParticleSystem sand;

		// Token: 0x04002C59 RID: 11353
		[FieldOffset(Offset = "0x60")]
		[Token(Token = "0x4002C59")]
		private IK ik;

		// Token: 0x04002C5A RID: 11354
		[FieldOffset(Offset = "0x68")]
		[Token(Token = "0x4002C5A")]
		private float stepProgress = 1f;

		// Token: 0x04002C5B RID: 11355
		[FieldOffset(Offset = "0x6C")]
		[Token(Token = "0x4002C5B")]
		private float lastStepTime;

		// Token: 0x04002C5C RID: 11356
		[FieldOffset(Offset = "0x70")]
		[Token(Token = "0x4002C5C")]
		private Vector3 defaultPosition;

		// Token: 0x04002C5D RID: 11357
		[FieldOffset(Offset = "0x7C")]
		[Token(Token = "0x4002C5D")]
		private RaycastHit hit;
	}
}
