using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using DG.Tweening;
using DG.Tweening.Core;
using DG.Tweening.Plugins.Options;
using UnityEngine;
using UnityEngine.UI;

// Token: 0x020002CB RID: 715
[Token(Token = "0x20002CB")]
public class GameUIManager : MonoBehaviour
{
	// Token: 0x1700011A RID: 282
	// (get) Token: 0x06001ADF RID: 6879 RVA: 0x00041A00 File Offset: 0x0003FC00
	[Token(Token = "0x1700011A")]
	public GameButtonThemePackage ButtonTheme
	{
		[Token(Token = "0x6001ADF")]
		[Address(RVA = "0x3352E0", Offset = "0x3342E0", VA = "0x1803352E0")]
		get
		{
			return this.buttonThemePack;
		}
	}

	// Token: 0x06001AE0 RID: 6880 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001AE0")]
	[Address(RVA = "0xA2C480", Offset = "0xA2B480", VA = "0x180A2C480")]
	public void Init(LocalizationData localizationData)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001AE1 RID: 6881 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001AE1")]
	[Address(RVA = "0xA2CDA0", Offset = "0xA2BDA0", VA = "0x180A2CDA0")]
	public void Localize(LocalizationData localizationData)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001AE2 RID: 6882 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001AE2")]
	[Address(RVA = "0x39C420", Offset = "0x39B420", VA = "0x18039C420")]
	public T GetCanvas<T>() where T : GameCanvasBase
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001AE3 RID: 6883 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001AE3")]
	[Address(RVA = "0xA2C350", Offset = "0xA2B350", VA = "0x180A2C350")]
	public UIMessageBox GetMessageBox(MessageBoxStyle style)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001AE4 RID: 6884 RVA: 0x00041A14 File Offset: 0x0003FC14
	[Token(Token = "0x6001AE4")]
	[Address(RVA = "0x452350", Offset = "0x451350", VA = "0x180452350")]
	public UIStackingManager GetUIStackingManager()
	{
		return this.stackingManager;
	}

	// Token: 0x06001AE5 RID: 6885 RVA: 0x00041A28 File Offset: 0x0003FC28
	[Token(Token = "0x6001AE5")]
	[Address(RVA = "0xA2C120", Offset = "0xA2B120", VA = "0x180A2C120")]
	public void FadeInBlackScreen(float duration, Action completionHandler)
	{
		TweenerCore<Color, Color, ColorOptions> tweenerCore = DOTweenModuleUI.DOFade(this.blackScreen, 1f, duration);
		TweenCallback tweenCallback = delegate
		{
			Action completionHandler2 = completionHandler;
			if (completionHandler2 != 0)
			{
				completionHandler2();
				return;
			}
		};
		TweenerCore<Color, Color, ColorOptions> tweenerCore2 = tweenerCore.OnComplete(tweenCallback).Play<TweenerCore<Color, Color, ColorOptions>>();
	}

	// Token: 0x06001AE6 RID: 6886 RVA: 0x00041A74 File Offset: 0x0003FC74
	[Token(Token = "0x6001AE6")]
	[Address(RVA = "0xA2C240", Offset = "0xA2B240", VA = "0x180A2C240")]
	public void FadeOutBlackScreen(float duration, Action completionHandler)
	{
		Image image = this.blackScreen;
		int num = 0;
		TweenerCore<Color, Color, ColorOptions> tweenerCore = DOTweenModuleUI.DOFade(image, (float)num, duration);
		TweenCallback tweenCallback = delegate
		{
			Action completionHandler2 = completionHandler;
			if (completionHandler2 != 0)
			{
				completionHandler2();
				return;
			}
		};
		TweenerCore<Color, Color, ColorOptions> tweenerCore2 = tweenerCore.OnComplete(tweenCallback).Play<TweenerCore<Color, Color, ColorOptions>>();
	}

	// Token: 0x06001AE7 RID: 6887 RVA: 0x00041AC4 File Offset: 0x0003FCC4
	[Token(Token = "0x6001AE7")]
	[Address(RVA = "0xA2C3B0", Offset = "0xA2B3B0", VA = "0x180A2C3B0")]
	public Sprite GetSaveLocationSprite(int index)
	{
		return this.uiPack.saveLocationSprites[index];
	}

	// Token: 0x06001AE8 RID: 6888 RVA: 0x00041AE8 File Offset: 0x0003FCE8
	[Token(Token = "0x6001AE8")]
	[Address(RVA = "0xA2C3F0", Offset = "0xA2B3F0", VA = "0x180A2C3F0")]
	public StageUIManager GetStageUIInstance()
	{
		return UnityEngine.Object.Instantiate<GameObject>(this.stageUIPrefab).GetComponent<StageUIManager>();
	}

	// Token: 0x06001AE9 RID: 6889 RVA: 0x00041B0C File Offset: 0x0003FD0C
	[Token(Token = "0x6001AE9")]
	[Address(RVA = "0x33F2F0", Offset = "0x33E2F0", VA = "0x18033F2F0")]
	public UISceneLoading GetSceneLoading()
	{
		return this.loading;
	}

	// Token: 0x06001AEA RID: 6890 RVA: 0x00041B20 File Offset: 0x0003FD20
	[Token(Token = "0x6001AEA")]
	[Address(RVA = "0xA2D060", Offset = "0xA2C060", VA = "0x180A2D060")]
	public void ShowSavingTip()
	{
		this.savingTip.Show();
	}

	// Token: 0x06001AEB RID: 6891 RVA: 0x00041B40 File Offset: 0x0003FD40
	[Token(Token = "0x6001AEB")]
	[Address(RVA = "0xA2D030", Offset = "0xA2C030", VA = "0x180A2D030")]
	private void OnApplicationFocus(bool isFocus)
	{
		if (isFocus)
		{
			this.customCursor.UpdateCursorIcon();
			return;
		}
	}

	// Token: 0x06001AEC RID: 6892 RVA: 0x00041B64 File Offset: 0x0003FD64
	[Token(Token = "0x6001AEC")]
	[Address(RVA = "0xA2D080", Offset = "0xA2C080", VA = "0x180A2D080")]
	public GameUIManager()
	{
		UIStackingManager uistackingManager = new UIStackingManager();
		this.stackingManager = uistackingManager;
		base..ctor();
	}

	// Token: 0x040024FF RID: 9471
	[FieldOffset(Offset = "0x18")]
	[Token(Token = "0x40024FF")]
	[SerializeField]
	private Transform uiCanvasRoot;

	// Token: 0x04002500 RID: 9472
	[FieldOffset(Offset = "0x20")]
	[Token(Token = "0x4002500")]
	[SerializeField]
	private Transform uiMsgBoxRoot;

	// Token: 0x04002501 RID: 9473
	[FieldOffset(Offset = "0x28")]
	[Token(Token = "0x4002501")]
	[SerializeField]
	private Image blackScreen;

	// Token: 0x04002502 RID: 9474
	[FieldOffset(Offset = "0x30")]
	[Token(Token = "0x4002502")]
	[SerializeField]
	private UISceneLoading loading;

	// Token: 0x04002503 RID: 9475
	[FieldOffset(Offset = "0x38")]
	[Token(Token = "0x4002503")]
	[SerializeField]
	private UISavingTip savingTip;

	// Token: 0x04002504 RID: 9476
	[FieldOffset(Offset = "0x40")]
	[Token(Token = "0x4002504")]
	[SerializeField]
	private GameUIPackage uiPack;

	// Token: 0x04002505 RID: 9477
	[FieldOffset(Offset = "0x48")]
	[Token(Token = "0x4002505")]
	[SerializeField]
	private GameButtonThemePackage buttonThemePack;

	// Token: 0x04002506 RID: 9478
	[FieldOffset(Offset = "0x50")]
	[Token(Token = "0x4002506")]
	[SerializeField]
	private GameCursor customCursor;

	// Token: 0x04002507 RID: 9479
	[FieldOffset(Offset = "0x58")]
	[Token(Token = "0x4002507")]
	[SerializeField]
	private GameObject stageUIPrefab;

	// Token: 0x04002508 RID: 9480
	[FieldOffset(Offset = "0x60")]
	[Token(Token = "0x4002508")]
	private Dictionary<Type, GameCanvasBase> canvasMap;

	// Token: 0x04002509 RID: 9481
	[FieldOffset(Offset = "0x68")]
	[Token(Token = "0x4002509")]
	private Dictionary<MessageBoxStyle, UIMessageBox> messageBoxMap;

	// Token: 0x0400250A RID: 9482
	[FieldOffset(Offset = "0x70")]
	[Token(Token = "0x400250A")]
	private UIStackingManager stackingManager;
}
