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: 0x02000281 RID: 641
[Token(Token = "0x2000281")]
public class GameUIManager : MonoBehaviour
{
	// Token: 0x1700010A RID: 266
	// (get) Token: 0x060018BC RID: 6332 RVA: 0x0003C1A8 File Offset: 0x0003A3A8
	[Token(Token = "0x1700010A")]
	public GameButtonThemePackage ButtonTheme
	{
		[Token(Token = "0x60018BC")]
		[Address(RVA = "0x3147B0", Offset = "0x3135B0", VA = "0x1803147B0")]
		get
		{
			return this.buttonThemePack;
		}
	}

	// Token: 0x060018BD RID: 6333 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60018BD")]
	[Address(RVA = "0x54B290", Offset = "0x54A090", VA = "0x18054B290")]
	public void Init(LocalizationData localizationData)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060018BE RID: 6334 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60018BE")]
	[Address(RVA = "0x54BBC0", Offset = "0x54A9C0", VA = "0x18054BBC0")]
	public void Localize(LocalizationData localizationData)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060018BF RID: 6335 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60018BF")]
	[Address(RVA = "0x2D1C50", Offset = "0x2D0A50", VA = "0x1802D1C50")]
	public T GetCanvas<T>() where T : GameCanvasBase
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060018C0 RID: 6336 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x60018C0")]
	[Address(RVA = "0x54B160", Offset = "0x549F60", VA = "0x18054B160")]
	public UIMessageBox GetMessageBox(MessageBoxStyle style)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x060018C1 RID: 6337 RVA: 0x0003C1BC File Offset: 0x0003A3BC
	[Token(Token = "0x60018C1")]
	[Address(RVA = "0x3EFFD0", Offset = "0x3EEDD0", VA = "0x1803EFFD0")]
	public UIStackingManager GetUIStackingManager()
	{
		return this.stackingManager;
	}

	// Token: 0x060018C2 RID: 6338 RVA: 0x0003C1D0 File Offset: 0x0003A3D0
	[Token(Token = "0x60018C2")]
	[Address(RVA = "0x54AF30", Offset = "0x549D30", VA = "0x18054AF30")]
	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: 0x060018C3 RID: 6339 RVA: 0x0003C21C File Offset: 0x0003A41C
	[Token(Token = "0x60018C3")]
	[Address(RVA = "0x54B050", Offset = "0x549E50", VA = "0x18054B050")]
	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: 0x060018C4 RID: 6340 RVA: 0x0003C26C File Offset: 0x0003A46C
	[Token(Token = "0x60018C4")]
	[Address(RVA = "0x54B1C0", Offset = "0x549FC0", VA = "0x18054B1C0")]
	public Sprite GetSaveLocationSprite(int index)
	{
		return this.uiPack.saveLocationSprites[index];
	}

	// Token: 0x060018C5 RID: 6341 RVA: 0x0003C290 File Offset: 0x0003A490
	[Token(Token = "0x60018C5")]
	[Address(RVA = "0x54B200", Offset = "0x54A000", VA = "0x18054B200")]
	public StageUIManager GetStageUIInstance()
	{
		return UnityEngine.Object.Instantiate<GameObject>(this.stageUIPrefab).GetComponent<StageUIManager>();
	}

	// Token: 0x060018C6 RID: 6342 RVA: 0x0003C2B4 File Offset: 0x0003A4B4
	[Token(Token = "0x60018C6")]
	[Address(RVA = "0x31E490", Offset = "0x31D290", VA = "0x18031E490")]
	public UISceneLoading GetSceneLoading()
	{
		return this.loading;
	}

	// Token: 0x060018C7 RID: 6343 RVA: 0x0003C2C8 File Offset: 0x0003A4C8
	[Token(Token = "0x60018C7")]
	[Address(RVA = "0x54BEA0", Offset = "0x54ACA0", VA = "0x18054BEA0")]
	public void ShowSavingTip()
	{
		this.savingTip.Show();
	}

	// Token: 0x060018C8 RID: 6344 RVA: 0x0003C2E8 File Offset: 0x0003A4E8
	[Token(Token = "0x60018C8")]
	[Address(RVA = "0x54BE50", Offset = "0x54AC50", VA = "0x18054BE50")]
	private void OnApplicationFocus(bool isFocus)
	{
		if (isFocus)
		{
			Texture2D cursorIcon = this.customCursor.cursorIcon;
			Vector2 zero = Vector2.zero;
			int num = 0;
			Cursor.SetCursor(cursorIcon, zero, (CursorMode)num);
			return;
		}
	}

	// Token: 0x060018C9 RID: 6345 RVA: 0x0003C320 File Offset: 0x0003A520
	[Token(Token = "0x60018C9")]
	[Address(RVA = "0x54BEC0", Offset = "0x54ACC0", VA = "0x18054BEC0")]
	public GameUIManager()
	{
		UIStackingManager uistackingManager = new UIStackingManager();
		this.stackingManager = uistackingManager;
		base..ctor();
	}

	// Token: 0x040022AE RID: 8878
	[FieldOffset(Offset = "0x18")]
	[Token(Token = "0x40022AE")]
	[SerializeField]
	private Transform uiCanvasRoot;

	// Token: 0x040022AF RID: 8879
	[FieldOffset(Offset = "0x20")]
	[Token(Token = "0x40022AF")]
	[SerializeField]
	private Transform uiMsgBoxRoot;

	// Token: 0x040022B0 RID: 8880
	[FieldOffset(Offset = "0x28")]
	[Token(Token = "0x40022B0")]
	[SerializeField]
	private Image blackScreen;

	// Token: 0x040022B1 RID: 8881
	[FieldOffset(Offset = "0x30")]
	[Token(Token = "0x40022B1")]
	[SerializeField]
	private UISceneLoading loading;

	// Token: 0x040022B2 RID: 8882
	[FieldOffset(Offset = "0x38")]
	[Token(Token = "0x40022B2")]
	[SerializeField]
	private UISavingTip savingTip;

	// Token: 0x040022B3 RID: 8883
	[FieldOffset(Offset = "0x40")]
	[Token(Token = "0x40022B3")]
	[SerializeField]
	private GameUIPackage uiPack;

	// Token: 0x040022B4 RID: 8884
	[FieldOffset(Offset = "0x48")]
	[Token(Token = "0x40022B4")]
	[SerializeField]
	private GameButtonThemePackage buttonThemePack;

	// Token: 0x040022B5 RID: 8885
	[FieldOffset(Offset = "0x50")]
	[Token(Token = "0x40022B5")]
	[SerializeField]
	private GameCursor customCursor;

	// Token: 0x040022B6 RID: 8886
	[FieldOffset(Offset = "0x58")]
	[Token(Token = "0x40022B6")]
	[SerializeField]
	private GameObject stageUIPrefab;

	// Token: 0x040022B7 RID: 8887
	[FieldOffset(Offset = "0x60")]
	[Token(Token = "0x40022B7")]
	private Dictionary<Type, GameCanvasBase> canvasMap;

	// Token: 0x040022B8 RID: 8888
	[FieldOffset(Offset = "0x68")]
	[Token(Token = "0x40022B8")]
	private Dictionary<MessageBoxStyle, UIMessageBox> messageBoxMap;

	// Token: 0x040022B9 RID: 8889
	[FieldOffset(Offset = "0x70")]
	[Token(Token = "0x40022B9")]
	private UIStackingManager stackingManager;
}
