using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;

namespace RootMotion
{
	// Token: 0x0200039E RID: 926
	[Token(Token = "0x200039E")]
	public static class LayerMaskExtensions
	{
		// Token: 0x060022BB RID: 8891 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60022BB")]
		[Address(RVA = "0xFAC310", Offset = "0xFAB110", VA = "0x180FAC310")]
		public static bool Contains(LayerMask mask, int layer)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060022BC RID: 8892 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60022BC")]
		[Address(RVA = "0x10E31C0", Offset = "0x10E1FC0", VA = "0x1810E31C0")]
		public static LayerMask Create(params string[] layerNames)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060022BD RID: 8893 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60022BD")]
		[Address(RVA = "0x10E3260", Offset = "0x10E2060", VA = "0x1810E3260")]
		public static LayerMask Create(params int[] layerNumbers)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060022BE RID: 8894 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60022BE")]
		[Address(RVA = "0x10E31C0", Offset = "0x10E1FC0", VA = "0x1810E31C0")]
		public static LayerMask NamesToMask(params string[] layerNames)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060022BF RID: 8895 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60022BF")]
		[Address(RVA = "0x10E3260", Offset = "0x10E2060", VA = "0x1810E3260")]
		public static LayerMask LayerNumbersToMask(params int[] layerNumbers)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060022C0 RID: 8896 RVA: 0x00050114 File Offset: 0x0004E314
		[Token(Token = "0x60022C0")]
		[Address(RVA = "0x10E32E0", Offset = "0x10E20E0", VA = "0x1810E32E0")]
		public static LayerMask Inverse(this LayerMask original)
		{
			return original;
		}

		// Token: 0x060022C1 RID: 8897 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60022C1")]
		[Address(RVA = "0x10E30F0", Offset = "0x10E1EF0", VA = "0x1810E30F0")]
		public static LayerMask AddToMask(this LayerMask original, params string[] layerNames)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060022C2 RID: 8898 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60022C2")]
		[Address(RVA = "0x10E3760", Offset = "0x10E2560", VA = "0x1810E3760")]
		public static LayerMask RemoveFromMask(this LayerMask original, params string[] layerNames)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060022C3 RID: 8899 RVA: 0x0005012C File Offset: 0x0004E32C
		[Token(Token = "0x60022C3")]
		[Address(RVA = "0x10E3300", Offset = "0x10E2100", VA = "0x1810E3300")]
		public static string[] MaskToNames(this LayerMask original)
		{
			int mask = original.m_Mask;
			List<string> list = new List();
			int num = 0;
			if (mask == (uint)1)
			{
				string text = LayerMask.LayerToName(num);
				if (!string.IsNullOrEmpty(text))
				{
					list.Add(text);
				}
			}
			num++;
			return list.ToArray();
		}

		// Token: 0x060022C4 RID: 8900 RVA: 0x0005017C File Offset: 0x0004E37C
		[Token(Token = "0x60022C4")]
		[Address(RVA = "0x10E3410", Offset = "0x10E2210", VA = "0x1810E3410")]
		public static int[] MaskToNumbers(this LayerMask original)
		{
			int mask = original.m_Mask;
			List<int> list = new List();
			int num = 0;
			if (mask == (uint)1)
			{
				list.Add(num);
			}
			num++;
			return list.ToArray();
		}

		// Token: 0x060022C5 RID: 8901 RVA: 0x000501BC File Offset: 0x0004E3BC
		[Token(Token = "0x60022C5")]
		[Address(RVA = "0x10E3500", Offset = "0x10E2300", VA = "0x1810E3500")]
		public static string MaskToString(this LayerMask original)
		{
			int mask = original.m_Mask;
			List<string> list = new List();
			int num = 0;
			if (mask == (uint)1)
			{
				string text = LayerMask.LayerToName(num);
				if (!string.IsNullOrEmpty(text))
				{
					list.Add(text);
				}
			}
			num++;
			string[] array = list.ToArray();
			return string.Join(", ", array);
		}

		// Token: 0x060022C6 RID: 8902 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60022C6")]
		[Address(RVA = "0x10E3640", Offset = "0x10E2440", VA = "0x1810E3640")]
		public static string MaskToString(this LayerMask original, string delimiter)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}
	}
}
