using System;
using Cpp2IlInjected;
using UnityEngine;

namespace commanastationwww.eternaltemple
{
	// Token: 0x020005DE RID: 1502
	[Token(Token = "0x20005DE")]
	public class HideGroup : MonoBehaviour
	{
		// Token: 0x06003131 RID: 12593 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6003131")]
		[Address(RVA = "0x17031B0", Offset = "0x17021B0", VA = "0x1817031B0")]
		private void Start()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06003132 RID: 12594 RVA: 0x0006A22C File Offset: 0x0006842C
		[Token(Token = "0x6003132")]
		[Address(RVA = "0x1702E40", Offset = "0x1701E40", VA = "0x181702E40")]
		private void OnTriggerEnter(Collider other)
		{
			if (this.hidable && string.Equals(other.gameObject.tag, "MainCamera"))
			{
				int num = 0;
				HidablePart[] array = this.hidableGroup;
				int length = array.Length;
				if (num < length)
				{
					HidablePart hidablePart = array[num];
					hidablePart.StopAllCoroutines();
					int num2;
					HidablePart.<hideInterpolation>d__9 <hideInterpolation>d__ = new HidablePart.<hideInterpolation>d__9(num2);
					num2 = 0;
					<hideInterpolation>d__.<>4__this = hidablePart;
					Coroutine coroutine = hidablePart.StartCoroutine(<hideInterpolation>d__);
					num++;
				}
				ParticleSystem[] array2 = this.particlesGroup;
				int length2 = array2.Length;
				if (num < length2)
				{
					array2[num].Stop();
					num++;
				}
			}
		}

		// Token: 0x06003133 RID: 12595 RVA: 0x0006A2D0 File Offset: 0x000684D0
		[Token(Token = "0x6003133")]
		[Address(RVA = "0x1702FF0", Offset = "0x1701FF0", VA = "0x181702FF0")]
		private void OnTriggerExit(Collider other)
		{
			if (this.hidable && string.Equals(other.gameObject.tag, "MainCamera"))
			{
				HidablePart[] array = this.hidableGroup;
				int num = 0;
				int num2 = 0;
				int length = array.Length;
				if (num2 < length)
				{
					HidablePart hidablePart = array[num];
					hidablePart.StopAllCoroutines();
					int num3;
					HidablePart.<unhideInterpolation>d__8 <unhideInterpolation>d__ = new HidablePart.<unhideInterpolation>d__8(num3);
					num3 = 0;
					<unhideInterpolation>d__.<>4__this = hidablePart;
					Coroutine coroutine = hidablePart.StartCoroutine(<unhideInterpolation>d__);
					num++;
				}
				ParticleSystem[] array2 = this.particlesGroup;
				int num4 = 0;
				int num5 = 0;
				int length2 = array2.Length;
				if (num5 < length2)
				{
					array2[num4].Play();
					num4++;
				}
				this.collisionEntriesCounter = (int)((ulong)0L);
			}
		}

		// Token: 0x06003134 RID: 12596 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6003134")]
		[Address(RVA = "0x29E8B0", Offset = "0x29D8B0", VA = "0x18029E8B0")]
		private void Update()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06003135 RID: 12597 RVA: 0x0006A390 File Offset: 0x00068590
		[Token(Token = "0x6003135")]
		[Address(RVA = "0x17032E0", Offset = "0x17022E0", VA = "0x1817032E0")]
		public HideGroup()
		{
		}

		// Token: 0x04003A2B RID: 14891
		[FieldOffset(Offset = "0x18")]
		[Token(Token = "0x4003A2B")]
		public bool hidable = true;

		// Token: 0x04003A2C RID: 14892
		[FieldOffset(Offset = "0x19")]
		[Token(Token = "0x4003A2C")]
		public bool disableParentGeo;

		// Token: 0x04003A2D RID: 14893
		[FieldOffset(Offset = "0x1C")]
		[Token(Token = "0x4003A2D")]
		private int collisionEntriesCounter;

		// Token: 0x04003A2E RID: 14894
		[FieldOffset(Offset = "0x20")]
		[Token(Token = "0x4003A2E")]
		private HidablePart[] hidableGroup;

		// Token: 0x04003A2F RID: 14895
		[FieldOffset(Offset = "0x28")]
		[Token(Token = "0x4003A2F")]
		private ParticleSystem[] particlesGroup;

		// Token: 0x04003A30 RID: 14896
		[FieldOffset(Offset = "0x30")]
		[Token(Token = "0x4003A30")]
		private Renderer rendererComponent;
	}
}
