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

// Token: 0x020002E6 RID: 742
[Token(Token = "0x20002E6")]
public class UITestMode : MonoBehaviour
{
	// Token: 0x06001BCA RID: 7114 RVA: 0x00041D58 File Offset: 0x0003FF58
	[Token(Token = "0x6001BCA")]
	[Address(RVA = "0x18B3720", Offset = "0x18B2520", VA = "0x1818B3720")]
	public void Init()
	{
		UnityEngine.Object.Destroy(base.gameObject);
	}

	// Token: 0x06001BCB RID: 7115 RVA: 0x00041D70 File Offset: 0x0003FF70
	[Token(Token = "0x6001BCB")]
	[Address(RVA = "0x18B3690", Offset = "0x18B2490", VA = "0x1818B3690")]
	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: 0x06001BCC RID: 7116 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001BCC")]
	[Address(RVA = "0x18B3780", Offset = "0x18B2580", VA = "0x1818B3780")]
	private IEnumerator<float> Tick()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001BCD RID: 7117 RVA: 0x00041DB4 File Offset: 0x0003FFB4
	[Token(Token = "0x6001BCD")]
	[Address(RVA = "0x18B2FB0", Offset = "0x18B1DB0", VA = "0x1818B2FB0")]
	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: 0x06001BCE RID: 7118 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001BCE")]
	[Address(RVA = "0x18B3570", Offset = "0x18B2370", VA = "0x1818B3570")]
	private string GetPlayTimeText()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001BCF RID: 7119 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001BCF")]
	[Address(RVA = "0x18B2F50", Offset = "0x18B1D50", VA = "0x1818B2F50")]
	public void Dispose()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001BD0 RID: 7120 RVA: 0x00042004 File Offset: 0x00040204
	[Token(Token = "0x6001BD0")]
	[Address(RVA = "0x18B37F0", Offset = "0x18B25F0", VA = "0x1818B37F0")]
	public UITestMode()
	{
		StringBuilder stringBuilder = new StringBuilder();
		this.infoText = stringBuilder;
		base..ctor();
	}

	// Token: 0x04002567 RID: 9575
	[FieldOffset(Offset = "0x18")]
	[Token(Token = "0x4002567")]
	[SerializeField]
	private Text info;

	// Token: 0x04002568 RID: 9576
	[FieldOffset(Offset = "0x20")]
	[Token(Token = "0x4002568")]
	[SerializeField]
	private Text fps;

	// Token: 0x04002569 RID: 9577
	[FieldOffset(Offset = "0x28")]
	[Token(Token = "0x4002569")]
	private StringBuilder infoText;

	// Token: 0x0400256A RID: 9578
	[FieldOffset(Offset = "0x30")]
	[Token(Token = "0x400256A")]
	private bool enableTestInfo;

	// Token: 0x0400256B RID: 9579
	[FieldOffset(Offset = "0x34")]
	[Token(Token = "0x400256B")]
	private CoroutineHandle processor;
}
