using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
using MarsSDK;
using UnityEngine;
using UnityEngine.UI;

// Token: 0x020002C4 RID: 708
[Token(Token = "0x20002C4")]
public class UIGameTip : GameCanvasBase
{
	// Token: 0x06001A78 RID: 6776 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A78")]
	[Address(RVA = "0x7683F0", Offset = "0x7671F0", VA = "0x1807683F0", Slot = "11")]
	public override void Init()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A79 RID: 6777 RVA: 0x0003F378 File Offset: 0x0003D578
	[Token(Token = "0x6001A79")]
	[Address(RVA = "0x768210", Offset = "0x767010", VA = "0x180768210", Slot = "12")]
	protected override void Appear(Action completeHandler)
	{
		UINavigator navigator = this.navigator;
		UILabelHandler uilabelHandler = this.submissionHandler;
		navigator.SetDefaultHandler(uilabelHandler);
		GameObject gameObject = this.submissionEffect.gameObject;
		int num = 0;
		gameObject.SetActive(num != 0);
		base.Appear(completeHandler);
	}

	// Token: 0x06001A7A RID: 6778 RVA: 0x0003F3BC File Offset: 0x0003D5BC
	[Token(Token = "0x6001A7A")]
	[Address(RVA = "0x769930", Offset = "0x768730", VA = "0x180769930")]
	public void UpdateStyle(GameTipStyle style)
	{
		GameTextDataAdvance gameTextDataAdvance = this.textData;
		this.UpdateStyle(style, gameTextDataAdvance);
	}

	// Token: 0x06001A7B RID: 6779 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A7B")]
	[Address(RVA = "0x769940", Offset = "0x768740", VA = "0x180769940")]
	public void UpdateStyle(GameTipStyle style, GameTextDataAdvance data)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A7C RID: 6780 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A7C")]
	[Address(RVA = "0x769AE0", Offset = "0x7688E0", VA = "0x180769AE0")]
	private void UpdateText(string[] data)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A7D RID: 6781 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A7D")]
	[Address(RVA = "0x769760", Offset = "0x768560", VA = "0x180769760")]
	private void UpdateInputIcons(GameTipStyle style)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A7E RID: 6782 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A7E")]
	[Address(RVA = "0x7689B0", Offset = "0x7677B0", VA = "0x1807689B0")]
	private void ResetActiveInputIconRoot()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A7F RID: 6783 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A7F")]
	[Address(RVA = "0x768350", Offset = "0x767150", VA = "0x180768350")]
	private UIInputIcon[] GetInputIcons(GameTipStyle style)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A80 RID: 6784 RVA: 0x0003F3D8 File Offset: 0x0003D5D8
	[Token(Token = "0x6001A80")]
	[Address(RVA = "0x7691C0", Offset = "0x767FC0", VA = "0x1807691C0")]
	private void UpdateInputIconRoot(UIInputIcon[] collection)
	{
		if (collection != 0)
		{
			Transform parent = collection[0].transform.parent;
			this.activeInputKeyRoot = parent;
		}
	}

	// Token: 0x06001A81 RID: 6785 RVA: 0x0003F408 File Offset: 0x0003D608
	[Token(Token = "0x6001A81")]
	[Address(RVA = "0x768890", Offset = "0x767690", VA = "0x180768890", Slot = "18")]
	public override void Move(Direction2D direction)
	{
		UINavigator navigator = this.navigator;
		UILabelHandler uilabelHandler = this.submissionHandler;
		navigator.SetDefaultHandler(uilabelHandler);
	}

	// Token: 0x06001A82 RID: 6786 RVA: 0x0003F430 File Offset: 0x0003D630
	[Token(Token = "0x6001A82")]
	[Address(RVA = "0x768940", Offset = "0x767740", VA = "0x180768940")]
	private void OnHandlerSelected(UIHandlerBase handler)
	{
		this.navigationEffect.Appear();
		Game.PlayHandlerSE(UIHandlerSFX.Navigation);
	}

	// Token: 0x06001A83 RID: 6787 RVA: 0x0003F454 File Offset: 0x0003D654
	[Token(Token = "0x6001A83")]
	[Address(RVA = "0x768910", Offset = "0x767710", VA = "0x180768910")]
	private void OnHandlerDeselected(UIHandlerBase handler)
	{
		this.navigationEffect.Hide();
	}

	// Token: 0x06001A84 RID: 6788 RVA: 0x0003F474 File Offset: 0x0003D674
	[Token(Token = "0x6001A84")]
	[Address(RVA = "0x768AD0", Offset = "0x7678D0", VA = "0x180768AD0", Slot = "21")]
	public override void Submit()
	{
		if (this.navigator.currentHandler)
		{
			base.Close();
			Game.PlayHandlerScaleEffect(this.navigator.currentHandler);
			this.submissionEffect.gameObject.SetActive(true);
			Game.PlayCanvasSE(UICanvasSFX.Close);
		}
	}

	// Token: 0x06001A85 RID: 6789 RVA: 0x0003F4C8 File Offset: 0x0003D6C8
	[Token(Token = "0x6001A85")]
	[Address(RVA = "0x7688C0", Offset = "0x7676C0", VA = "0x1807688C0", Slot = "14")]
	protected override void OnCloseCompleted()
	{
		this.contentHandler.pooledElements.ReturnAll();
	}

	// Token: 0x06001A86 RID: 6790 RVA: 0x0003F4EC File Offset: 0x0003D6EC
	[Token(Token = "0x6001A86")]
	[Address(RVA = "0x7687D0", Offset = "0x7675D0", VA = "0x1807687D0", Slot = "25")]
	public override void Localize(LocalizationData data)
	{
		GameTextData systemText = data.systemText;
		GameTextDataAdvance gameTextDataAdvance = this.textData;
		GameLanguage language = systemText.language;
		GameTextDataAdvance gameTextDataAdvance2 = gameTextDataAdvance.UpdateLanguage(language);
		GameFontPack fontPack = data.fontPack;
		GameTextData systemText2 = data.systemText;
		this.UpdateFontPack(fontPack);
		UILabelHandler uilabelHandler = this.submissionHandler;
		string text = systemText2.GetText(13);
		uilabelHandler.SetLabel(text);
		UINavigationEffect uinavigationEffect = this.navigationEffect;
		UILabelHandler uilabelHandler2 = this.submissionHandler;
		uinavigationEffect.UpdateArrowPos(uilabelHandler2);
	}

	// Token: 0x06001A87 RID: 6791 RVA: 0x0003F56C File Offset: 0x0003D76C
	[Token(Token = "0x6001A87")]
	[Address(RVA = "0x768740", Offset = "0x767540", VA = "0x180768740")]
	public void Localize(GameTextData data, GameFontPack fontPack)
	{
		this.UpdateFontPack(fontPack);
		UILabelHandler uilabelHandler = this.submissionHandler;
		string text = data.GetText(13);
		uilabelHandler.SetLabel(text);
		UINavigationEffect uinavigationEffect = this.navigationEffect;
		UILabelHandler uilabelHandler2 = this.submissionHandler;
		uinavigationEffect.UpdateArrowPos(uilabelHandler2);
	}

	// Token: 0x06001A88 RID: 6792 RVA: 0x0003F5B4 File Offset: 0x0003D7B4
	[Token(Token = "0x6001A88")]
	[Address(RVA = "0x768CD0", Offset = "0x767AD0", VA = "0x180768CD0")]
	private void UpdateFontPack(GameFontPack fontPack)
	{
		Text text = this.title;
		Font light = fontPack.light;
		text.font = light;
		UIGameTipContentHandler uigameTipContentHandler = this.contentHandler;
		UIGameTipContentHandler.<>c__DisplayClass13_0 CS$<>8__locals1 = new UIGameTipContentHandler.<>c__DisplayClass13_0();
		CS$<>8__locals1.fontPack = fontPack;
		GameObjectPoolLimited<UIGameTipContentElement> pooledElements = uigameTipContentHandler.pooledElements;
		if (pooledElements == 0)
		{
			uigameTipContentHandler.Init();
		}
		Action<UIGameTipContentElement> action = delegate(UIGameTipContentElement element)
		{
			GameFontPack fontPack2 = CS$<>8__locals1.fontPack;
			element.SetFont(fontPack2);
		};
		pooledElements.ProcessSparePool(action);
		UILabelHandler uilabelHandler = this.submissionHandler;
		Font medium = fontPack.medium;
		uilabelHandler.SetFont(medium);
		UIInputIcon[] array = this.tutorialAttackAndJumpKeys;
		int num = 0;
		int length = array.Length;
		if (num < length)
		{
			Text label = array[num].label;
			Font regular = fontPack.regular;
			label.font = regular;
			num++;
		}
		UIInputIcon[] array2 = this.tutorialAimAndShootKeys;
		int length2 = array2.Length;
		if (num < length2)
		{
			Text label2 = array2[num].label;
			Font regular2 = fontPack.regular;
			label2.font = regular2;
			num++;
		}
		UIInputIcon[] array3 = this.tutorialDodgeKeys;
		int length3 = array3.Length;
		if (num < length3)
		{
			Text label3 = array3[num].label;
			Font regular3 = fontPack.regular;
			label3.font = regular3;
			num++;
		}
		UIInputIcon[] array4 = this.tutorialDashKeys;
		int length4 = array4.Length;
		if (num < length4)
		{
			Text label4 = array4[num].label;
			Font regular4 = fontPack.regular;
			label4.font = regular4;
			num++;
		}
		UIInputIcon[] array5 = this.tutorialItemKeys;
		int length5 = array5.Length;
		if (num < length5)
		{
			Text label5 = array5[num].label;
			Font regular5 = fontPack.regular;
			label5.font = regular5;
			num++;
		}
		UIInputIcon[] array6 = this.tutorialChantKeys;
		int length6 = array6.Length;
		if (num < length6)
		{
			Text label6 = array6[num].label;
			Font regular6 = fontPack.regular;
			label6.font = regular6;
			num++;
		}
		UIInputIcon[] array7 = this.tutorialMagicSelectionKeys;
		int length7 = array7.Length;
		if (num < length7)
		{
			Text label7 = array7[num].label;
			Font regular7 = fontPack.regular;
			label7.font = regular7;
			num++;
		}
		UIInputIcon[] array8 = this.tutorialCameraModeKeys;
		int length8 = array8.Length;
		if (num < length8)
		{
			Text label8 = array8[num].label;
			Font regular8 = fontPack.regular;
			label8.font = regular8;
			num++;
		}
		UIInputIcon[] array9 = this.tutorialUpgradeAndTrade;
		int length9 = array9.Length;
		if (num < length9)
		{
			Text label9 = array9[num].label;
			Font regular9 = fontPack.regular;
			label9.font = regular9;
			num++;
		}
	}

	// Token: 0x06001A89 RID: 6793 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A89")]
	[Address(RVA = "0x769220", Offset = "0x768020", VA = "0x180769220")]
	private void UpdateInputIconStyles(ControllerDevice device)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A8A RID: 6794 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A8A")]
	[Address(RVA = "0x768C50", Offset = "0x767A50", VA = "0x180768C50")]
	private void UpdateCursorPosition(UIHandlerBase handler)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A8B RID: 6795 RVA: 0x0003F864 File Offset: 0x0003DA64
	[Token(Token = "0x6001A8B")]
	[Address(RVA = "0x768280", Offset = "0x767080", VA = "0x180768280")]
	public void Dispose()
	{
		Game.RemoveDeviceChangedHandler(new Action(this.UpdateInputIconStyles));
		this.navigator.UnbindHandlerMovedEvent();
		this.submissionHandler.Dispose();
	}

	// Token: 0x06001A8C RID: 6796 RVA: 0x0003F8A0 File Offset: 0x0003DAA0
	[Token(Token = "0x6001A8C")]
	[Address(RVA = "0x769BF0", Offset = "0x7689F0", VA = "0x180769BF0")]
	public UIGameTip()
	{
	}

	// Token: 0x06001A8D RID: 6797 RVA: 0x0003F8B4 File Offset: 0x0003DAB4
	[Token(Token = "0x6001A8D")]
	[Address(RVA = "0x768BD0", Offset = "0x7679D0", VA = "0x180768BD0")]
	[CompilerGenerated]
	internal static void <UpdateFontPack>g__UpdateKeyFont|34_0(UIInputIcon[] source, GameFontPack fontPack)
	{
		int num = 0;
		int length = source.Length;
		if (num < length)
		{
			Text label = source[num].label;
			Font regular = fontPack.regular;
			label.font = regular;
			num++;
		}
	}

	// Token: 0x04002474 RID: 9332
	[FieldOffset(Offset = "0x58")]
	[Token(Token = "0x4002474")]
	[SerializeField]
	private Image curseIcon;

	// Token: 0x04002475 RID: 9333
	[FieldOffset(Offset = "0x60")]
	[Token(Token = "0x4002475")]
	[SerializeField]
	private Text title;

	// Token: 0x04002476 RID: 9334
	[FieldOffset(Offset = "0x68")]
	[Token(Token = "0x4002476")]
	[SerializeField]
	private UIGameTipContentHandler contentHandler;

	// Token: 0x04002477 RID: 9335
	[FieldOffset(Offset = "0x70")]
	[Token(Token = "0x4002477")]
	[SerializeField]
	private UIInputIcon[] tutorialAttackAndJumpKeys;

	// Token: 0x04002478 RID: 9336
	[FieldOffset(Offset = "0x78")]
	[Token(Token = "0x4002478")]
	[SerializeField]
	private UIInputIcon[] tutorialAimAndShootKeys;

	// Token: 0x04002479 RID: 9337
	[FieldOffset(Offset = "0x80")]
	[Token(Token = "0x4002479")]
	[SerializeField]
	private UIInputIcon[] tutorialDodgeKeys;

	// Token: 0x0400247A RID: 9338
	[FieldOffset(Offset = "0x88")]
	[Token(Token = "0x400247A")]
	[SerializeField]
	private UIInputIcon[] tutorialDashKeys;

	// Token: 0x0400247B RID: 9339
	[FieldOffset(Offset = "0x90")]
	[Token(Token = "0x400247B")]
	[SerializeField]
	private UIInputIcon[] tutorialItemKeys;

	// Token: 0x0400247C RID: 9340
	[FieldOffset(Offset = "0x98")]
	[Token(Token = "0x400247C")]
	[SerializeField]
	private UIInputIcon[] tutorialChantKeys;

	// Token: 0x0400247D RID: 9341
	[FieldOffset(Offset = "0xA0")]
	[Token(Token = "0x400247D")]
	[SerializeField]
	private UIInputIcon[] tutorialMagicSelectionKeys;

	// Token: 0x0400247E RID: 9342
	[FieldOffset(Offset = "0xA8")]
	[Token(Token = "0x400247E")]
	[SerializeField]
	private UIInputIcon[] tutorialCameraModeKeys;

	// Token: 0x0400247F RID: 9343
	[FieldOffset(Offset = "0xB0")]
	[Token(Token = "0x400247F")]
	[SerializeField]
	private UIInputIcon[] tutorialUpgradeAndTrade;

	// Token: 0x04002480 RID: 9344
	[FieldOffset(Offset = "0xB8")]
	[Token(Token = "0x4002480")]
	[SerializeField]
	private UILabelHandler submissionHandler;

	// Token: 0x04002481 RID: 9345
	[FieldOffset(Offset = "0xC0")]
	[Token(Token = "0x4002481")]
	[SerializeField]
	private UINavigationEffect navigationEffect;

	// Token: 0x04002482 RID: 9346
	[FieldOffset(Offset = "0xC8")]
	[Token(Token = "0x4002482")]
	[SerializeField]
	private Image submissionEffect;

	// Token: 0x04002483 RID: 9347
	[FieldOffset(Offset = "0xD0")]
	[Token(Token = "0x4002483")]
	private GameTextDataAdvance textData;

	// Token: 0x04002484 RID: 9348
	[FieldOffset(Offset = "0xD8")]
	[Token(Token = "0x4002484")]
	private Transform activeInputKeyRoot;

	// Token: 0x04002485 RID: 9349
	[FieldOffset(Offset = "0xE0")]
	[Token(Token = "0x4002485")]
	private GameTipStyle activeGameTipStyle;
}
