using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using Il2CppSystem;
using Il2CppSystem.Collections.Generic;

// Token: 0x02000205 RID: 517
public class PlayerSwitch : SceneEvent
{
	// Token: 0x06004F97 RID: 20375 RVA: 0x0013D4D4 File Offset: 0x0013B6D4
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 573032, XrefRangeEnd = 573058, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void OpenEvent()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), PlayerSwitch.NativeMethodInfoPtr_OpenEvent_Public_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004F98 RID: 20376 RVA: 0x0013D524 File Offset: 0x0013B724
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 573058, XrefRangeEnd = 573085, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Update()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PlayerSwitch.NativeMethodInfoPtr_Update_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004F99 RID: 20377 RVA: 0x0013D568 File Offset: 0x0013B768
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 573089, RefRangeEnd = 573090, XrefRangeStart = 573085, XrefRangeEnd = 573089, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe IEnumerator<float> FadeOutBlackScreen(float delayTime)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref delayTime;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PlayerSwitch.NativeMethodInfoPtr_FadeOutBlackScreen_Private_IEnumerator_1_Single_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			IntPtr intPtr3 = intPtr;
			return (intPtr3 != 0) ? new IEnumerator<float>(intPtr3) : null;
		}
	}

	// Token: 0x06004F9A RID: 20378 RVA: 0x0013D5D0 File Offset: 0x0013B7D0
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 0, XrefRangeEnd = 0, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe PlayerSwitch()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<PlayerSwitch>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PlayerSwitch.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004F9B RID: 20379 RVA: 0x0013D61C File Offset: 0x0013B81C
	// Note: this type is marked as 'beforefieldinit'.
	static PlayerSwitch()
	{
		Il2CppClassPointerStore<PlayerSwitch>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "PlayerSwitch");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<PlayerSwitch>.NativeClassPtr);
		PlayerSwitch.NativeFieldInfoPtr_SwitchNobeta = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PlayerSwitch>.NativeClassPtr, "SwitchNobeta");
		PlayerSwitch.NativeMethodInfoPtr_OpenEvent_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PlayerSwitch>.NativeClassPtr, 100668642);
		PlayerSwitch.NativeMethodInfoPtr_Update_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PlayerSwitch>.NativeClassPtr, 100668643);
		PlayerSwitch.NativeMethodInfoPtr_FadeOutBlackScreen_Private_IEnumerator_1_Single_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PlayerSwitch>.NativeClassPtr, 100668644);
		PlayerSwitch.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PlayerSwitch>.NativeClassPtr, 100668645);
	}

	// Token: 0x06004F9C RID: 20380 RVA: 0x0012A4E8 File Offset: 0x001286E8
	public PlayerSwitch(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17001C65 RID: 7269
	// (get) Token: 0x06004F9D RID: 20381 RVA: 0x0013D6B0 File Offset: 0x0013B8B0
	// (set) Token: 0x06004F9E RID: 20382 RVA: 0x0013D6D8 File Offset: 0x0013B8D8
	public unsafe bool SwitchNobeta
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PlayerSwitch.NativeFieldInfoPtr_SwitchNobeta);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PlayerSwitch.NativeFieldInfoPtr_SwitchNobeta)) = value;
		}
	}

	// Token: 0x040034A9 RID: 13481
	private static readonly IntPtr NativeFieldInfoPtr_SwitchNobeta;

	// Token: 0x040034AA RID: 13482
	private static readonly IntPtr NativeMethodInfoPtr_OpenEvent_Public_Virtual_Void_0;

	// Token: 0x040034AB RID: 13483
	private static readonly IntPtr NativeMethodInfoPtr_Update_Private_Void_0;

	// Token: 0x040034AC RID: 13484
	private static readonly IntPtr NativeMethodInfoPtr_FadeOutBlackScreen_Private_IEnumerator_1_Single_Single_0;

	// Token: 0x040034AD RID: 13485
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

	// Token: 0x02000206 RID: 518
	[ObfuscatedName("PlayerSwitch/<FadeOutBlackScreen>d__3")]
	public sealed class _FadeOutBlackScreen_d__3 : Object
	{
		// Token: 0x06004F9F RID: 20383 RVA: 0x0013D6FC File Offset: 0x0013B8FC
		[CallerCount(350)]
		[CachedScanResults(RefRangeStart = 11975, RefRangeEnd = 12325, XrefRangeStart = 11975, XrefRangeEnd = 12325, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe _FadeOutBlackScreen_d__3(int <>1__state)
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr))
		{
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref <>1__state;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr__ctor_Public_Void_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06004FA0 RID: 20384 RVA: 0x0013D75C File Offset: 0x0013B95C
		[CallerCount(5874)]
		[CachedScanResults(RefRangeStart = 24, RefRangeEnd = 5898, XrefRangeStart = 24, XrefRangeEnd = 5898, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void System_IDisposable_Dispose()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06004FA1 RID: 20385 RVA: 0x0013D7A0 File Offset: 0x0013B9A0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 573019, XrefRangeEnd = 573024, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe bool MoveNext()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x17001C69 RID: 7273
		// (get) Token: 0x06004FA2 RID: 20386 RVA: 0x0013D7F0 File Offset: 0x0013B9F0
		public unsafe float Current
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_System_Single__get_Current_Private_Virtual_Final_New_get_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06004FA3 RID: 20387 RVA: 0x0013D840 File Offset: 0x0013BA40
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 573024, XrefRangeEnd = 573029, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void System_Collections_IEnumerator_Reset()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x17001C6A RID: 7274
		// (get) Token: 0x06004FA4 RID: 20388 RVA: 0x0013D884 File Offset: 0x0013BA84
		public unsafe Object Current
		{
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 573029, XrefRangeEnd = 573032, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new Object(intPtr3) : null;
			}
		}

		// Token: 0x06004FA5 RID: 20389 RVA: 0x0013D8DC File Offset: 0x0013BADC
		// Note: this type is marked as 'beforefieldinit'.
		static _FadeOutBlackScreen_d__3()
		{
			Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<PlayerSwitch>.NativeClassPtr, "<FadeOutBlackScreen>d__3");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr);
			PlayerSwitch._FadeOutBlackScreen_d__3.NativeFieldInfoPtr___1__state = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr, "<>1__state");
			PlayerSwitch._FadeOutBlackScreen_d__3.NativeFieldInfoPtr___2__current = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr, "<>2__current");
			PlayerSwitch._FadeOutBlackScreen_d__3.NativeFieldInfoPtr_delayTime = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr, "delayTime");
			PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr__ctor_Public_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr, 100668646);
			PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr, 100668647);
			PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr, 100668648);
			PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_System_Single__get_Current_Private_Virtual_Final_New_get_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr, 100668649);
			PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr, 100668650);
			PlayerSwitch._FadeOutBlackScreen_d__3.NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PlayerSwitch._FadeOutBlackScreen_d__3>.NativeClassPtr, 100668651);
		}

		// Token: 0x06004FA6 RID: 20390 RVA: 0x0000A74C File Offset: 0x0000894C
		public _FadeOutBlackScreen_d__3(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17001C66 RID: 7270
		// (get) Token: 0x06004FA7 RID: 20391 RVA: 0x0013D9BC File Offset: 0x0013BBBC
		// (set) Token: 0x06004FA8 RID: 20392 RVA: 0x0013D9E4 File Offset: 0x0013BBE4
		public unsafe int __1__state
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PlayerSwitch._FadeOutBlackScreen_d__3.NativeFieldInfoPtr___1__state);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PlayerSwitch._FadeOutBlackScreen_d__3.NativeFieldInfoPtr___1__state)) = value;
			}
		}

		// Token: 0x17001C67 RID: 7271
		// (get) Token: 0x06004FA9 RID: 20393 RVA: 0x0013DA08 File Offset: 0x0013BC08
		// (set) Token: 0x06004FAA RID: 20394 RVA: 0x0013DA30 File Offset: 0x0013BC30
		public unsafe float __2__current
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PlayerSwitch._FadeOutBlackScreen_d__3.NativeFieldInfoPtr___2__current);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PlayerSwitch._FadeOutBlackScreen_d__3.NativeFieldInfoPtr___2__current)) = value;
			}
		}

		// Token: 0x17001C68 RID: 7272
		// (get) Token: 0x06004FAB RID: 20395 RVA: 0x0013DA54 File Offset: 0x0013BC54
		// (set) Token: 0x06004FAC RID: 20396 RVA: 0x0013DA7C File Offset: 0x0013BC7C
		public unsafe float delayTime
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PlayerSwitch._FadeOutBlackScreen_d__3.NativeFieldInfoPtr_delayTime);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PlayerSwitch._FadeOutBlackScreen_d__3.NativeFieldInfoPtr_delayTime)) = value;
			}
		}

		// Token: 0x040034AE RID: 13486
		private static readonly IntPtr NativeFieldInfoPtr___1__state;

		// Token: 0x040034AF RID: 13487
		private static readonly IntPtr NativeFieldInfoPtr___2__current;

		// Token: 0x040034B0 RID: 13488
		private static readonly IntPtr NativeFieldInfoPtr_delayTime;

		// Token: 0x040034B1 RID: 13489
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Int32_0;

		// Token: 0x040034B2 RID: 13490
		private static readonly IntPtr NativeMethodInfoPtr_System_IDisposable_Dispose_Private_Virtual_Final_New_Void_0;

		// Token: 0x040034B3 RID: 13491
		private static readonly IntPtr NativeMethodInfoPtr_MoveNext_Private_Virtual_Final_New_Boolean_0;

		// Token: 0x040034B4 RID: 13492
		private static readonly IntPtr NativeMethodInfoPtr_System_Collections_Generic_IEnumerator_System_Single__get_Current_Private_Virtual_Final_New_get_Single_0;

		// Token: 0x040034B5 RID: 13493
		private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerator_Reset_Private_Virtual_Final_New_Void_0;

		// Token: 0x040034B6 RID: 13494
		private static readonly IntPtr NativeMethodInfoPtr_System_Collections_IEnumerator_get_Current_Private_Virtual_Final_New_get_Object_0;
	}
}
