using System;
using Cpp2IlInjected;
using UnityEngine;

namespace commanastationwww.eternaltemple
{
	// Token: 0x02000586 RID: 1414
	[Token(Token = "0x2000586")]
	public class HideGroup : MonoBehaviour
	{
		// Token: 0x06002E68 RID: 11880 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002E68")]
		[Address(RVA = "0x117CAE0", Offset = "0x117B8E0", VA = "0x18117CAE0")]
		private void Start()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002E69 RID: 11881 RVA: 0x00062F70 File Offset: 0x00061170
		[Token(Token = "0x6002E69")]
		[Address(RVA = "0x117C770", Offset = "0x117B570", VA = "0x18117C770")]
		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: 0x06002E6A RID: 11882 RVA: 0x00063014 File Offset: 0x00061214
		[Token(Token = "0x6002E6A")]
		[Address(RVA = "0x117C920", Offset = "0x117B720", VA = "0x18117C920")]
		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: 0x06002E6B RID: 11883 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002E6B")]
		[Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00")]
		private void Update()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002E6C RID: 11884 RVA: 0x000630D4 File Offset: 0x000612D4
		[Token(Token = "0x6002E6C")]
		[Address(RVA = "0x117CC10", Offset = "0x117BA10", VA = "0x18117CC10")]
		public HideGroup()
		{
		}

		// Token: 0x04003741 RID: 14145
		[FieldOffset(Offset = "0x18")]
		[Token(Token = "0x4003741")]
		public bool hidable = true;

		// Token: 0x04003742 RID: 14146
		[FieldOffset(Offset = "0x19")]
		[Token(Token = "0x4003742")]
		public bool disableParentGeo;

		// Token: 0x04003743 RID: 14147
		[FieldOffset(Offset = "0x1C")]
		[Token(Token = "0x4003743")]
		private int collisionEntriesCounter;

		// Token: 0x04003744 RID: 14148
		[FieldOffset(Offset = "0x20")]
		[Token(Token = "0x4003744")]
		private HidablePart[] hidableGroup;

		// Token: 0x04003745 RID: 14149
		[FieldOffset(Offset = "0x28")]
		[Token(Token = "0x4003745")]
		private ParticleSystem[] particlesGroup;

		// Token: 0x04003746 RID: 14150
		[FieldOffset(Offset = "0x30")]
		[Token(Token = "0x4003746")]
		private Renderer rendererComponent;
	}
}
