using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using MarsSDK;
using UnityEngine.UI;

// Token: 0x0200025E RID: 606
public class UITeleportHandler : UIHandlerBase
{
	// Token: 0x17001DE4 RID: 7652
	// (get) Token: 0x060054EC RID: 21740 RVA: 0x00154DF0 File Offset: 0x00152FF0
	public unsafe GameStage Stage
	{
		[CallerCount(0)]
		get
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UITeleportHandler.NativeMethodInfoPtr_get_Stage_Public_get_GameStage_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}
	}

	// Token: 0x17001DE5 RID: 7653
	// (get) Token: 0x060054ED RID: 21741 RVA: 0x00154E40 File Offset: 0x00153040
	public unsafe int SavePoint
	{
		[CallerCount(0)]
		get
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UITeleportHandler.NativeMethodInfoPtr_get_SavePoint_Public_get_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}
	}

	// Token: 0x17001DE6 RID: 7654
	// (get) Token: 0x060054EE RID: 21742 RVA: 0x00154E90 File Offset: 0x00153090
	public unsafe bool HasUnlocked
	{
		[CallerCount(0)]
		get
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UITeleportHandler.NativeMethodInfoPtr_get_HasUnlocked_Public_get_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}
	}

	// Token: 0x060054EF RID: 21743 RVA: 0x00154EE0 File Offset: 0x001530E0
	[CallerCount(19)]
	[CachedScanResults(RefRangeStart = 560123, RefRangeEnd = 560142, XrefRangeStart = 560117, XrefRangeEnd = 560123, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Init(GameStage stage, int savePoint)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref stage;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref savePoint;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UITeleportHandler.NativeMethodInfoPtr_Init_Public_Void_GameStage_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060054F0 RID: 21744 RVA: 0x00154F48 File Offset: 0x00153148
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 560142, XrefRangeEnd = 560145, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void OnSelect()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), UITeleportHandler.NativeMethodInfoPtr_OnSelect_Public_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060054F1 RID: 21745 RVA: 0x00154F98 File Offset: 0x00153198
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 560145, XrefRangeEnd = 560148, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void OnDeselect()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), UITeleportHandler.NativeMethodInfoPtr_OnDeselect_Public_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060054F2 RID: 21746 RVA: 0x00154FE8 File Offset: 0x001531E8
	[CallerCount(2)]
	[CachedScanResults(RefRangeStart = 560159, RefRangeEnd = 560161, XrefRangeStart = 560148, XrefRangeEnd = 560159, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void UpdateUnlockState()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UITeleportHandler.NativeMethodInfoPtr_UpdateUnlockState_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060054F3 RID: 21747 RVA: 0x0015502C File Offset: 0x0015322C
	[CallerCount(0)]
	public unsafe bool IsCurrentLocation(GameStage stage, int savePoint)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref stage;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref savePoint;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UITeleportHandler.NativeMethodInfoPtr_IsCurrentLocation_Public_Boolean_GameStage_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		return *IL2CPP.il2cpp_object_unbox(intPtr);
	}

	// Token: 0x060054F4 RID: 21748 RVA: 0x001550A4 File Offset: 0x001532A4
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 560161, XrefRangeEnd = 560174, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe string GetLocationText()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UITeleportHandler.NativeMethodInfoPtr_GetLocationText_Public_String_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		return IL2CPP.Il2CppStringToManaged(intPtr);
	}

	// Token: 0x060054F5 RID: 21749 RVA: 0x001550F0 File Offset: 0x001532F0
	[CallerCount(13)]
	[CachedScanResults(RefRangeStart = 227409, RefRangeEnd = 227422, XrefRangeStart = 227409, XrefRangeEnd = 227422, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe UITeleportHandler()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UITeleportHandler.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060054F6 RID: 21750 RVA: 0x0015513C File Offset: 0x0015333C
	// Note: this type is marked as 'beforefieldinit'.
	static UITeleportHandler()
	{
		Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "UITeleportHandler");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr);
		UITeleportHandler.NativeFieldInfoPtr_stage = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, "stage");
		UITeleportHandler.NativeFieldInfoPtr_savePoint = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, "savePoint");
		UITeleportHandler.NativeFieldInfoPtr_hasUnlocked = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, "hasUnlocked");
		UITeleportHandler.NativeFieldInfoPtr_background = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, "background");
		UITeleportHandler.NativeFieldInfoPtr_icon = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, "icon");
		UITeleportHandler.NativeMethodInfoPtr_get_Stage_Public_get_GameStage_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, 100669178);
		UITeleportHandler.NativeMethodInfoPtr_get_SavePoint_Public_get_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, 100669179);
		UITeleportHandler.NativeMethodInfoPtr_get_HasUnlocked_Public_get_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, 100669180);
		UITeleportHandler.NativeMethodInfoPtr_Init_Public_Void_GameStage_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, 100669181);
		UITeleportHandler.NativeMethodInfoPtr_OnSelect_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, 100669182);
		UITeleportHandler.NativeMethodInfoPtr_OnDeselect_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, 100669183);
		UITeleportHandler.NativeMethodInfoPtr_UpdateUnlockState_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, 100669184);
		UITeleportHandler.NativeMethodInfoPtr_IsCurrentLocation_Public_Boolean_GameStage_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, 100669185);
		UITeleportHandler.NativeMethodInfoPtr_GetLocationText_Public_String_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, 100669186);
		UITeleportHandler.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UITeleportHandler>.NativeClassPtr, 100669187);
	}

	// Token: 0x060054F7 RID: 21751 RVA: 0x00146FEC File Offset: 0x001451EC
	public UITeleportHandler(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17001DDF RID: 7647
	// (get) Token: 0x060054F8 RID: 21752 RVA: 0x00155298 File Offset: 0x00153498
	// (set) Token: 0x060054F9 RID: 21753 RVA: 0x001552C0 File Offset: 0x001534C0
	public unsafe GameStage stage
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UITeleportHandler.NativeFieldInfoPtr_stage);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UITeleportHandler.NativeFieldInfoPtr_stage)) = value;
		}
	}

	// Token: 0x17001DE0 RID: 7648
	// (get) Token: 0x060054FA RID: 21754 RVA: 0x001552E4 File Offset: 0x001534E4
	// (set) Token: 0x060054FB RID: 21755 RVA: 0x0015530C File Offset: 0x0015350C
	public unsafe int savePoint
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UITeleportHandler.NativeFieldInfoPtr_savePoint);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UITeleportHandler.NativeFieldInfoPtr_savePoint)) = value;
		}
	}

	// Token: 0x17001DE1 RID: 7649
	// (get) Token: 0x060054FC RID: 21756 RVA: 0x00155330 File Offset: 0x00153530
	// (set) Token: 0x060054FD RID: 21757 RVA: 0x00155358 File Offset: 0x00153558
	public unsafe bool hasUnlocked
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UITeleportHandler.NativeFieldInfoPtr_hasUnlocked);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UITeleportHandler.NativeFieldInfoPtr_hasUnlocked)) = value;
		}
	}

	// Token: 0x17001DE2 RID: 7650
	// (get) Token: 0x060054FE RID: 21758 RVA: 0x0015537C File Offset: 0x0015357C
	// (set) Token: 0x060054FF RID: 21759 RVA: 0x001553B0 File Offset: 0x001535B0
	public unsafe Image background
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UITeleportHandler.NativeFieldInfoPtr_background);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Image(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(UITeleportHandler.NativeFieldInfoPtr_background), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17001DE3 RID: 7651
	// (get) Token: 0x06005500 RID: 21760 RVA: 0x001553D8 File Offset: 0x001535D8
	// (set) Token: 0x06005501 RID: 21761 RVA: 0x0015540C File Offset: 0x0015360C
	public unsafe Image icon
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UITeleportHandler.NativeFieldInfoPtr_icon);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Image(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(UITeleportHandler.NativeFieldInfoPtr_icon), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x04003859 RID: 14425
	private static readonly IntPtr NativeFieldInfoPtr_stage;

	// Token: 0x0400385A RID: 14426
	private static readonly IntPtr NativeFieldInfoPtr_savePoint;

	// Token: 0x0400385B RID: 14427
	private static readonly IntPtr NativeFieldInfoPtr_hasUnlocked;

	// Token: 0x0400385C RID: 14428
	private static readonly IntPtr NativeFieldInfoPtr_background;

	// Token: 0x0400385D RID: 14429
	private static readonly IntPtr NativeFieldInfoPtr_icon;

	// Token: 0x0400385E RID: 14430
	private static readonly IntPtr NativeMethodInfoPtr_get_Stage_Public_get_GameStage_0;

	// Token: 0x0400385F RID: 14431
	private static readonly IntPtr NativeMethodInfoPtr_get_SavePoint_Public_get_Int32_0;

	// Token: 0x04003860 RID: 14432
	private static readonly IntPtr NativeMethodInfoPtr_get_HasUnlocked_Public_get_Boolean_0;

	// Token: 0x04003861 RID: 14433
	private static readonly IntPtr NativeMethodInfoPtr_Init_Public_Void_GameStage_Int32_0;

	// Token: 0x04003862 RID: 14434
	private static readonly IntPtr NativeMethodInfoPtr_OnSelect_Public_Virtual_Void_0;

	// Token: 0x04003863 RID: 14435
	private static readonly IntPtr NativeMethodInfoPtr_OnDeselect_Public_Virtual_Void_0;

	// Token: 0x04003864 RID: 14436
	private static readonly IntPtr NativeMethodInfoPtr_UpdateUnlockState_Public_Void_0;

	// Token: 0x04003865 RID: 14437
	private static readonly IntPtr NativeMethodInfoPtr_IsCurrentLocation_Public_Boolean_GameStage_Int32_0;

	// Token: 0x04003866 RID: 14438
	private static readonly IntPtr NativeMethodInfoPtr_GetLocationText_Public_String_0;

	// Token: 0x04003867 RID: 14439
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
}
