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

// Token: 0x0200033A RID: 826
[Token(Token = "0x200033A")]
public class UITestMode : MonoBehaviour
{
	// Token: 0x06001E55 RID: 7765 RVA: 0x00047F68 File Offset: 0x00046168
	[Token(Token = "0x6001E55")]
	[Address(RVA = "0xCB4C40", Offset = "0xCB3C40", VA = "0x180CB4C40")]
	public void Init()
	{
		UnityEngine.Object.Destroy(base.gameObject);
	}

	// Token: 0x06001E56 RID: 7766 RVA: 0x00047F80 File Offset: 0x00046180
	[Token(Token = "0x6001E56")]
	[Address(RVA = "0xCB4BB0", Offset = "0xCB3BB0", VA = "0x180CB4BB0")]
	private void InitTestMembers()
	{
		GameObject gameObject = base.gameObject;
		int num = 0;
		gameObject.SetActive(num != 0);
		int num2;
		UITestMode.<Tick>d__7 <Tick>d__ = new UITestMode.<Tick>d__7(num2);
		num2 = 0;
		<Tick>d__.<>4__this = this;
		CoroutineHandle coroutineHandle = MECExtensionMethods1.RunCoroutine(<Tick>d__);
		this.processor = coroutineHandle;
	}

	// Token: 0x06001E57 RID: 7767 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001E57")]
	[Address(RVA = "0xCB4CA0", Offset = "0xCB3CA0", VA = "0x180CB4CA0")]
	private IEnumerator<float> Tick()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001E58 RID: 7768 RVA: 0x00047FC4 File Offset: 0x000461C4
	[Token(Token = "0x6001E58")]
	[Address(RVA = "0xCB44D0", Offset = "0xCB34D0", VA = "0x180CB44D0")]
	private string GetInfoText()
	{
		StringBuilder stringBuilder = this.infoText.Clear();
		StringBuilder stringBuilder2 = this.infoText;
		GameCollection collection = Game.Collection;
		AchievementsSystem achievementsSystem = Game.GetAchievementsSystem();
		int num;
		float num2;
		string text = string.Format("秒詠唱: {0} ({1:F2} s)", num, num2);
		StringBuilder stringBuilder3 = stringBuilder2.AppendLine(text);
		StringBuilder stringBuilder4 = this.infoText;
		int meleeSpellcasting = Game.Collection.meleeSpellcasting;
		string text2 = string.Format("近戰詠唱: {0}", meleeSpellcasting);
		StringBuilder stringBuilder5 = stringBuilder4.AppendLine(text2);
		StringBuilder stringBuilder6 = this.infoText;
		int manaAbsorbed = Game.Collection.manaAbsorbed;
		string text3 = string.Format("吸魔: {0}", manaAbsorbed);
		StringBuilder stringBuilder7 = stringBuilder6.AppendLine(text3);
		StringBuilder stringBuilder8 = this.infoText;
		int treasureChestCollection = Game.GameSave.props.treasureChestCollection;
		string text4 = string.Format("寶箱開啟: {0} / 45", treasureChestCollection);
		StringBuilder stringBuilder9 = stringBuilder8.AppendLine(text4);
		StringBuilder stringBuilder10 = this.infoText;
		int level02InactiveLightAmount = Game.GetAchievementsSystem().GetLevel02InactiveLightAmount();
		int num3;
		string text5 = string.Format("燈光剩餘: {0}", num3);
		StringBuilder stringBuilder11 = stringBuilder10.AppendLine(text5);
		StringBuilder stringBuilder12 = this.infoText;
		int level04ActiveFogAmount = Game.GetAchievementsSystem().GetLevel04ActiveFogAmount();
		int num4;
		string text6 = string.Format("黑霧剩餘: {0}", num4);
		StringBuilder stringBuilder13 = stringBuilder12.AppendLine(text6);
		StringBuilder stringBuilder14 = this.infoText;
		int airKillCounter = Game.GetAchievementsSystem().airKillCounter;
		string text7 = string.Format("空中殺敵: {0}", airKillCounter);
		StringBuilder stringBuilder15 = stringBuilder14.AppendLine(text7);
		StringBuilder stringBuilder16 = this.infoText;
		int enemiesDefeated = Game.Collection.enemiesDefeated;
		string text8 = string.Format("殺敵總數: {0}", enemiesDefeated);
		StringBuilder stringBuilder17 = stringBuilder16.AppendLine(text8);
		StringBuilder stringBuilder18 = this.infoText;
		int soulAcquired = Game.Collection.soulAcquired;
		string text9 = string.Format("累計魂素: {0}", soulAcquired);
		StringBuilder stringBuilder19 = stringBuilder18.AppendLine(text9);
		StringBuilder stringBuilder20 = this.infoText;
		ulong num5 = Game.GetPlayedSeconds();
		num5 -= text9;
		num5 += text9;
		long num6 = (long)(num5 * (ulong)3600L);
		num5 -= (ulong)num6;
		long num7 = text9 * (ulong)60L;
		num5 -= (ulong)num7;
		ulong num8;
		ulong num9;
		string text10 = string.Format("{0:00}:{1:00}:{2:00}", num8, num9, num9);
		string text11 = "遊戲時間: " + text10;
		StringBuilder stringBuilder21 = stringBuilder20.AppendLine(text11);
		return this.infoText.ToString();
	}

	// Token: 0x06001E59 RID: 7769 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001E59")]
	[Address(RVA = "0xCB4A90", Offset = "0xCB3A90", VA = "0x180CB4A90")]
	private string GetPlayTimeText()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001E5A RID: 7770 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001E5A")]
	[Address(RVA = "0xCB4470", Offset = "0xCB3470", VA = "0x180CB4470")]
	public void Dispose()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001E5B RID: 7771 RVA: 0x00048214 File Offset: 0x00046414
	[Token(Token = "0x6001E5B")]
	[Address(RVA = "0xCB4D10", Offset = "0xCB3D10", VA = "0x180CB4D10")]
	public UITestMode()
	{
		StringBuilder stringBuilder = new StringBuilder();
		this.infoText = stringBuilder;
		base..ctor();
	}

	// Token: 0x04002818 RID: 10264
	[FieldOffset(Offset = "0x18")]
	[Token(Token = "0x4002818")]
	[SerializeField]
	private Text info;

	// Token: 0x04002819 RID: 10265
	[FieldOffset(Offset = "0x20")]
	[Token(Token = "0x4002819")]
	[SerializeField]
	private Text fps;

	// Token: 0x0400281A RID: 10266
	[FieldOffset(Offset = "0x28")]
	[Token(Token = "0x400281A")]
	private StringBuilder infoText;

	// Token: 0x0400281B RID: 10267
	[FieldOffset(Offset = "0x30")]
	[Token(Token = "0x400281B")]
	private bool enableTestInfo;

	// Token: 0x0400281C RID: 10268
	[FieldOffset(Offset = "0x34")]
	[Token(Token = "0x400281C")]
	private CoroutineHandle processor;
}
