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

// Token: 0x0200026D RID: 621
[Token(Token = "0x200026D")]
public class UIVideoPlayWindow : GameCanvasBase
{
	// Token: 0x06001815 RID: 6165 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001815")]
	[Address(RVA = "0x8BBD90", Offset = "0x8BAB90", VA = "0x1808BBD90", Slot = "11")]
	public override void Init()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001816 RID: 6166 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001816")]
	[Address(RVA = "0x8BC7C0", Offset = "0x8BB5C0", VA = "0x1808BC7C0")]
	public void SetVideoData(VideoData data)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001817 RID: 6167 RVA: 0x0003B0B8 File Offset: 0x000392B8
	[Token(Token = "0x6001817")]
	[Address(RVA = "0x8BB730", Offset = "0x8BA530", VA = "0x1808BB730", Slot = "12")]
	protected override void Appear(Action completeHandler)
	{
		Action action = delegate
		{
			Action completeHandler2 = completeHandler;
			if (completeHandler2 != 0)
			{
				completeHandler2();
			}
			IEnumerator<float> enumerator = this.ShowVideoPlayWindow();
			GameObject gameObject = this.gameObject;
			CoroutineHandle coroutineHandle = Timing.RunCoroutine(MECExtensionMethods2.CancelWith(enumerator, gameObject));
		};
		base.Appear(action);
	}

	// Token: 0x06001818 RID: 6168 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001818")]
	[Address(RVA = "0x8BCCB0", Offset = "0x8BBAB0", VA = "0x1808BCCB0", Slot = "21")]
	public override void Submit()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001819 RID: 6169 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001819")]
	[Address(RVA = "0x8BCE80", Offset = "0x8BBC80", VA = "0x1808BCE80", Slot = "19")]
	public override void SwitchLeftward()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600181A RID: 6170 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600181A")]
	[Address(RVA = "0x8BCF50", Offset = "0x8BBD50", VA = "0x1808BCF50", Slot = "20")]
	public override void SwitchRightward()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600181B RID: 6171 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600181B")]
	[Address(RVA = "0x8BB800", Offset = "0x8BA600", VA = "0x1808BB800", Slot = "23")]
	public override void Cancel()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600181C RID: 6172 RVA: 0x0003B0F4 File Offset: 0x000392F4
	[Token(Token = "0x600181C")]
	[Address(RVA = "0x8BC0D0", Offset = "0x8BAED0", VA = "0x1808BC0D0", Slot = "25")]
	public override void Localize(LocalizationData data)
	{
		GameFontPack fontPack = data.fontPack;
		Text text = this.title;
		Font light = fontPack.light;
		text.font = light;
		GameFontPack fontPack2 = data.fontPack;
		Text text2 = this.subtitle;
		Font regular = fontPack2.regular;
		text2.font = regular;
		Text[] array = this.buttonTexts;
		int num = 0;
		if (num < array.Length)
		{
			GameTextData systemText = data.systemText;
			Text text3 = array[num];
			string text4 = systemText.GetText(270);
			text3.text = text4;
			Text[] array2 = this.buttonTexts;
			GameFontPack fontPack3 = data.fontPack;
			Text text5 = array2[num];
			Font light2 = fontPack3.light;
			text5.font = light2;
			Text[] array3 = this.buttonTexts;
			num++;
		}
	}

	// Token: 0x0600181D RID: 6173 RVA: 0x0003B1C0 File Offset: 0x000393C0
	[Token(Token = "0x600181D")]
	[Address(RVA = "0x8BC240", Offset = "0x8BB040", VA = "0x1808BC240")]
	private void OnControllerChanged(ControllerDevice device)
	{
		int num = 0;
		if (device != ControllerDevice.Keyboard)
		{
			this.UpdateGamePadButtonIcon(num, "UISubmit");
			this.UpdateGamePadButtonIcon(1, "UICancel");
			this.UpdateGamePadButtonIcon(2, "UISwitchLeftward");
			this.UpdateGamePadButtonIcon(3, "UISwitchRightward");
			return;
		}
		this.UpdateKeyboardButtonIcon(num, "UISubmit");
		this.UpdateKeyboardButtonIcon(1, "UICancel");
		this.UpdateKeyboardButtonIcon(2, "UISwitchLeftward");
		this.UpdateKeyboardButtonIcon(3, "UISwitchRightward");
	}

	// Token: 0x0600181E RID: 6174 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600181E")]
	[Address(RVA = "0x8BD1D0", Offset = "0x8BBFD0", VA = "0x1808BD1D0")]
	private void UpdateKeyboardButtonIcon(int index, string keyName)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600181F RID: 6175 RVA: 0x0003B238 File Offset: 0x00039438
	[Token(Token = "0x600181F")]
	[Address(RVA = "0x8BD050", Offset = "0x8BBE50", VA = "0x1808BD050")]
	private void UpdateGamePadButtonIcon(int index, string keyName)
	{
		Image image = this.buttonIcons[index];
		Sprite gamepadSprite = Game.GetGamepadSprite(keyName);
		image.sprite = gamepadSprite;
		Text text = this.buttonLabels[index];
		int num = 0;
		if (!(text == num))
		{
			GameObject gameObject = this.buttonLabels[index].gameObject;
			int num2 = 0;
			gameObject.SetActive(num2 != 0);
		}
	}

	// Token: 0x06001820 RID: 6176 RVA: 0x0003B2A0 File Offset: 0x000394A0
	[Token(Token = "0x6001820")]
	[Address(RVA = "0x8BC350", Offset = "0x8BB150", VA = "0x1808BC350")]
	private void OnDestroy()
	{
		Game.RemoveDeviceChangedHandler(new Action(this.OnControllerChanged));
	}

	// Token: 0x06001821 RID: 6177 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001821")]
	[Address(RVA = "0x8BBB80", Offset = "0x8BA980", VA = "0x1808BBB80")]
	private string GetLocalizationSuffix()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001822 RID: 6178 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001822")]
	[Address(RVA = "0x8BBA90", Offset = "0x8BA890", VA = "0x1808BBA90")]
	private int GetLanguagePointer(GameLanguage language)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001823 RID: 6179 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001823")]
	[Address(RVA = "0x8BBFE0", Offset = "0x8BADE0", VA = "0x1808BBFE0")]
	private bool IsSupportedLanguage(GameLanguage language)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001824 RID: 6180 RVA: 0x0003B2C0 File Offset: 0x000394C0
	[Token(Token = "0x6001824")]
	[Address(RVA = "0x8BB950", Offset = "0x8BA750", VA = "0x1808BB950")]
	private void FindNextSubtitleIndex(double targetTime)
	{
		SubtitleData[] array = this.subtitles;
		int length = array.Length;
		int num = length - 1;
		if (array[num] < 0)
		{
			int num2 = this.currentSubtitleIndex;
			if (num2 < length)
			{
				num = num2;
				SubtitleData subtitleData = array[num];
				num2++;
				this.currentSubtitleIndex = num2;
			}
			return;
		}
		int num3 = length - 1;
		this.currentSubtitleIndex = num3;
	}

	// Token: 0x06001825 RID: 6181 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001825")]
	[Address(RVA = "0x8BBA00", Offset = "0x8BA800", VA = "0x1808BBA00")]
	private void FindPrevSubtitleIndex(double targetTime)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001826 RID: 6182 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001826")]
	[Address(RVA = "0x8BC400", Offset = "0x8BB200", VA = "0x1808BC400")]
	private void OpenPlayerUI()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001827 RID: 6183 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001827")]
	[Address(RVA = "0x8BCC40", Offset = "0x8BBA40", VA = "0x1808BCC40")]
	private IEnumerator<float> ShowVideoPlayWindow()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001828 RID: 6184 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001828")]
	[Address(RVA = "0x8BB6C0", Offset = "0x8BA4C0", VA = "0x1808BB6C0")]
	private IEnumerator<float> AppearPlayerUI()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001829 RID: 6185 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001829")]
	[Address(RVA = "0x8BD3E0", Offset = "0x8BC1E0", VA = "0x1808BD3E0")]
	private IEnumerator<float> UpdateSubtitle()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600182A RID: 6186 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600182A")]
	[Address(RVA = "0x8BCAD0", Offset = "0x8BB8D0", VA = "0x1808BCAD0")]
	private void ShowSubtitle(string text)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600182B RID: 6187 RVA: 0x0003B320 File Offset: 0x00039520
	[Token(Token = "0x600182B")]
	[Address(RVA = "0x8BBD40", Offset = "0x8BAB40", VA = "0x1808BBD40")]
	private void HideSubtitle()
	{
		CanvasGroup canvasGroup = this.subtitleRoot;
		float alpha = canvasGroup.alpha;
		int num = 0;
		if (canvasGroup != 0)
		{
			this.subtitleRoot.alpha = (float)num;
			return;
		}
	}

	// Token: 0x0600182C RID: 6188 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600182C")]
	[Address(RVA = "0x8BBCC0", Offset = "0x8BAAC0", VA = "0x1808BBCC0")]
	private void HidePlayerUI()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600182D RID: 6189 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600182D")]
	[Address(RVA = "0x8BC4F0", Offset = "0x8BB2F0", VA = "0x1808BC4F0")]
	private void SetDirty()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600182E RID: 6190 RVA: 0x0003B354 File Offset: 0x00039554
	[Token(Token = "0x600182E")]
	[Address(RVA = "0x769BF0", Offset = "0x7689F0", VA = "0x180769BF0")]
	public UIVideoPlayWindow()
	{
	}

	// Token: 0x0400224C RID: 8780
	[FieldOffset(Offset = "0x58")]
	[Token(Token = "0x400224C")]
	[SerializeField]
	private Text title;

	// Token: 0x0400224D RID: 8781
	[FieldOffset(Offset = "0x60")]
	[Token(Token = "0x400224D")]
	[SerializeField]
	private Text[] buttonTexts;

	// Token: 0x0400224E RID: 8782
	[FieldOffset(Offset = "0x68")]
	[Token(Token = "0x400224E")]
	[SerializeField]
	private Image[] buttonIcons;

	// Token: 0x0400224F RID: 8783
	[FieldOffset(Offset = "0x70")]
	[Token(Token = "0x400224F")]
	[SerializeField]
	private Text[] buttonLabels;

	// Token: 0x04002250 RID: 8784
	[FieldOffset(Offset = "0x78")]
	[Token(Token = "0x4002250")]
	[SerializeField]
	private CanvasGroup playerUI;

	// Token: 0x04002251 RID: 8785
	[FieldOffset(Offset = "0x80")]
	[Token(Token = "0x4002251")]
	[SerializeField]
	private Text timer;

	// Token: 0x04002252 RID: 8786
	[FieldOffset(Offset = "0x88")]
	[Token(Token = "0x4002252")]
	[SerializeField]
	private Image pauseIcon;

	// Token: 0x04002253 RID: 8787
	[FieldOffset(Offset = "0x90")]
	[Token(Token = "0x4002253")]
	[SerializeField]
	private RectTransform timeBar;

	// Token: 0x04002254 RID: 8788
	[FieldOffset(Offset = "0x98")]
	[Token(Token = "0x4002254")]
	[SerializeField]
	private CanvasGroup subtitleRoot;

	// Token: 0x04002255 RID: 8789
	[FieldOffset(Offset = "0xA0")]
	[Token(Token = "0x4002255")]
	[SerializeField]
	private Image subtitleBg;

	// Token: 0x04002256 RID: 8790
	[FieldOffset(Offset = "0xA8")]
	[Token(Token = "0x4002256")]
	[SerializeField]
	private Text subtitle;

	// Token: 0x04002257 RID: 8791
	[FieldOffset(Offset = "0xB0")]
	[Token(Token = "0x4002257")]
	[SerializeField]
	private UIVideoPlayer uiVideoPlayer;

	// Token: 0x04002258 RID: 8792
	[FieldOffset(Offset = "0xB8")]
	[Token(Token = "0x4002258")]
	private CoroutineHandle playerUIProcessor;

	// Token: 0x04002259 RID: 8793
	[FieldOffset(Offset = "0xBC")]
	[Token(Token = "0x4002259")]
	private CoroutineHandle subtitleProcessor;

	// Token: 0x0400225A RID: 8794
	[Token(Token = "0x400225A")]
	private const float MAX_SUBTITLE_WIDTH = 1800f;

	// Token: 0x0400225B RID: 8795
	[Token(Token = "0x400225B")]
	private const float SUBTITLE_HEIGHT_CONST = 10f;

	// Token: 0x0400225C RID: 8796
	[FieldOffset(Offset = "0xC0")]
	[Token(Token = "0x400225C")]
	private int currentSubtitleIndex;

	// Token: 0x0400225D RID: 8797
	[FieldOffset(Offset = "0xC8")]
	[Token(Token = "0x400225D")]
	private SubtitleData[] subtitles;

	// Token: 0x0400225E RID: 8798
	[FieldOffset(Offset = "0xD0")]
	[Token(Token = "0x400225E")]
	private int languagePointer;
}
