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

// Token: 0x02000250 RID: 592
[Token(Token = "0x2000250")]
public class UITeleport : GameCanvasBase
{
	// Token: 0x060016E2 RID: 5858 RVA: 0x000371F8 File Offset: 0x000353F8
	[Token(Token = "0x60016E2")]
	[Address(RVA = "0x18B1FE0", Offset = "0x18B0DE0", VA = "0x1818B1FE0", Slot = "11")]
	public override void Init()
	{
		this.InitTopHandlers();
		this.InitFirstNavigation();
		this.InitLastNavigation();
		this.InitSelection();
	}

	// Token: 0x060016E3 RID: 5859 RVA: 0x00037220 File Offset: 0x00035420
	[Token(Token = "0x60016E3")]
	[Address(RVA = "0x18B19E0", Offset = "0x18B07E0", VA = "0x1818B19E0")]
	private void InitTopHandlers()
	{
		do
		{
			UITeleportHandler uiteleportHandler = this.firstAreaHandlers[0];
			int num = 0;
			uiteleportHandler.Init(GameStage.Act02_01, num);
			this.firstAreaHandlers[1].Init(GameStage.Act02_01, 3);
			this.firstAreaHandlers[2].Init(GameStage.Act02_01, 1);
			this.firstAreaHandlers[3].Init(GameStage.Act02_01, 4);
			UITeleportHandler uiteleportHandler2 = this.firstAreaHandlers[4];
			int num2 = 0;
			uiteleportHandler2.Init(GameStage.Act03_01, num2);
			this.firstAreaHandlers[5].Init(GameStage.Act03_01, 1);
			UITeleportHandler uiteleportHandler3 = this.firstAreaHandlers[6];
			int num3 = 0;
			uiteleportHandler3.Init(GameStage.Act04_01, num3);
			this.firstAreaHandlers[7].Init(GameStage.Act04_01, 1);
			UITeleportHandler uiteleportHandler4 = this.firstAreaHandlers[8];
			int num4 = 0;
			uiteleportHandler4.Init(GameStage.Act05_02, num4);
			this.firstAreaHandlers[9].Init(GameStage.Act05_02, 1);
			this.firstAreaHandlers[10].Init(GameStage.Act05_02, 6);
			this.firstAreaHandlers[11].Init(GameStage.Act05_02, 2);
			UITeleportHandler uiteleportHandler5 = this.lastAreaHandlers[0];
			int num5 = 0;
			uiteleportHandler5.Init(GameStage.Act06_03, num5);
			this.lastAreaHandlers[1].Init(GameStage.Act06_03, 1);
			this.lastAreaHandlers[2].Init(GameStage.Act06_03, 2);
			this.lastAreaHandlers[3].Init(GameStage.Act06_03, 3);
			UITeleportHandler uiteleportHandler6 = this.lastAreaHandlers[4];
			int num6 = 0;
			uiteleportHandler6.Init(GameStage.Act07, num6);
			this.lastAreaHandlers[5].Init(GameStage.Act07, 1);
			this.lastAreaHandlers[6].Init(GameStage.Act07, 2);
			UITeleportHandler[] array = this.firstAreaHandlers;
			int num7 = 0;
			if (num7 < array.Length)
			{
				array[num7].index = num7;
				num7++;
				UITeleportHandler[] array2 = this.firstAreaHandlers;
			}
			UITeleportHandler[] array3 = this.lastAreaHandlers;
			if (num7 >= array3.Length)
			{
				break;
			}
			UITeleportHandler uiteleportHandler7 = array3[num7];
			num7++;
			uiteleportHandler7.index = 100;
		}
		while (this.lastAreaHandlers != 0);
	}

	// Token: 0x060016E4 RID: 5860 RVA: 0x00037434 File Offset: 0x00035634
	[Token(Token = "0x60016E4")]
	[Address(RVA = "0x18AFB60", Offset = "0x18AE960", VA = "0x1818AFB60")]
	private void InitFirstNavigation()
	{
		UINavigationSetter uinavigationSetter6;
		UIHandlerBase[] array6;
		UILabelHandler uilabelHandler2;
		for (;;)
		{
			int num = 0;
			UINavigationSetter uinavigationSetter = UINavigationSetter.Get(UINavigationMode.Horizontal, true, num);
			UIHandlerBase[] array = new UIHandlerBase[4];
			UITeleportHandler uiteleportHandler = this.firstAreaHandlers[0];
			if (uiteleportHandler == 0 || array != 0)
			{
				array[0] = uiteleportHandler;
				UITeleportHandler uiteleportHandler2 = this.firstAreaHandlers[1];
				if (uiteleportHandler2 == 0 || array != 0)
				{
					array[1] = uiteleportHandler2;
					UITeleportHandler uiteleportHandler3 = this.firstAreaHandlers[2];
					if (uiteleportHandler3 == 0 || array != 0)
					{
						array[2] = uiteleportHandler3;
						UITeleportHandler uiteleportHandler4 = this.firstAreaHandlers[3];
						if (uiteleportHandler4 == 0 || array != 0)
						{
							array[3] = uiteleportHandler4;
							uinavigationSetter.Apply(array);
							int num2 = 0;
							UINavigationSetter uinavigationSetter2 = UINavigationSetter.Get(UINavigationMode.Horizontal, true, num2);
							UIHandlerBase[] array2 = new UIHandlerBase[2];
							UITeleportHandler uiteleportHandler5 = this.firstAreaHandlers[4];
							if (uiteleportHandler5 == 0 || array2 != 0)
							{
								array2[0] = uiteleportHandler5;
								UITeleportHandler uiteleportHandler6 = this.firstAreaHandlers[5];
								if (uiteleportHandler6 == 0 || array2 != 0)
								{
									array2[1] = uiteleportHandler6;
									uinavigationSetter2.Apply(array2);
									int num3 = 0;
									UINavigationSetter uinavigationSetter3 = UINavigationSetter.Get(UINavigationMode.Horizontal, true, num3);
									UIHandlerBase[] array3 = new UIHandlerBase[2];
									UITeleportHandler uiteleportHandler7 = this.firstAreaHandlers[6];
									if (uiteleportHandler7 == 0 || array3 != 0)
									{
										array3[0] = uiteleportHandler7;
										UITeleportHandler uiteleportHandler8 = this.firstAreaHandlers[7];
										if (uiteleportHandler8 == 0 || array3 != 0)
										{
											array3[1] = uiteleportHandler8;
											uinavigationSetter3.Apply(array3);
											int num4 = 0;
											UINavigationSetter uinavigationSetter4 = UINavigationSetter.Get(UINavigationMode.Horizontal, true, num4);
											UIHandlerBase[] array4 = new UIHandlerBase[4];
											UITeleportHandler uiteleportHandler9 = this.firstAreaHandlers[8];
											if (uiteleportHandler9 == 0 || array4 != 0)
											{
												array4[0] = uiteleportHandler9;
												UITeleportHandler uiteleportHandler10 = this.firstAreaHandlers[9];
												if (uiteleportHandler10 == 0 || array4 != 0)
												{
													array4[1] = uiteleportHandler10;
													UITeleportHandler uiteleportHandler11 = this.firstAreaHandlers[10];
													if (uiteleportHandler11 == 0 || array4 != 0)
													{
														array4[2] = uiteleportHandler11;
														UITeleportHandler uiteleportHandler12 = this.firstAreaHandlers[11];
														if (uiteleportHandler12 == 0 || array4 != 0)
														{
															array4[3] = uiteleportHandler12;
															uinavigationSetter4.Apply(array4);
															int num5 = 0;
															UINavigationSetter uinavigationSetter5 = UINavigationSetter.Get(UINavigationMode.Vertical, true, num5);
															UIHandlerBase[] array5 = new UIHandlerBase[5];
															UITeleportHandler uiteleportHandler13 = this.firstAreaHandlers[0];
															if (uiteleportHandler13 == 0 || array5 != 0)
															{
																array5[0] = uiteleportHandler13;
																UITeleportHandler uiteleportHandler14 = this.firstAreaHandlers[4];
																if (uiteleportHandler14 == 0 || array5 != 0)
																{
																	array5[1] = uiteleportHandler14;
																	UITeleportHandler uiteleportHandler15 = this.firstAreaHandlers[6];
																	if (uiteleportHandler15 == 0 || array5 != 0)
																	{
																		array5[2] = uiteleportHandler15;
																		UITeleportHandler uiteleportHandler16 = this.firstAreaHandlers[8];
																		if (uiteleportHandler16 == 0 || array5 != 0)
																		{
																			array5[3] = uiteleportHandler16;
																			UILabelHandler uilabelHandler = this.backHandler;
																			if (uilabelHandler == 0 || array5 != 0)
																			{
																				array5[4] = uilabelHandler;
																				uinavigationSetter5.Apply(array5);
																				int num6 = 0;
																				uinavigationSetter6 = UINavigationSetter.Get(UINavigationMode.Vertical, true, num6);
																				array6 = new UIHandlerBase[5];
																				UITeleportHandler uiteleportHandler17 = this.firstAreaHandlers[1];
																				if (uiteleportHandler17 == 0 || array6 != 0)
																				{
																					array6[0] = uiteleportHandler17;
																					UITeleportHandler uiteleportHandler18 = this.firstAreaHandlers[5];
																					if (uiteleportHandler18 == 0 || array6 != 0)
																					{
																						array6[1] = uiteleportHandler18;
																						UITeleportHandler uiteleportHandler19 = this.firstAreaHandlers[7];
																						if (uiteleportHandler19 == 0 || array6 != 0)
																						{
																							array6[2] = uiteleportHandler19;
																							UITeleportHandler uiteleportHandler20 = this.firstAreaHandlers[9];
																							if (uiteleportHandler20 == 0 || array6 != 0)
																							{
																								array6[3] = uiteleportHandler20;
																								uilabelHandler2 = this.backHandler;
																								if (uilabelHandler2 == 0 || array6 != 0)
																								{
																									break;
																								}
																							}
																						}
																					}
																				}
																			}
																		}
																	}
																}
															}
														}
													}
												}
											}
										}
									}
								}
							}
						}
					}
				}
			}
		}
		array6[4] = uilabelHandler2;
		uinavigationSetter6.Apply(array6);
		UITeleportHandler uiteleportHandler21 = this.firstAreaHandlers[2];
		UILabelHandler uilabelHandler3 = this.backHandler;
		uiteleportHandler21.SetupNavigationHandler(Direction2D.Up, uilabelHandler3);
		UITeleportHandler[] array7 = this.firstAreaHandlers;
		int length = array7.Length;
		UITeleportHandler uiteleportHandler22 = array7[2];
		UITeleportHandler uiteleportHandler23 = array7[5];
		uiteleportHandler22.SetupNavigationHandler(Direction2D.Down, uiteleportHandler23);
		UITeleportHandler uiteleportHandler24 = this.firstAreaHandlers[3];
		UILabelHandler uilabelHandler4 = this.backHandler;
		uiteleportHandler24.SetupNavigationHandler(Direction2D.Up, uilabelHandler4);
		UITeleportHandler[] array8 = this.firstAreaHandlers;
		int length2 = array8.Length;
		UITeleportHandler uiteleportHandler25 = array8[3];
		UITeleportHandler uiteleportHandler26 = array8[5];
		uiteleportHandler25.SetupNavigationHandler(Direction2D.Down, uiteleportHandler26);
		UITeleportHandler[] array9 = this.firstAreaHandlers;
		UITeleportHandler uiteleportHandler27 = array9[10];
		UITeleportHandler uiteleportHandler28 = array9[7];
		uiteleportHandler27.SetupNavigationHandler(Direction2D.Up, uiteleportHandler28);
		UITeleportHandler uiteleportHandler29 = this.firstAreaHandlers[10];
		UILabelHandler uilabelHandler5 = this.backHandler;
		uiteleportHandler29.SetupNavigationHandler(Direction2D.Down, uilabelHandler5);
		UITeleportHandler[] array10 = this.firstAreaHandlers;
		UITeleportHandler uiteleportHandler30 = array10[11];
		UITeleportHandler uiteleportHandler31 = array10[7];
		uiteleportHandler30.SetupNavigationHandler(Direction2D.Up, uiteleportHandler31);
		UITeleportHandler uiteleportHandler32 = this.firstAreaHandlers[11];
		UILabelHandler uilabelHandler6 = this.backHandler;
		uiteleportHandler32.SetupNavigationHandler(Direction2D.Down, uilabelHandler6);
	}

	// Token: 0x060016E5 RID: 5861 RVA: 0x0003793C File Offset: 0x00035B3C
	[Token(Token = "0x60016E5")]
	[Address(RVA = "0x18B0A80", Offset = "0x18AF880", VA = "0x1818B0A80")]
	private void InitLastNavigation()
	{
		UINavigationSetter uinavigationSetter6;
		UIHandlerBase[] array7;
		UILabelHandler uilabelHandler6;
		for (;;)
		{
			int num = 0;
			UINavigationSetter uinavigationSetter = UINavigationSetter.Get(UINavigationMode.Horizontal, true, num);
			UIHandlerBase[] array = new UIHandlerBase[4];
			UITeleportHandler uiteleportHandler = this.lastAreaHandlers[0];
			if (uiteleportHandler == 0 || array != 0)
			{
				array[0] = uiteleportHandler;
				UITeleportHandler uiteleportHandler2 = this.lastAreaHandlers[1];
				if (uiteleportHandler2 == 0 || array != 0)
				{
					array[1] = uiteleportHandler2;
					UITeleportHandler uiteleportHandler3 = this.lastAreaHandlers[2];
					if (uiteleportHandler3 == 0 || array != 0)
					{
						array[2] = uiteleportHandler3;
						UITeleportHandler uiteleportHandler4 = this.lastAreaHandlers[3];
						if (uiteleportHandler4 == 0 || array != 0)
						{
							array[3] = uiteleportHandler4;
							uinavigationSetter.Apply(array);
							int num2 = 0;
							UINavigationSetter uinavigationSetter2 = UINavigationSetter.Get(UINavigationMode.Horizontal, true, num2);
							UIHandlerBase[] array2 = new UIHandlerBase[3];
							UITeleportHandler uiteleportHandler5 = this.lastAreaHandlers[4];
							if (uiteleportHandler5 == 0 || array2 != 0)
							{
								array2[0] = uiteleportHandler5;
								UITeleportHandler uiteleportHandler6 = this.lastAreaHandlers[5];
								if (uiteleportHandler6 == 0 || array2 != 0)
								{
									array2[1] = uiteleportHandler6;
									UITeleportHandler uiteleportHandler7 = this.lastAreaHandlers[6];
									if (uiteleportHandler7 == 0 || array2 != 0)
									{
										array2[2] = uiteleportHandler7;
										uinavigationSetter2.Apply(array2);
										int num3 = 0;
										UINavigationSetter uinavigationSetter3 = UINavigationSetter.Get(UINavigationMode.Vertical, true, num3);
										UIHandlerBase[] array3 = new UIHandlerBase[3];
										UITeleportHandler uiteleportHandler8 = this.lastAreaHandlers[0];
										if (uiteleportHandler8 == 0 || array3 != 0)
										{
											array3[0] = uiteleportHandler8;
											UITeleportHandler uiteleportHandler9 = this.lastAreaHandlers[4];
											if (uiteleportHandler9 == 0 || array3 != 0)
											{
												array3[1] = uiteleportHandler9;
												UILabelHandler uilabelHandler = this.backHandler;
												if (uilabelHandler == 0 || array3 != 0)
												{
													array3[2] = uilabelHandler;
													uinavigationSetter3.Apply(array3);
													int num4 = 0;
													UINavigationSetter uinavigationSetter4 = UINavigationSetter.Get(UINavigationMode.Vertical, true, num4);
													UIHandlerBase[] array4 = new UIHandlerBase[3];
													UITeleportHandler uiteleportHandler10 = this.lastAreaHandlers[1];
													if (uiteleportHandler10 == 0 || array4 != 0)
													{
														array4[0] = uiteleportHandler10;
														UITeleportHandler uiteleportHandler11 = this.lastAreaHandlers[5];
														if (uiteleportHandler11 == 0 || array4 != 0)
														{
															array4[1] = uiteleportHandler11;
															UILabelHandler uilabelHandler2 = this.backHandler;
															if (uilabelHandler2 == 0 || array4 != 0)
															{
																array4[2] = uilabelHandler2;
																uinavigationSetter4.Apply(array4);
																int num5 = 0;
																UINavigationSetter uinavigationSetter5 = UINavigationSetter.Get(UINavigationMode.Vertical, true, num5);
																UIHandlerBase[] array5 = new UIHandlerBase[3];
																UITeleportHandler uiteleportHandler12 = this.lastAreaHandlers[2];
																if (uiteleportHandler12 == 0 || array5 != 0)
																{
																	array5[0] = uiteleportHandler12;
																	UITeleportHandler uiteleportHandler13 = this.lastAreaHandlers[6];
																	if (uiteleportHandler13 == 0 || array5 != 0)
																	{
																		array5[1] = uiteleportHandler13;
																		UILabelHandler uilabelHandler3 = this.backHandler;
																		if (uilabelHandler3 == 0 || array5 != 0)
																		{
																			array5[2] = uilabelHandler3;
																			uinavigationSetter5.Apply(array5);
																			UITeleportHandler uiteleportHandler14 = this.lastAreaHandlers[3];
																			UILabelHandler uilabelHandler4 = this.backHandler;
																			uiteleportHandler14.SetupNavigationHandler(Direction2D.Up, uilabelHandler4);
																			UITeleportHandler[] array6 = this.lastAreaHandlers;
																			int length = array6.Length;
																			UITeleportHandler uiteleportHandler15 = array6[3];
																			UITeleportHandler uiteleportHandler16 = array6[6];
																			uiteleportHandler15.SetupNavigationHandler(Direction2D.Down, uiteleportHandler16);
																			int num6 = 0;
																			uinavigationSetter6 = UINavigationSetter.Get(UINavigationMode.Horizontal, true, num6);
																			array7 = new UIHandlerBase[2];
																			UILabelHandler uilabelHandler5 = this.backHandler;
																			if (uilabelHandler5 == 0 || array7 != 0)
																			{
																				array7[0] = uilabelHandler5;
																				uilabelHandler6 = this.closeHandler;
																				if (uilabelHandler6 == 0 || array7 != 0)
																				{
																					break;
																				}
																			}
																		}
																	}
																}
															}
														}
													}
												}
											}
										}
									}
								}
							}
						}
					}
				}
			}
		}
		array7[1] = uilabelHandler6;
		uinavigationSetter6.Apply(array7);
	}

	// Token: 0x060016E6 RID: 5862 RVA: 0x00037CBC File Offset: 0x00035EBC
	[Token(Token = "0x60016E6")]
	[Address(RVA = "0x18B1580", Offset = "0x18B0380", VA = "0x1818B1580")]
	private void InitSelection()
	{
		UITeleportHandler[] array = this.firstAreaHandlers;
		int num = 0;
		int length = array.Length;
		if (num < length)
		{
			UITeleportHandler uiteleportHandler = array[num];
			Action<UIHandlerBase> action = new Action(this.OnTopHandlerSelected);
			uiteleportHandler.onSelectedHandler = action;
			Action<UIHandlerBase> action2 = new Action(this.OnTopHandlerDeselected);
			uiteleportHandler.onDeselectedHandler = action2;
			num++;
		}
		UITeleportHandler[] array2 = this.lastAreaHandlers;
		int length2 = array2.Length;
		if (num < length2)
		{
			UITeleportHandler uiteleportHandler2 = array2[num];
			Action<UIHandlerBase> action3 = new Action(this.OnTopHandlerSelected);
			uiteleportHandler2.onSelectedHandler = action3;
			Action<UIHandlerBase> action4 = new Action(this.OnTopHandlerDeselected);
			uiteleportHandler2.onDeselectedHandler = action4;
			num++;
		}
		this.backHandler.index = (int)((ulong)900L);
		this.closeHandler.index = (int)((ulong)901L);
		UILabelHandler uilabelHandler = this.backHandler;
		Action<UIHandlerBase> action5 = new Action(this.OnBottomHandlerSelected);
		uilabelHandler.onSelectedHandler = action5;
		UILabelHandler uilabelHandler2 = this.backHandler;
		Action<UIHandlerBase> action6 = new Action(this.OnBottomHandlerDeselected);
		uilabelHandler2.onDeselectedHandler = action6;
		UILabelHandler uilabelHandler3 = this.closeHandler;
		Action<UIHandlerBase> action7 = new Action(this.OnBottomHandlerSelected);
		uilabelHandler3.onSelectedHandler = action7;
		UILabelHandler uilabelHandler4 = this.closeHandler;
		Action<UIHandlerBase> action8 = new Action(this.OnBottomHandlerDeselected);
		uilabelHandler4.onDeselectedHandler = action8;
		List<UIHandlerBase> list = new List();
		UITeleportHandler[] array3 = this.firstAreaHandlers;
		list.AddRange(array3);
		UITeleportHandler[] array4 = this.lastAreaHandlers;
		list.AddRange(array4);
		UILabelHandler uilabelHandler5 = this.backHandler;
		list.Add(uilabelHandler5);
		UILabelHandler uilabelHandler6 = this.closeHandler;
		list.Add(uilabelHandler6);
		UIHandlerBase[] array5 = list.ToArray();
		this.navigator.BindPointerEnterEvent(array5);
		this.navigator.BindPointerExitEvent(array5);
	}

	// Token: 0x060016E7 RID: 5863 RVA: 0x00037E7C File Offset: 0x0003607C
	[Token(Token = "0x60016E7")]
	[Address(RVA = "0x18B2F40", Offset = "0x18B1D40", VA = "0x1818B2F40")]
	public void UpdateLocation(GameStage stage, int savePoint)
	{
		this.currentStage = stage;
		this.currentSavePoint = savePoint;
	}

	// Token: 0x060016E8 RID: 5864 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60016E8")]
	[Address(RVA = "0x18AF370", Offset = "0x18AE170", VA = "0x1818AF370", Slot = "12")]
	protected override void Appear(Action completeHandler)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060016E9 RID: 5865 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60016E9")]
	[Address(RVA = "0x18B2280", Offset = "0x18B1080", VA = "0x1818B2280")]
	private bool OnFirstAreas()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060016EA RID: 5866 RVA: 0x00037E98 File Offset: 0x00036098
	[Token(Token = "0x60016EA")]
	[Address(RVA = "0x18AFA60", Offset = "0x18AE860", VA = "0x1818AFA60")]
	private UITeleportHandler GetCurrentLocationHandler(UITeleportHandler[] source)
	{
		int num = 0;
		int length = source.Length;
		if (num < length)
		{
			UITeleportHandler uiteleportHandler = source[num];
			GameStage gameStage = this.currentStage;
			if (uiteleportHandler.stage == gameStage)
			{
				int num2 = this.currentSavePoint;
				if (uiteleportHandler.savePoint == num2)
				{
					return uiteleportHandler;
				}
			}
			num++;
			return uiteleportHandler;
		}
		return source[0];
	}

	// Token: 0x060016EB RID: 5867 RVA: 0x00037EF0 File Offset: 0x000360F0
	[Token(Token = "0x60016EB")]
	[Address(RVA = "0x764EC0", Offset = "0x763CC0", VA = "0x180764EC0", Slot = "18")]
	public override void Move(Direction2D direction)
	{
		this.navigator.Move(direction);
	}

	// Token: 0x060016EC RID: 5868 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60016EC")]
	[Address(RVA = "0x18B2360", Offset = "0x18B1160", VA = "0x1818B2360")]
	private void OnTopHandlerSelected(UIHandlerBase handler)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060016ED RID: 5869 RVA: 0x00037F10 File Offset: 0x00036110
	[Token(Token = "0x60016ED")]
	[Address(RVA = "0x18B2300", Offset = "0x18B1100", VA = "0x1818B2300")]
	private void OnTopHandlerDeselected(UIHandlerBase handler)
	{
		this.location.text = "";
		this.topNavigationEffect.Hide();
	}

	// Token: 0x060016EE RID: 5870 RVA: 0x00037F40 File Offset: 0x00036140
	[Token(Token = "0x60016EE")]
	[Address(RVA = "0x18B2190", Offset = "0x18B0F90", VA = "0x1818B2190")]
	private void OnBottomHandlerSelected(UIHandlerBase handler)
	{
		UINavigationEffect uinavigationEffect = this.bottomNavigationEffect;
		Vector2 anchoredPosition = handler.rectTransform.anchoredPosition;
		uinavigationEffect.UpdatePos(anchoredPosition);
		UINavigationEffect uinavigationEffect2 = this.bottomNavigationEffect;
		if (handler.index != 900)
		{
		}
		UILabelHandler uilabelHandler = this.backHandler;
		uinavigationEffect2.UpdateArrowPos(uilabelHandler);
		this.bottomNavigationEffect.Appear();
		Game.PlayHandlerSE(UIHandlerSFX.Navigation);
	}

	// Token: 0x060016EF RID: 5871 RVA: 0x00037FA0 File Offset: 0x000361A0
	[Token(Token = "0x60016EF")]
	[Address(RVA = "0x764FC0", Offset = "0x763DC0", VA = "0x180764FC0")]
	private void OnBottomHandlerDeselected(UIHandlerBase handler)
	{
		this.bottomNavigationEffect.Hide();
	}

	// Token: 0x060016F0 RID: 5872 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60016F0")]
	[Address(RVA = "0x18B2C70", Offset = "0x18B1A70", VA = "0x1818B2C70", Slot = "21")]
	public override void Submit()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060016F1 RID: 5873 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60016F1")]
	[Address(RVA = "0x18B25C0", Offset = "0x18B13C0", VA = "0x1818B25C0")]
	private void PerformBottomSubmissionEffect()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060016F2 RID: 5874 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60016F2")]
	[Address(RVA = "0x18B26A0", Offset = "0x18B14A0", VA = "0x1818B26A0")]
	private void ShowTeleportMessageBox(UITeleportHandler handler)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060016F3 RID: 5875 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60016F3")]
	[Address(RVA = "0x18B2DC0", Offset = "0x18B1BC0", VA = "0x1818B2DC0")]
	private void Teleport()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060016F4 RID: 5876 RVA: 0x00037FC0 File Offset: 0x000361C0
	[Token(Token = "0x60016F4")]
	[Address(RVA = "0x18B2020", Offset = "0x18B0E20", VA = "0x1818B2020", Slot = "25")]
	public override void Localize(LocalizationData data)
	{
		Text text = this.title;
		string text2 = data.systemText.GetText(178);
		text.text = text2;
		GameTextData systemText = data.systemText;
		UILabelHandler uilabelHandler = this.backHandler;
		string text3 = systemText.GetText(12);
		uilabelHandler.SetLabel(text3);
		GameTextData systemText2 = data.systemText;
		UILabelHandler uilabelHandler2 = this.closeHandler;
		string text4 = systemText2.GetText(183);
		uilabelHandler2.SetLabel(text4);
		GameFontPack fontPack = data.fontPack;
		Text text5 = this.title;
		Font light = fontPack.light;
		text5.font = light;
		GameFontPack fontPack2 = data.fontPack;
		Text text6 = this.location;
		Font light2 = fontPack2.light;
		text6.font = light2;
		GameFontPack fontPack3 = data.fontPack;
		UILabelHandler uilabelHandler3 = this.backHandler;
		Font medium = fontPack3.medium;
		uilabelHandler3.SetFont(medium);
		GameFontPack fontPack4 = data.fontPack;
		UILabelHandler uilabelHandler4 = this.closeHandler;
		Font medium2 = fontPack4.medium;
		uilabelHandler4.SetFont(medium2);
	}

	// Token: 0x060016F5 RID: 5877 RVA: 0x000380C4 File Offset: 0x000362C4
	[Token(Token = "0x60016F5")]
	[Address(RVA = "0x18AFAF0", Offset = "0x18AE8F0", VA = "0x1818AFAF0")]
	private UITeleportHandler GetTeleportHandler(int index)
	{
		if (index < 100)
		{
			return this.firstAreaHandlers[index];
		}
		UITeleportHandler[] array = this.lastAreaHandlers;
		throw new NullReferenceException();
	}

	// Token: 0x060016F6 RID: 5878 RVA: 0x000380F0 File Offset: 0x000362F0
	[Token(Token = "0x60016F6")]
	[Address(RVA = "0x769BF0", Offset = "0x7689F0", VA = "0x180769BF0")]
	public UITeleport()
	{
	}

	// Token: 0x04002155 RID: 8533
	[FieldOffset(Offset = "0x58")]
	[Token(Token = "0x4002155")]
	[SerializeField]
	private Text title;

	// Token: 0x04002156 RID: 8534
	[FieldOffset(Offset = "0x60")]
	[Token(Token = "0x4002156")]
	[SerializeField]
	private Text location;

	// Token: 0x04002157 RID: 8535
	[FieldOffset(Offset = "0x68")]
	[Token(Token = "0x4002157")]
	[SerializeField]
	private UITeleportHandler[] firstAreaHandlers;

	// Token: 0x04002158 RID: 8536
	[FieldOffset(Offset = "0x70")]
	[Token(Token = "0x4002158")]
	[SerializeField]
	private UITeleportHandler[] lastAreaHandlers;

	// Token: 0x04002159 RID: 8537
	[FieldOffset(Offset = "0x78")]
	[Token(Token = "0x4002159")]
	[SerializeField]
	private UINavigationEffect topNavigationEffect;

	// Token: 0x0400215A RID: 8538
	[FieldOffset(Offset = "0x80")]
	[Token(Token = "0x400215A")]
	[SerializeField]
	private GameObject[] topHandlerGroups;

	// Token: 0x0400215B RID: 8539
	[FieldOffset(Offset = "0x88")]
	[Token(Token = "0x400215B")]
	[SerializeField]
	private UILabelHandler backHandler;

	// Token: 0x0400215C RID: 8540
	[FieldOffset(Offset = "0x90")]
	[Token(Token = "0x400215C")]
	[SerializeField]
	private UILabelHandler closeHandler;

	// Token: 0x0400215D RID: 8541
	[FieldOffset(Offset = "0x98")]
	[Token(Token = "0x400215D")]
	[SerializeField]
	private Image bottomSubmissionEffect;

	// Token: 0x0400215E RID: 8542
	[FieldOffset(Offset = "0xA0")]
	[Token(Token = "0x400215E")]
	[SerializeField]
	private UINavigationEffect bottomNavigationEffect;

	// Token: 0x0400215F RID: 8543
	[FieldOffset(Offset = "0xA8")]
	[Token(Token = "0x400215F")]
	[SerializeField]
	private GameStage currentStage;

	// Token: 0x04002160 RID: 8544
	[FieldOffset(Offset = "0xAC")]
	[Token(Token = "0x4002160")]
	[SerializeField]
	private int currentSavePoint;

	// Token: 0x04002161 RID: 8545
	[FieldOffset(Offset = "0xB0")]
	[Token(Token = "0x4002161")]
	[SerializeField]
	private GameStage handlerStage;

	// Token: 0x04002162 RID: 8546
	[FieldOffset(Offset = "0xB4")]
	[Token(Token = "0x4002162")]
	[SerializeField]
	private int handlerSavePoint;

	// Token: 0x04002163 RID: 8547
	[Token(Token = "0x4002163")]
	private const int BACK_HANDLER_INDEX = 900;

	// Token: 0x04002164 RID: 8548
	[Token(Token = "0x4002164")]
	private const int CONFIRM_HANDLER_INDEX = 901;
}
