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

// Token: 0x020002B7 RID: 695
[Token(Token = "0x20002B7")]
public class UIVideoPlayWindow : GameCanvasBase
{
	// Token: 0x06001A35 RID: 6709 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A35")]
	[Address(RVA = "0xCC66F0", Offset = "0xCC56F0", VA = "0x180CC66F0", Slot = "11")]
	public override void Init()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A36 RID: 6710 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A36")]
	[Address(RVA = "0xCC7120", Offset = "0xCC6120", VA = "0x180CC7120")]
	public void SetVideoData(VideoData data)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A37 RID: 6711 RVA: 0x0004089C File Offset: 0x0003EA9C
	[Token(Token = "0x6001A37")]
	[Address(RVA = "0xCC6090", Offset = "0xCC5090", VA = "0x180CC6090", 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: 0x06001A38 RID: 6712 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A38")]
	[Address(RVA = "0xCC7610", Offset = "0xCC6610", VA = "0x180CC7610", Slot = "21")]
	public override void Submit()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A39 RID: 6713 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A39")]
	[Address(RVA = "0xCC77F0", Offset = "0xCC67F0", VA = "0x180CC77F0", Slot = "19")]
	public override void SwitchLeftward()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A3A RID: 6714 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A3A")]
	[Address(RVA = "0xCC78C0", Offset = "0xCC68C0", VA = "0x180CC78C0", Slot = "20")]
	public override void SwitchRightward()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A3B RID: 6715 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A3B")]
	[Address(RVA = "0xCC6160", Offset = "0xCC5160", VA = "0x180CC6160", Slot = "23")]
	public override void Cancel()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A3C RID: 6716 RVA: 0x000408D8 File Offset: 0x0003EAD8
	[Token(Token = "0x6001A3C")]
	[Address(RVA = "0xCC6A30", Offset = "0xCC5A30", VA = "0x180CC6A30", 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(335);
			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: 0x06001A3D RID: 6717 RVA: 0x000409A4 File Offset: 0x0003EBA4
	[Token(Token = "0x6001A3D")]
	[Address(RVA = "0xCC6BA0", Offset = "0xCC5BA0", VA = "0x180CC6BA0")]
	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: 0x06001A3E RID: 6718 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A3E")]
	[Address(RVA = "0xCC7B40", Offset = "0xCC6B40", VA = "0x180CC7B40")]
	private void UpdateKeyboardButtonIcon(int index, string keyName)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A3F RID: 6719 RVA: 0x00040A1C File Offset: 0x0003EC1C
	[Token(Token = "0x6001A3F")]
	[Address(RVA = "0xCC79C0", Offset = "0xCC69C0", VA = "0x180CC79C0")]
	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: 0x06001A40 RID: 6720 RVA: 0x00040A84 File Offset: 0x0003EC84
	[Token(Token = "0x6001A40")]
	[Address(RVA = "0xCC6CB0", Offset = "0xCC5CB0", VA = "0x180CC6CB0")]
	private void OnDestroy()
	{
		Game.RemoveDeviceChangedHandler(new Action(this.OnControllerChanged));
	}

	// Token: 0x06001A41 RID: 6721 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A41")]
	[Address(RVA = "0xCC64E0", Offset = "0xCC54E0", VA = "0x180CC64E0")]
	private string GetLocalizationSuffix()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A42 RID: 6722 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A42")]
	[Address(RVA = "0xCC63F0", Offset = "0xCC53F0", VA = "0x180CC63F0")]
	private int GetLanguagePointer(GameLanguage language)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A43 RID: 6723 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A43")]
	[Address(RVA = "0xCC6940", Offset = "0xCC5940", VA = "0x180CC6940")]
	private bool IsSupportedLanguage(GameLanguage language)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A44 RID: 6724 RVA: 0x00040AA4 File Offset: 0x0003ECA4
	[Token(Token = "0x6001A44")]
	[Address(RVA = "0xCC62B0", Offset = "0xCC52B0", VA = "0x180CC62B0")]
	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: 0x06001A45 RID: 6725 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A45")]
	[Address(RVA = "0xCC6360", Offset = "0xCC5360", VA = "0x180CC6360")]
	private void FindPrevSubtitleIndex(double targetTime)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A46 RID: 6726 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A46")]
	[Address(RVA = "0xCC6D60", Offset = "0xCC5D60", VA = "0x180CC6D60")]
	private void OpenPlayerUI()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A47 RID: 6727 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A47")]
	[Address(RVA = "0xCC75A0", Offset = "0xCC65A0", VA = "0x180CC75A0")]
	private IEnumerator<float> ShowVideoPlayWindow()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A48 RID: 6728 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A48")]
	[Address(RVA = "0xCC6020", Offset = "0xCC5020", VA = "0x180CC6020")]
	private IEnumerator<float> AppearPlayerUI()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A49 RID: 6729 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A49")]
	[Address(RVA = "0xCC7D50", Offset = "0xCC6D50", VA = "0x180CC7D50")]
	private IEnumerator<float> UpdateSubtitle()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A4A RID: 6730 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A4A")]
	[Address(RVA = "0xCC7430", Offset = "0xCC6430", VA = "0x180CC7430")]
	private void ShowSubtitle(string text)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A4B RID: 6731 RVA: 0x00040B04 File Offset: 0x0003ED04
	[Token(Token = "0x6001A4B")]
	[Address(RVA = "0xCC66A0", Offset = "0xCC56A0", VA = "0x180CC66A0")]
	private void HideSubtitle()
	{
		CanvasGroup canvasGroup = this.subtitleRoot;
		float alpha = canvasGroup.alpha;
		int num = 0;
		if (canvasGroup != 0)
		{
			this.subtitleRoot.alpha = (float)num;
			return;
		}
	}

	// Token: 0x06001A4C RID: 6732 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A4C")]
	[Address(RVA = "0xCC6620", Offset = "0xCC5620", VA = "0x180CC6620")]
	private void HidePlayerUI()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A4D RID: 6733 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001A4D")]
	[Address(RVA = "0xCC6E50", Offset = "0xCC5E50", VA = "0x180CC6E50")]
	private void SetDirty()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001A4E RID: 6734 RVA: 0x00040B38 File Offset: 0x0003ED38
	[Token(Token = "0x6001A4E")]
	[Address(RVA = "0x94D9C0", Offset = "0x94C9C0", VA = "0x18094D9C0")]
	public UIVideoPlayWindow()
	{
	}

	// Token: 0x0400249C RID: 9372
	[FieldOffset(Offset = "0x58")]
	[Token(Token = "0x400249C")]
	[SerializeField]
	private Text title;

	// Token: 0x0400249D RID: 9373
	[FieldOffset(Offset = "0x60")]
	[Token(Token = "0x400249D")]
	[SerializeField]
	private Text[] buttonTexts;

	// Token: 0x0400249E RID: 9374
	[FieldOffset(Offset = "0x68")]
	[Token(Token = "0x400249E")]
	[SerializeField]
	private Image[] buttonIcons;

	// Token: 0x0400249F RID: 9375
	[FieldOffset(Offset = "0x70")]
	[Token(Token = "0x400249F")]
	[SerializeField]
	private Text[] buttonLabels;

	// Token: 0x040024A0 RID: 9376
	[FieldOffset(Offset = "0x78")]
	[Token(Token = "0x40024A0")]
	[SerializeField]
	private CanvasGroup playerUI;

	// Token: 0x040024A1 RID: 9377
	[FieldOffset(Offset = "0x80")]
	[Token(Token = "0x40024A1")]
	[SerializeField]
	private Text timer;

	// Token: 0x040024A2 RID: 9378
	[FieldOffset(Offset = "0x88")]
	[Token(Token = "0x40024A2")]
	[SerializeField]
	private Image pauseIcon;

	// Token: 0x040024A3 RID: 9379
	[FieldOffset(Offset = "0x90")]
	[Token(Token = "0x40024A3")]
	[SerializeField]
	private RectTransform timeBar;

	// Token: 0x040024A4 RID: 9380
	[FieldOffset(Offset = "0x98")]
	[Token(Token = "0x40024A4")]
	[SerializeField]
	private CanvasGroup subtitleRoot;

	// Token: 0x040024A5 RID: 9381
	[FieldOffset(Offset = "0xA0")]
	[Token(Token = "0x40024A5")]
	[SerializeField]
	private Image subtitleBg;

	// Token: 0x040024A6 RID: 9382
	[FieldOffset(Offset = "0xA8")]
	[Token(Token = "0x40024A6")]
	[SerializeField]
	private Text subtitle;

	// Token: 0x040024A7 RID: 9383
	[FieldOffset(Offset = "0xB0")]
	[Token(Token = "0x40024A7")]
	[SerializeField]
	private UIVideoPlayer uiVideoPlayer;

	// Token: 0x040024A8 RID: 9384
	[FieldOffset(Offset = "0xB8")]
	[Token(Token = "0x40024A8")]
	private CoroutineHandle playerUIProcessor;

	// Token: 0x040024A9 RID: 9385
	[FieldOffset(Offset = "0xBC")]
	[Token(Token = "0x40024A9")]
	private CoroutineHandle subtitleProcessor;

	// Token: 0x040024AA RID: 9386
	[Token(Token = "0x40024AA")]
	private const float MAX_SUBTITLE_WIDTH = 1800f;

	// Token: 0x040024AB RID: 9387
	[Token(Token = "0x40024AB")]
	private const float SUBTITLE_HEIGHT_CONST = 10f;

	// Token: 0x040024AC RID: 9388
	[FieldOffset(Offset = "0xC0")]
	[Token(Token = "0x40024AC")]
	private int currentSubtitleIndex;

	// Token: 0x040024AD RID: 9389
	[FieldOffset(Offset = "0xC8")]
	[Token(Token = "0x40024AD")]
	private SubtitleData[] subtitles;

	// Token: 0x040024AE RID: 9390
	[FieldOffset(Offset = "0xD0")]
	[Token(Token = "0x40024AE")]
	private int languagePointer;
}
