using System; using System.Collections; using System.Collections.Generic; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using CodeStage.AntiCheat.ObscuredTypes; using Cpp2IlInjected; using RecNet; using RecRoom; using RecRoom.Async; using RecRoom.Core; using RecRoom.Core.UI; using RecRoom.DataStructures.ResourceHandles; using RecRoom.Systems; using RecRoom.UI; using UnityEngine; // Token: 0x0200049C RID: 1180 [Token(Token = "0x200049C")] [StructLayout(3)] public class TutorialManager : SingletonMonoBehaviour { // Token: 0x17000620 RID: 1568 // (get) Token: 0x0600229F RID: 8863 RVA: 0x000900D0 File Offset: 0x0008E2D0 [Token(Token = "0x17000620")] public bool FMHMDIFGABF { [Token(Token = "0x600229F")] [Address(RVA = "0x189A3C0", Offset = "0x1898DC0", VA = "0x18189A3C0")] get { return this.voAudioSource.isPlaying || this.voAudioSource3D.isPlaying; } } // Token: 0x060022A0 RID: 8864 RVA: 0x00090100 File Offset: 0x0008E300 [Token(Token = "0x60022A0")] [Address(RVA = "0x1898E80", Offset = "0x1897880", VA = "0x181898E80")] private static string PKEDNFLMEFP() { ObscuredInt k__BackingField = PEGGCEDHBOF.DOOHKCANFLO.k__BackingField; string text; return text; } // Token: 0x17000621 RID: 1569 // (get) Token: 0x060022A1 RID: 8865 RVA: 0x00090124 File Offset: 0x0008E324 // (set) Token: 0x060022A2 RID: 8866 RVA: 0x00090148 File Offset: 0x0008E348 [Token(Token = "0x17000621")] public bool LJMAOMDLHKJ { [Token(Token = "0x60022A1")] [Address(RVA = "0x189A310", Offset = "0x1898D10", VA = "0x18189A310")] get { string text = TutorialManager.PKEDNFLMEFP(); int num = 0; return PlayerPrefs.GetInt(text, num) == 0; } [Token(Token = "0x60022A2")] [Address(RVA = "0x189A660", Offset = "0x1899060", VA = "0x18189A660")] set { PlayerPrefs.SetInt(TutorialManager.PKEDNFLMEFP(), value ? 1 : 0); PlayerPrefs.Save(); } } // Token: 0x17000622 RID: 1570 // (get) Token: 0x060022A3 RID: 8867 RVA: 0x0009016C File Offset: 0x0008E36C // (set) Token: 0x060022A4 RID: 8868 RVA: 0x00090180 File Offset: 0x0008E380 [Token(Token = "0x17000622")] public static bool? HGKAJBPOANK { [Token(Token = "0x60022A3")] [Address(RVA = "0x189A2B0", Offset = "0x1898CB0", VA = "0x18189A2B0")] get; [Token(Token = "0x60022A4")] [Address(RVA = "0x1899060", Offset = "0x1897A60", VA = "0x181899060")] private set; } // Token: 0x17000623 RID: 1571 // (get) Token: 0x060022A5 RID: 8869 RVA: 0x00090194 File Offset: 0x0008E394 // (set) Token: 0x060022A6 RID: 8870 RVA: 0x000901B8 File Offset: 0x0008E3B8 [Token(Token = "0x17000623")] public static int MACONJHDIIP { [Token(Token = "0x60022A5")] [Address(RVA = "0x189A530", Offset = "0x1898F30", VA = "0x18189A530")] get { if (NOBCCPHLPNJ.MMICKFMMLJO) { return NOBCCPHLPNJ.JGGKHJCBGLF("PICKED_UP_STICKY_TOOL_BEFORE", 6); } return 0; } [Token(Token = "0x60022A6")] [Address(RVA = "0x189A7E0", Offset = "0x18991E0", VA = "0x18189A7E0")] set { if (NOBCCPHLPNJ.MMICKFMMLJO) { NOBCCPHLPNJ.CLOFMHGBPPA("PICKED_UP_STICKY_TOOL_BEFORE", value); NOBCCPHLPNJ.CHLAOLCBEND(); return; } } } // Token: 0x17000624 RID: 1572 // (get) Token: 0x060022A7 RID: 8871 RVA: 0x000901E4 File Offset: 0x0008E3E4 [Token(Token = "0x17000624")] private HelpPopup ONIMLKBKPPM { [Token(Token = "0x60022A7")] [Address(RVA = "0x18975F0", Offset = "0x1895FF0", VA = "0x1818975F0")] get { HelpPopup hpmmcmliiml = this.HPMMCMLIIML; int num = 0; if (hpmmcmliiml == num) { HelpPopup helpPopup = global::UnityEngine.Object.Instantiate(this.helpPopupPrefab); this.HPMMCMLIIML = helpPopup; } return this.HPMMCMLIIML; } } // Token: 0x060022A8 RID: 8872 RVA: 0x00090220 File Offset: 0x0008E420 [Token(Token = "0x60022A8")] [Address(RVA = "0x18986A0", Offset = "0x18970A0", VA = "0x1818986A0")] public bool IsLegacyTutorialComplete() { if (NOBCCPHLPNJ.MMICKFMMLJO) { int num = 0; return NOBCCPHLPNJ.JGGKHJCBGLF("Recroom.OOBE", num) == 100; } } // Token: 0x060022A9 RID: 8873 RVA: 0x0009024C File Offset: 0x0008E44C [Token(Token = "0x60022A9")] [Address(RVA = "0x1899BA0", Offset = "0x18985A0", VA = "0x181899BA0")] public void SetTutorialComplete(TutorialManager.PKHLMAEGIKG LOMJKMDDCKE) { int num = 0; long num2 = this.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num); int num3 = 0; if (this.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num3) != num2) { this.KNMODGNNOMO["TUTORIAL_COMPLETE_MASK"] = num2; NOBCCPHLPNJ.NKDIHGLEMML("TUTORIAL_COMPLETE_MASK", num2); NOBCCPHLPNJ.CHLAOLCBEND(); } } // Token: 0x060022AA RID: 8874 RVA: 0x000902A4 File Offset: 0x0008E4A4 [Token(Token = "0x60022AA")] [Address(RVA = "0x1898730", Offset = "0x1897130", VA = "0x181898730")] public bool IsTutorialComplete(TutorialManager.PKHLMAEGIKG LOMJKMDDCKE) { /* An exception occurred when decompiling this method (060022AA) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean TutorialManager::IsTutorialComplete(TutorialManager/PKHLMAEGIKG) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:int32(var_0_01, ldc.i4:int32(0)) stloc:int64(var_1_0E, call:int64(TutorialManager::AOGFGKLCCLI, ldloc:TutorialManager(this), ldstr:string("TUTORIAL_COMPLETE_MASK"), ldloc:int32[exp:int64](var_0_01))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } // Token: 0x060022AB RID: 8875 RVA: 0x000902C0 File Offset: 0x0008E4C0 [Token(Token = "0x60022AB")] [Address(RVA = "0x1898790", Offset = "0x1897190", VA = "0x181898790")] public void LogGGFAnalyticEvent(string IKPPEONHGFO) { TutorialManager.COPEILOMEMB copeilomemb = new TutorialManager.COPEILOMEMB(); copeilomemb.eventName = IKPPEONHGFO; copeilomemb.<>4__this = this; bool fakeValue = PEGGCEDHBOF.DOOHKCANFLO.k__BackingField.fakeValue; int num = 0; copeilomemb.isJuniorAccount = num; IPromise promise = MHOKOMMOGKM.PPKFJEINCCN(); Action action = delegate(bool hasSetPassword) { string eventName = copeilomemb.eventName; string text = "GGF_" + eventName; bool flag = copeilomemb.<>4__this.IsTutorialComplete(TutorialManager.PKHLMAEGIKG.NUX_MIRROR); bool flag2 = copeilomemb.<>4__this.IsTutorialComplete(TutorialManager.PKHLMAEGIKG.NUX_WATCH); float time = Time.time; TutorialManager <>4__this = copeilomemb.<>4__this; bool fakeValue2 = PEGGCEDHBOF.DOOHKCANFLO.k__BackingField.fakeValue; bool flag3; if (flag3) { } int num2 = 0; CFLMJLFBOKH.MENPFMBALJP(text, flag, flag2, time, hasSetPassword, num2); }; if (num < copeilomemb) { num += num; if (num == copeilomemb) { promise += promise; throw new NullReferenceException(); } num++; } } // Token: 0x060022AC RID: 8876 RVA: 0x00090330 File Offset: 0x0008E530 [Token(Token = "0x60022AC")] [Address(RVA = "0x1897540", Offset = "0x1895F40", VA = "0x181897540")] private void FCEKNBFLNFI(string CIGCAIGPMBE, long ONGBFDACHHG) { int num = 0; if (this.AOGFGKLCCLI(CIGCAIGPMBE, (long)num) != ONGBFDACHHG) { this.KNMODGNNOMO[CIGCAIGPMBE] = ONGBFDACHHG; NOBCCPHLPNJ.NKDIHGLEMML(CIGCAIGPMBE, ONGBFDACHHG); NOBCCPHLPNJ.CHLAOLCBEND(); } } // Token: 0x060022AD RID: 8877 RVA: 0x0009036C File Offset: 0x0008E56C [Token(Token = "0x60022AD")] [Address(RVA = "0x1896FE0", Offset = "0x18959E0", VA = "0x181896FE0")] private long AOGFGKLCCLI(string CIGCAIGPMBE, long OANDOPIEEPO = 0L) { Dictionary knmodgnnomo = this.KNMODGNNOMO; bool flag; if (!flag) { long num = NOBCCPHLPNJ.HEEDGCGMKHF(CIGCAIGPMBE, OANDOPIEEPO); this.KNMODGNNOMO.Add(CIGCAIGPMBE, num); } throw new NullReferenceException(); } // Token: 0x17000625 RID: 1573 // (get) Token: 0x060022AE RID: 8878 RVA: 0x000903A0 File Offset: 0x0008E5A0 [Token(Token = "0x17000625")] public bool KHLAMLKOBFD { [Token(Token = "0x60022AE")] [Address(RVA = "0x189A370", Offset = "0x1898D70", VA = "0x18189A370")] get { /* An exception occurred when decompiling this method (060022AE) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean TutorialManager::get_HasCompletedTutorial() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:int32(var_0_01, ldc.i4:int32(0)) stloc:int64(var_1_0E, call:int64(TutorialManager::AOGFGKLCCLI, ldloc:TutorialManager(this), ldstr:string("TUTORIAL_COMPLETE_MASK"), ldloc:int32[exp:int64](var_0_01))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } } // Token: 0x17000626 RID: 1574 // (get) Token: 0x060022AF RID: 8879 RVA: 0x000903BC File Offset: 0x0008E5BC // (set) Token: 0x060022B0 RID: 8880 RVA: 0x000903FC File Offset: 0x0008E5FC [Token(Token = "0x17000626")] public TutorialManager.HLGLKDBJNBD EONGHPACNOP { [Token(Token = "0x60022AF")] [Address(RVA = "0x189A460", Offset = "0x1898E60", VA = "0x18189A460")] get { int num = 0; long num2 = this.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num); if (NOBCCPHLPNJ.MMICKFMMLJO) { int num3 = 0; int num4 = NOBCCPHLPNJ.JGGKHJCBGLF("Recroom.OOBE", num3); } return this.JGLKBGBOLEJ; } [Token(Token = "0x60022B0")] [Address(RVA = "0x189A6D0", Offset = "0x18990D0", VA = "0x18189A6D0")] set { int num = 0; long num2 = this.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num); this.JGLKBGBOLEJ = value; } } // Token: 0x17000627 RID: 1575 // (get) Token: 0x060022B1 RID: 8881 RVA: 0x0009044C File Offset: 0x0008E64C [Token(Token = "0x17000627")] public bool IEJFJPJCOCE { [Token(Token = "0x60022B1")] [Address(RVA = "0x189A5C0", Offset = "0x1898FC0", VA = "0x18189A5C0")] get { return !SingletonMonoBehaviour.IsInitialized || SingletonMonoBehaviour.Instance.ACGDGBHFJFB; } } // Token: 0x060022B2 RID: 8882 RVA: 0x00090474 File Offset: 0x0008E674 [Token(Token = "0x60022B2")] [Address(RVA = "0x1898450", Offset = "0x1896E50", VA = "0x181898450")] public void Initialize() { if (TutorialManager.MACONJHDIIP < 5) { ActionEvent playerCreatedEvent = Player.PlayerCreatedEvent; Action action = new Action(this.INLPNKIEHME); Player.PlayerCreatedEvent = playerCreatedEvent + action; } SessionManager instance = SingletonMonoBehaviour.Instance; int num = 0; if (!(instance != num)) { Debug.LogError("SessionManager is null"); } SessionManager instance2 = SingletonMonoBehaviour.Instance; Action action2 = new Action(this.PLCGPPEICMI); instance2.PLCGPPEICMI += action2; float time = Time.time; this.NCJIALKBINK = time; List> list = new List(); this.BDBCGIJNPME = list; } // Token: 0x060022B3 RID: 8883 RVA: 0x00090510 File Offset: 0x0008E710 [Token(Token = "0x60022B3")] [Address(RVA = "0x1898B20", Offset = "0x1897520", VA = "0x181898B20", Slot = "5")] protected override void OnDestroy() { base.OnDestroy(); IResourceHandle felghamabdl = this.FELGHAMABDL; this.FELGHAMABDL = (ulong)0L; if (felghamabdl != 0) { } ActionEvent staticLockedToolPickedUpEvent = Tool.StaticLockedToolPickedUpEvent; Action action = new Action(this.GJMFCAEFBJO); Tool.StaticLockedToolPickedUpEvent = staticLockedToolPickedUpEvent - action; ActionEvent playerCreatedEvent = Player.PlayerCreatedEvent; Action action2 = new Action(this.INLPNKIEHME); Player.PlayerCreatedEvent = playerCreatedEvent - action2; SessionManager instance = SingletonMonoBehaviour.Instance; int num = 0; if (instance != num) { SessionManager instance2 = SingletonMonoBehaviour.Instance; Action action3 = new Action(this.PLCGPPEICMI); instance2.PLCGPPEICMI -= action3; } } // Token: 0x060022B4 RID: 8884 RVA: 0x000905B4 File Offset: 0x0008E7B4 [Token(Token = "0x60022B4")] [Address(RVA = "0x1899780", Offset = "0x1898180", VA = "0x181899780")] public void SetFirstTimeInForNewUser() { int num; do { num = 0; IEnumerator enumerator = Enum.GetValues(typeof(TutorialManager.PBGCGJOEICJ)).GetEnumerator(); if (enumerator != 0) { if (num < enumerator) { num += num; num++; } int num2 = num; while (num2 == 0) { } num2 += num2; } if (num != -1) { } } while (num != 0); ActionEvent playerCreatedEvent = Player.PlayerCreatedEvent; Action action = new Action(this.INLPNKIEHME); Player.PlayerCreatedEvent = playerCreatedEvent + action; } // Token: 0x060022B5 RID: 8885 RVA: 0x00090630 File Offset: 0x0008E830 [Token(Token = "0x60022B5")] [Address(RVA = "0x1897DB0", Offset = "0x18967B0", VA = "0x181897DB0")] public bool GetIsFirstTimeInActivity(COBKKLOJNNE MNFBBBIFPKM) { TutorialManager.PBGCGJOEICJ pbgcgjoeicj = this.HOHNPGJLALM(MNFBBBIFPKM); if (pbgcgjoeicj != TutorialManager.PBGCGJOEICJ.INVALID) { if (NOBCCPHLPNJ.MMICKFMMLJO) { int num = 0; int num2 = NOBCCPHLPNJ.JGGKHJCBGLF("FIRST_TIME_IN_FLAGS", num); } Debug.LogWarning("TutorialManager: failed to get 'first time in' flag - recroomprefs not ready"); return; } } // Token: 0x060022B6 RID: 8886 RVA: 0x00090670 File Offset: 0x0008E870 [Token(Token = "0x60022B6")] [Address(RVA = "0x1898020", Offset = "0x1896A20", VA = "0x181898020")] private TutorialManager.PBGCGJOEICJ HOHNPGJLALM(COBKKLOJNNE MNFBBBIFPKM) { List> bdbcgijnpme = this.BDBCGIJNPME; int num = 0; ThrowHelper.ThrowArgumentOutOfRangeException(); List> bdbcgijnpme2 = this.BDBCGIJNPME; num++; throw new NullReferenceException(); } // Token: 0x060022B7 RID: 8887 RVA: 0x000906A0 File Offset: 0x0008E8A0 [Token(Token = "0x60022B7")] [Address(RVA = "0x1897E80", Offset = "0x1896880", VA = "0x181897E80")] public bool GetIsFirstTimeIn(TutorialManager.PBGCGJOEICJ JJGHIEJCCDA) { /* An exception occurred when decompiling this method (060022B7) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean TutorialManager::GetIsFirstTimeIn(TutorialManager/PBGCGJOEICJ) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_1A: call:void(Debug::LogWarning, ldstr:string[exp:object]("TutorialManager: failed to get 'first time in' flag - recroomprefs not ready")) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } // Token: 0x060022B8 RID: 8888 RVA: 0x000906D4 File Offset: 0x0008E8D4 [Token(Token = "0x60022B8")] [Address(RVA = "0x1899A40", Offset = "0x1898440", VA = "0x181899A40")] public void SetIsFirstTimeInActivity(COBKKLOJNNE HHGBMECKKPF, bool GBDEEHJOOEB) { if (this.HOHNPGJLALM(HHGBMECKKPF) != TutorialManager.PBGCGJOEICJ.INVALID) { } } // Token: 0x060022B9 RID: 8889 RVA: 0x000906EC File Offset: 0x0008E8EC [Token(Token = "0x60022B9")] [Address(RVA = "0x1899A80", Offset = "0x1898480", VA = "0x181899A80")] public void SetIsFirstTimeIn(TutorialManager.PBGCGJOEICJ JJGHIEJCCDA, bool GBDEEHJOOEB) { if (NOBCCPHLPNJ.MMICKFMMLJO) { int num = 0; int num2 = NOBCCPHLPNJ.JGGKHJCBGLF("FIRST_TIME_IN_FLAGS", num); if (!GBDEEHJOOEB) { } NOBCCPHLPNJ.CLOFMHGBPPA("FIRST_TIME_IN_FLAGS", num2); NOBCCPHLPNJ.CHLAOLCBEND(); return; } Debug.LogWarning("TutorialManager: failed to set 'first time in' flag - recroomprefs not ready"); } // Token: 0x060022BA RID: 8890 RVA: 0x00090734 File Offset: 0x0008E934 [Token(Token = "0x60022BA")] [Address(RVA = "0x18980F0", Offset = "0x1896AF0", VA = "0x1818980F0")] public bool HasUserTried(TutorialManager.JLKAMNFGKDG JJGHIEJCCDA) { /* An exception occurred when decompiling this method (060022BA) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean TutorialManager::HasUserTried(TutorialManager/JLKAMNFGKDG) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_1A: call:void(Debug::LogWarning, ldstr:string[exp:object]("TutorialManager: failed to get 'user tried' flag - recroomprefs not ready")) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } // Token: 0x060022BB RID: 8891 RVA: 0x00090768 File Offset: 0x0008E968 [Token(Token = "0x60022BB")] [Address(RVA = "0x18989B0", Offset = "0x18973B0", VA = "0x1818989B0")] public void MarkUserTried(TutorialManager.JLKAMNFGKDG JJGHIEJCCDA, bool NFEDLKIHEOC = true) { if (NOBCCPHLPNJ.MMICKFMMLJO) { int num = 0; int num2 = NOBCCPHLPNJ.JGGKHJCBGLF("USER_TRACKING", num); if (!NFEDLKIHEOC) { } NOBCCPHLPNJ.CLOFMHGBPPA("USER_TRACKING", num2); NOBCCPHLPNJ.CHLAOLCBEND(); return; } Debug.LogWarning("TutorialManager: failed to set 'user tried' flag - recroomprefs not ready"); } // Token: 0x060022BC RID: 8892 RVA: 0x000907B0 File Offset: 0x0008E9B0 [Token(Token = "0x60022BC")] [Address(RVA = "0x1898FD0", Offset = "0x18979D0", VA = "0x181898FD0")] private void PLCGPPEICMI() { COBKKLOJNNE k__BackingField = Matchmaking.BBJAEJHMAPB.k__BackingField; if (k__BackingField != COBKKLOJNNE.INVALID && this.HOHNPGJLALM(k__BackingField) != TutorialManager.PBGCGJOEICJ.INVALID) { return; } } // Token: 0x060022BD RID: 8893 RVA: 0x000907E0 File Offset: 0x0008E9E0 [Token(Token = "0x60022BD")] [Address(RVA = "0x18982A0", Offset = "0x1896CA0", VA = "0x1818982A0")] private void INLPNKIEHME(Player IEKDDPPNFPF) { int num = 0; if (IEKDDPPNFPF != num && TutorialManager.MACONJHDIIP < 5) { ActionEvent staticLockedToolPickedUpEvent = Tool.StaticLockedToolPickedUpEvent; Action action = new Action(this.GJMFCAEFBJO); Tool.StaticLockedToolPickedUpEvent = staticLockedToolPickedUpEvent - action; ActionEvent staticLockedToolPickedUpEvent2 = Tool.StaticLockedToolPickedUpEvent; Action action2 = new Action(this.GJMFCAEFBJO); Tool.StaticLockedToolPickedUpEvent = staticLockedToolPickedUpEvent2 + action2; } } // Token: 0x060022BE RID: 8894 RVA: 0x0009084C File Offset: 0x0008EA4C [Token(Token = "0x60022BE")] [Address(RVA = "0x1897980", Offset = "0x1896380", VA = "0x181897980")] private void GJMFCAEFBJO(Tool EGFEJGHDNAI) { GameManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; Player k__BackingField = EGFEJGHDNAI.k__BackingField; if (instance != 0) { int num = 0; if (instance == num || !instance.CIFKHPAHBHB) { int pickedUpStickyToolNumberOfTimes = TutorialManager.MACONJHDIIP; if (NOBCCPHLPNJ.MMICKFMMLJO) { int num2 = pickedUpStickyToolNumberOfTimes + 1; NOBCCPHLPNJ.CLOFMHGBPPA("PICKED_UP_STICKY_TOOL_BEFORE", num2); NOBCCPHLPNJ.CHLAOLCBEND(); } int pickedUpStickyToolNumberOfTimes2 = TutorialManager.MACONJHDIIP; ActionEvent staticLockedToolPickedUpEvent = Tool.StaticLockedToolPickedUpEvent; Action action = new Action(this.GJMFCAEFBJO); Tool.StaticLockedToolPickedUpEvent = staticLockedToolPickedUpEvent - action; ActionEvent playerCreatedEvent = Player.PlayerCreatedEvent; Action action2 = new Action(this.INLPNKIEHME); Player.PlayerCreatedEvent = playerCreatedEvent - action2; ActionEvent postReleaseEvent = EGFEJGHDNAI.PostReleaseEvent; Action action3 = new Action(this.PDEEFICICFG); ActionEvent actionEvent = postReleaseEvent + action3; EGFEJGHDNAI.PostReleaseEvent = actionEvent; GameObject mgepikojfin = this.MGEPIKOJFIN; int num3 = 0; if (mgepikojfin != num3) { global::UnityEngine.Object.Destroy(this.MGEPIKOJFIN); } GameObject gameObject = global::UnityEngine.Object.Instantiate(this.dropItemNotePrefab); this.MGEPIKOJFIN = gameObject; gameObject.GetComponent().RefreshNote(EGFEJGHDNAI); int num4; TutorialManager.CKHIGCFIFJP ckhigcfifjp = new TutorialManager.CKHIGCFIFJP(num4); num4 = 0; ckhigcfifjp.<>4__this = this; ckhigcfifjp.tool = EGFEJGHDNAI; Coroutine coroutine = base.StartCoroutine(ckhigcfifjp); } } } // Token: 0x060022BF RID: 8895 RVA: 0x0009099C File Offset: 0x0008EB9C [Token(Token = "0x60022BF")] [Address(RVA = "0x18970B0", Offset = "0x1895AB0", VA = "0x1818970B0")] private IEnumerator AOMPDNOCIPD(Tool EGFEJGHDNAI) { int num; TutorialManager.CKHIGCFIFJP ckhigcfifjp = new TutorialManager.CKHIGCFIFJP(num); num = 0; ckhigcfifjp.<>4__this = this; ckhigcfifjp.tool = EGFEJGHDNAI; throw new NullReferenceException(); } // Token: 0x060022C0 RID: 8896 RVA: 0x000909C8 File Offset: 0x0008EBC8 [Token(Token = "0x60022C0")] [Address(RVA = "0x1898D70", Offset = "0x1897770", VA = "0x181898D70")] private void PDEEFICICFG(Tool EGFEJGHDNAI) { GameObject mgepikojfin = this.MGEPIKOJFIN; int num = 0; if (mgepikojfin != num) { ActionEvent postReleaseEvent = EGFEJGHDNAI.PostReleaseEvent; Action action = new Action(this.PDEEFICICFG); ActionEvent actionEvent = postReleaseEvent - action; EGFEJGHDNAI.PostReleaseEvent = actionEvent; global::UnityEngine.Object.Destroy(this.MGEPIKOJFIN); } } // Token: 0x060022C1 RID: 8897 RVA: 0x00090A20 File Offset: 0x0008EC20 [Token(Token = "0x60022C1")] [Address(RVA = "0x1897D90", Offset = "0x1896790", VA = "0x181897D90")] public IResourceHandle GetHelpTexture(TutorialManager.DDDLEBIENKF BEACPPIDKKB, [Optional] PlatformManager.LDIIFDDCKCN? LPBLKPHDFPD) { return this.helpPopupConfigs.IKEDMJHLJEA(BEACPPIDKKB, LPBLKPHDFPD); } // Token: 0x17000628 RID: 1576 // (get) Token: 0x060022C2 RID: 8898 RVA: 0x00090A40 File Offset: 0x0008EC40 // (set) Token: 0x060022C3 RID: 8899 RVA: 0x00090A54 File Offset: 0x0008EC54 [Token(Token = "0x17000628")] private IResourceHandle OLGBPIPPLIG { [Token(Token = "0x60022C2")] [Address(RVA = "0x6361F0", Offset = "0x634BF0", VA = "0x1806361F0")] get { return this.FELGHAMABDL; } [Token(Token = "0x60022C3")] [Address(RVA = "0x18974E0", Offset = "0x1895EE0", VA = "0x1818974E0")] set { IResourceHandle felghamabdl = this.FELGHAMABDL; this.FELGHAMABDL = value; if (felghamabdl != 0) { } } } // Token: 0x060022C4 RID: 8900 RVA: 0x00090A74 File Offset: 0x0008EC74 [Token(Token = "0x60022C4")] [Address(RVA = "0x1899C90", Offset = "0x1898690", VA = "0x181899C90")] public HelpPopup ShowHelpPopup(TutorialManager.DDDLEBIENKF BEACPPIDKKB, [Optional] Vector3? FHDBEPINLBG, [Optional] PlatformManager.LDIIFDDCKCN? LPBLKPHDFPD) { HelpPopupConfigs helpPopupConfigs = this.helpPopupConfigs; IResourceHandle felghamabdl = this.FELGHAMABDL; IResourceHandle resourceHandle; this.FELGHAMABDL = resourceHandle; if (felghamabdl != 0) { } Vector3? positionOverride; Action action = delegate(Texture2D texture2D) { int num = 0; if (texture2D != num) { this.ONIMLKBKPPM.SetContent(texture2D); } this.ONIMLKBKPPM.BCKCEELIDLH = true; HelpPopup helpPopup = this.ONIMLKBKPPM; Vector3? positionOverride2 = positionOverride; helpPopup.UpdatePosition(positionOverride2); }; return this.ONIMLKBKPPM; } // Token: 0x060022C5 RID: 8901 RVA: 0x00090AC4 File Offset: 0x0008ECC4 [Token(Token = "0x60022C5")] [Address(RVA = "0x18981B0", Offset = "0x1896BB0", VA = "0x1818981B0")] public void HideHelpPopup() { HelpPopup helpPopup = this.ONIMLKBKPPM; int num = 0; helpPopup.BCKCEELIDLH = num != 0; } // Token: 0x060022C6 RID: 8902 RVA: 0x00090AE8 File Offset: 0x0008ECE8 [Token(Token = "0x60022C6")] [Address(RVA = "0x1899DF0", Offset = "0x18987F0", VA = "0x181899DF0")] public void ShowScreensHelpPopup(TutorialManager.DDDLEBIENKF BEACPPIDKKB) { ScreenHUD screenModeHUD = SingletonMonoBehaviour.Instance.screenModeHUD; int num = 0; if (screenModeHUD != num) { Vector2 vector = this.screensHelpPopupPosition; float y = this.screensHelpPopupPosition.y; } } // Token: 0x060022C7 RID: 8903 RVA: 0x00090B2C File Offset: 0x0008ED2C [Token(Token = "0x60022C7")] [Address(RVA = "0x18981E0", Offset = "0x1896BE0", VA = "0x1818981E0")] public void HideScreensHelpPopup() { ScreenHUD screenModeHUD = SingletonMonoBehaviour.Instance.screenModeHUD; int num = 0; if (screenModeHUD != num) { screenModeHUD.DisableTutorialDialog(); return; } } // Token: 0x060022C8 RID: 8904 RVA: 0x00090B60 File Offset: 0x0008ED60 [Token(Token = "0x60022C8")] [Address(RVA = "0x1897770", Offset = "0x1896170", VA = "0x181897770")] private ScreenHUDDialog.OBELDOKFOCI? GHDPKLGILJE(TutorialManager.DDDLEBIENKF BEACPPIDKKB) { InputManager instance = SingletonMonoBehaviour.Instance; LOCNHHPGIAG k__BackingField = instance.k__BackingField; if (k__BackingField != 0 && instance <= (ulong)8L) { Sprite sprite = k__BackingField.KGDLBEAPDFE(GAMNIEMGCBI.CameraAxis); Sprite sprite2 = k__BackingField.KGDLBEAPDFE(GAMNIEMGCBI.RightHandPickupButton); Sprite sprite3 = k__BackingField.KGDLBEAPDFE(GAMNIEMGCBI.MenuButton); Sprite sprite4 = k__BackingField.KGDLBEAPDFE(GAMNIEMGCBI.CameraAxis); Sprite sprite5 = k__BackingField.KGDLBEAPDFE(GAMNIEMGCBI.WalkAxis); } throw new NullReferenceException(); } // Token: 0x060022C9 RID: 8905 RVA: 0x00090BB8 File Offset: 0x0008EDB8 [Token(Token = "0x60022C9")] [Address(RVA = "0x1899F40", Offset = "0x1898940", VA = "0x181899F40")] public void StopVO() { if (this.voAudioSource.isPlaying) { throw new NullReferenceException(); } if (this.voAudioSource3D.isPlaying) { this.voAudioSource3D.Stop(); return; } } // Token: 0x060022CA RID: 8906 RVA: 0x00090BF4 File Offset: 0x0008EDF4 [Token(Token = "0x60022CA")] [Address(RVA = "0x1897F40", Offset = "0x1896940", VA = "0x181897F40")] public RecRoomAudioClip GetTutorialAudio(TutorialManager.LFBAKFELNDP BFLJAONGKCB) { TutorialAudioConfigs.TutorialAudioConfig[] configs; int num; int length; do { TutorialAudioConfigs tutorialAudioConfigs = this.tutorialAudioConfigs; configs = tutorialAudioConfigs.Configs; num = 0; length = configs.Length; } while (num >= length); TutorialAudioConfigs.TutorialAudioConfig tutorialAudioConfig = configs[num]; if (tutorialAudioConfig.AudioType != BFLJAONGKCB) { num++; } PlatformManager.LDIIFDDCKCN gfmhkkkeoge = SingletonMonoBehaviour.Instance.GFMHKKKEOGE; return tutorialAudioConfig.IPOIMPIGBJJ(gfmhkkkeoge); } // Token: 0x060022CB RID: 8907 RVA: 0x00090C54 File Offset: 0x0008EE54 [Token(Token = "0x60022CB")] [Address(RVA = "0x18992A0", Offset = "0x1897CA0", VA = "0x1818992A0")] public AudioSource PlayTutorialVO(TutorialManager.LFBAKFELNDP BFLJAONGKCB) { TutorialAudioConfigs tutorialAudioConfigs = this.tutorialAudioConfigs; TutorialAudioConfigs.TutorialAudioConfig[] configs = tutorialAudioConfigs.Configs; int num = 0; int length = configs.Length; RecRoomAudioClip recRoomAudioClip; if (num < length) { TutorialAudioConfigs.TutorialAudioConfig tutorialAudioConfig = configs[num]; if (tutorialAudioConfig.AudioType != BFLJAONGKCB) { num++; } PlatformManager.LDIIFDDCKCN gfmhkkkeoge = SingletonMonoBehaviour.Instance.GFMHKKKEOGE; recRoomAudioClip = tutorialAudioConfig.IPOIMPIGBJJ(gfmhkkkeoge); } return this.PlayVO(recRoomAudioClip); } // Token: 0x060022CC RID: 8908 RVA: 0x00090CBC File Offset: 0x0008EEBC [Token(Token = "0x60022CC")] [Address(RVA = "0x1899630", Offset = "0x1898030", VA = "0x181899630")] public IEnumerator RunPlayVOClip(RecRoomAudioClip LIEBGLIAJIA) { int num; TutorialManager.GLBHEKMCAIP glbhekmcaip = new TutorialManager.GLBHEKMCAIP(num); num = 0; glbhekmcaip.<>4__this = this; glbhekmcaip.audioClip = LIEBGLIAJIA; throw new NullReferenceException(); } // Token: 0x060022CD RID: 8909 RVA: 0x00090CE8 File Offset: 0x0008EEE8 [Token(Token = "0x60022CD")] [Address(RVA = "0x1899730", Offset = "0x1898130", VA = "0x181899730")] public IEnumerator RunVODelay() { /* An exception occurred when decompiling this method (060022CD) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator TutorialManager::RunVODelay() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stloc:CNIIDLOMFNC(var_0_06, newobj:CNIIDLOMFNC(CNIIDLOMFNC::.ctor, ldloc:int32(var_1))) stloc:int32(var_1, ldc.i4:int32(0)) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } // Token: 0x060022CE RID: 8910 RVA: 0x00090D00 File Offset: 0x0008EF00 [Token(Token = "0x60022CE")] [Address(RVA = "0x18995C0", Offset = "0x1897FC0", VA = "0x1818995C0")] public IEnumerator RunPlayVOClip(TutorialManager.LFBAKFELNDP BFLJAONGKCB) { int num; TutorialManager.GANIKNAEDME ganiknaedme = new TutorialManager.GANIKNAEDME(num); num = 0; ganiknaedme.<>4__this = this; ganiknaedme.audioType = BFLJAONGKCB; throw new NullReferenceException(); } // Token: 0x060022CF RID: 8911 RVA: 0x00090D2C File Offset: 0x0008EF2C [Token(Token = "0x60022CF")] [Address(RVA = "0x18996B0", Offset = "0x18980B0", VA = "0x1818996B0")] public IEnumerator RunPlayVO(TutorialManager.VOClip BEFFMNENBPA) { int num; TutorialManager.JGFPJNFBKKK jgfpjnfbkkk = new TutorialManager.JGFPJNFBKKK(num); num = 0; jgfpjnfbkkk.<>4__this = this; jgfpjnfbkkk.vo = BEFFMNENBPA; throw new NullReferenceException(); } // Token: 0x060022D0 RID: 8912 RVA: 0x00090D58 File Offset: 0x0008EF58 [Token(Token = "0x60022D0")] [Address(RVA = "0x18993A0", Offset = "0x1897DA0", VA = "0x1818993A0")] public AudioSource PlayVO(RecRoomAudioClip JDLICKFPJOO) { if (this.voAudioSource.isPlaying) { this.voAudioSource.Stop(); } if (JDLICKFPJOO != 0) { AudioSource audioSource = this.voAudioSource; AudioClip audioClip = JDLICKFPJOO.audioClip; audioSource.clip = audioClip; AudioSource audioSource2 = this.voAudioSource; float volume = JDLICKFPJOO.volume; audioSource2.volume = volume; float num = JDLICKFPJOO.pitchVariation; int num2 = 0; AudioSource audioSource3 = this.voAudioSource; if (num <= (float)num2) { } num = global::UnityEngine.Random.Range(num, num); audioSource3.pitch = num; this.voAudioSource.Play(); this.subtitlePlayer.Stop(); TextAsset subtitles = JDLICKFPJOO.subtitles; int num3 = 0; if (subtitles != num3) { TextAsset subtitles2 = JDLICKFPJOO.subtitles; SubtitlePlayer subtitlePlayer = this.subtitlePlayer; string text = subtitles2.text; subtitlePlayer.Load(text); this.subtitlePlayer.Play(); } return this.voAudioSource; } Debug.LogError("Clip is null"); throw new NullReferenceException(); } // Token: 0x17000629 RID: 1577 // (get) Token: 0x060022D1 RID: 8913 RVA: 0x00090E4C File Offset: 0x0008F04C [Token(Token = "0x17000629")] public bool NFFFMEBIJPA { [Token(Token = "0x60022D1")] [Address(RVA = "0x189A400", Offset = "0x1898E00", VA = "0x18189A400")] get { TeachableMoment paihflhbpcc = this.PAIHFLHBPCC; int num = 0; return paihflhbpcc != num; } } // Token: 0x060022D2 RID: 8914 RVA: 0x00090E6C File Offset: 0x0008F06C [Token(Token = "0x60022D2")] [Address(RVA = "0x20E1F30", Offset = "0x20E0930", VA = "0x1820E1F30")] public bool IsTeachableMomentOfTypePlaying() where T : TeachableMoment { int num = 0; return this != num; } // Token: 0x060022D3 RID: 8915 RVA: 0x00090E84 File Offset: 0x0008F084 [Token(Token = "0x60022D3")] [Address(RVA = "0x1899570", Offset = "0x1897F70", VA = "0x181899570")] public void RegisterTeachableMoment(TeachableMoment KCCDGPFJCKP) { bool flag = ListExt.AddUnique(this.EFDGLLOBFHD, KCCDGPFJCKP); } // Token: 0x060022D4 RID: 8916 RVA: 0x00090EA0 File Offset: 0x0008F0A0 [Token(Token = "0x60022D4")] [Address(RVA = "0x189A090", Offset = "0x1898A90", VA = "0x18189A090")] public void UnregisterTeachableMoment(TeachableMoment KCCDGPFJCKP) { bool flag = this.EFDGLLOBFHD.Remove(KCCDGPFJCKP); ListExt.RemoveNulls(this.EFDGLLOBFHD); } // Token: 0x060022D5 RID: 8917 RVA: 0x00090ECC File Offset: 0x0008F0CC [Token(Token = "0x60022D5")] [Address(RVA = "0x20E2010", Offset = "0x20E0A10", VA = "0x1820E2010")] public bool TryTeachableMoment() where T : TeachableMoment { bool flag; if (!flag) { return flag; } bool flag2; return flag2; } // Token: 0x060022D6 RID: 8918 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x60022D6")] [Address(RVA = "0x1A48ED0", Offset = "0x1A478D0", VA = "0x181A48ED0")] public T GetTeachableMoment() where T : TeachableMoment { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x060022D7 RID: 8919 RVA: 0x00090EE8 File Offset: 0x0008F0E8 [Token(Token = "0x60022D7")] [Address(RVA = "0x1897690", Offset = "0x1896090", VA = "0x181897690")] public bool ForceTeachableMomentToPlay(TeachableMoment KCCDGPFJCKP) { int num = 0; if (!(KCCDGPFJCKP == num)) { TeachableMoment paihflhbpcc = this.PAIHFLHBPCC; int num2 = 0; if (paihflhbpcc != num2) { TeachableMoment paihflhbpcc2 = this.PAIHFLHBPCC; this.CancelTeachableMomentIfActive(paihflhbpcc2); } this.PPOFFIBGBKE(KCCDGPFJCKP); return true; } } // Token: 0x060022D8 RID: 8920 RVA: 0x00090F30 File Offset: 0x0008F130 [Token(Token = "0x60022D8")] [Address(RVA = "0x1899FA0", Offset = "0x18989A0", VA = "0x181899FA0")] public bool TryTeachableMoment(TeachableMoment KCCDGPFJCKP) { int num = 0; if (!(KCCDGPFJCKP == num)) { TeachableMoment paihflhbpcc = this.PAIHFLHBPCC; int num2 = 0; IEnumerator enumerator; if (!(paihflhbpcc != num2) && enumerator != 0) { this.PPOFFIBGBKE(KCCDGPFJCKP); return true; } } throw new NullReferenceException(); } // Token: 0x060022D9 RID: 8921 RVA: 0x00090F74 File Offset: 0x0008F174 [Token(Token = "0x60022D9")] [Address(RVA = "0x18990C0", Offset = "0x1897AC0", VA = "0x1818990C0")] private void PPOFFIBGBKE(TeachableMoment KCCDGPFJCKP) { this.PAIHFLHBPCC = KCCDGPFJCKP; if (KCCDGPFJCKP.JIBNEIKDLGJ) { ActionEvent playerDestroyedEvent = Player.PlayerDestroyedEvent; Action action = new Action(this.NNHJFOAAOEA); Player.PlayerDestroyedEvent = playerDestroyedEvent + action; } if (this.PAIHFLHBPCC.FAGLEFHMHDL) { GameManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; int num = 0; if (instance != num) { Action action2 = new Action(this.IAGJLHLEPIC); instance.NJGCGNDOMBJ += action2; } } int num2; TutorialManager.NLLNHPIDGIB nllnhpidgib = new TutorialManager.NLLNHPIDGIB(num2); num2 = 0; nllnhpidgib.<>4__this = this; Coroutine coroutine = base.StartCoroutine(nllnhpidgib); this.MFCBDENGGBO = coroutine; } // Token: 0x060022DA RID: 8922 RVA: 0x00091014 File Offset: 0x0008F214 [Token(Token = "0x60022DA")] [Address(RVA = "0x1898AD0", Offset = "0x18974D0", VA = "0x181898AD0")] private void NNHJFOAAOEA(Player IEKDDPPNFPF) { TeachableMoment paihflhbpcc = this.PAIHFLHBPCC; this.CancelTeachableMomentIfActive(paihflhbpcc); } // Token: 0x060022DB RID: 8923 RVA: 0x00091038 File Offset: 0x0008F238 [Token(Token = "0x60022DB")] [Address(RVA = "0x1898290", Offset = "0x1896C90", VA = "0x181898290")] private void IAGJLHLEPIC() { TeachableMoment paihflhbpcc = this.PAIHFLHBPCC; this.CancelTeachableMomentIfActive(paihflhbpcc); } // Token: 0x060022DC RID: 8924 RVA: 0x00091054 File Offset: 0x0008F254 [Token(Token = "0x60022DC")] [Address(RVA = "0x1897910", Offset = "0x1896310", VA = "0x181897910")] private IEnumerator GJAOKBBGLJP() { int num; TutorialManager.NLLNHPIDGIB nllnhpidgib = new TutorialManager.NLLNHPIDGIB(num); num = 0; nllnhpidgib.<>4__this = this; throw new NullReferenceException(); } // Token: 0x060022DD RID: 8925 RVA: 0x00091078 File Offset: 0x0008F278 [Token(Token = "0x60022DD")] [Address(RVA = "0x1897130", Offset = "0x1895B30", VA = "0x181897130")] public void CancelTeachableMomentIfActive(TeachableMoment KCCDGPFJCKP) { int num = 0; int num2 = 0; if (KCCDGPFJCKP != num2 && this.PAIHFLHBPCC == KCCDGPFJCKP) { DateTime utcNow = DateTime.UtcNow; DateTime mkkfddneefp = this.MKKFDDNEEFP; TimeSpan timeSpan = utcNow - mkkfddneefp; TeachableMoment paihflhbpcc = this.PAIHFLHBPCC; TeachableMoment.LCFNEFFEAJF aahgighaifi = paihflhbpcc.AAHGIGHAIFI; IEnumerator enumerator = paihflhbpcc.RunTeachingMoment(); int num3 = 0; if (this != num3) { Coroutine mfcbdenggbo = this.MFCBDENGGBO; base.StopCoroutine(mfcbdenggbo); IEnumerator llcpaneakml = this.LLCPANEAKML; base.StopCoroutine(llcpaneakml); } ActionEvent playerDestroyedEvent = Player.PlayerDestroyedEvent; Action action = new Action(this.NNHJFOAAOEA); Player.PlayerDestroyedEvent = playerDestroyedEvent - action; RecRoomSceneManager k__BackingField = RecRoomSceneManager.k__BackingField; int num4 = 0; if (k__BackingField != num4) { GameManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; int num5 = 0; if (instance != num5) { Action action2 = new Action(this.IAGJLHLEPIC); instance.NJGCGNDOMBJ -= action2; } } this.PAIHFLHBPCC.CleanUp(); this.PAIHFLHBPCC = num; this.MFCBDENGGBO = num; this.LLCPANEAKML = num; } } // Token: 0x060022DE RID: 8926 RVA: 0x00091198 File Offset: 0x0008F398 [Token(Token = "0x60022DE")] [Address(RVA = "0x189A1B0", Offset = "0x1898BB0", VA = "0x18189A1B0")] public TutorialManager() { ulong num; this.screensHelpPopupPosition = num; this.screensHelpPopupPosition.y = (float)0; Dictionary dictionary = new Dictionary(); this.KNMODGNNOMO = dictionary; this.FCBHBAIIKPN = true; this.JGLKBGBOLEJ = (TutorialManager.HLGLKDBJNBD)((ulong)100L); List list = new List(); this.EFDGLLOBFHD = list; base..ctor(); } // Token: 0x04001C1C RID: 7196 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4001C1C")] [SerializeField] [Header("Audio")] private AudioSource voAudioSource; // Token: 0x04001C1D RID: 7197 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4001C1D")] [SerializeField] private AudioSource voAudioSource3D; // Token: 0x04001C1E RID: 7198 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x4001C1E")] [SerializeField] private TutorialAudioConfigs tutorialAudioConfigs; // Token: 0x04001C1F RID: 7199 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x4001C1F")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)] private SubtitlePlayer subtitlePlayer; // Token: 0x04001C20 RID: 7200 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x4001C20")] [SerializeField] [Header("Help Popup")] private HelpPopup helpPopupPrefab; // Token: 0x04001C21 RID: 7201 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x4001C21")] [SerializeField] private HelpPopupConfigs helpPopupConfigs; // Token: 0x04001C22 RID: 7202 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x4001C22")] [SerializeField] private GameObject dropItemNotePrefab; // Token: 0x04001C23 RID: 7203 [global::Cpp2IlInjected.FieldOffset(Offset = "0x50")] [Token(Token = "0x4001C23")] private GameObject MGEPIKOJFIN; // Token: 0x04001C24 RID: 7204 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x4001C24")] [SerializeField] private Vector2 screensHelpPopupPosition; // Token: 0x04001C25 RID: 7205 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x4001C25")] private List> BDBCGIJNPME; // Token: 0x04001C26 RID: 7206 [global::Cpp2IlInjected.FieldOffset(Offset = "0x68")] [Token(Token = "0x4001C26")] private float NCJIALKBINK; // Token: 0x04001C28 RID: 7208 [Token(Token = "0x4001C28")] private const int CHMFKMACJEK = 5; // Token: 0x04001C29 RID: 7209 [global::Cpp2IlInjected.FieldOffset(Offset = "0x70")] [Token(Token = "0x4001C29")] private HelpPopup HPMMCMLIIML; // Token: 0x04001C2A RID: 7210 [Token(Token = "0x4001C2A")] private const int LPCOFPALPEE = 0; // Token: 0x04001C2B RID: 7211 [global::Cpp2IlInjected.FieldOffset(Offset = "0x78")] [Token(Token = "0x4001C2B")] private Dictionary KNMODGNNOMO; // Token: 0x04001C2C RID: 7212 [global::Cpp2IlInjected.FieldOffset(Offset = "0x80")] [Token(Token = "0x4001C2C")] private bool FCBHBAIIKPN; // Token: 0x04001C2D RID: 7213 [global::Cpp2IlInjected.FieldOffset(Offset = "0x84")] [Token(Token = "0x4001C2D")] private TutorialManager.HLGLKDBJNBD JGLKBGBOLEJ; // Token: 0x04001C2E RID: 7214 [global::Cpp2IlInjected.FieldOffset(Offset = "0x88")] [Token(Token = "0x4001C2E")] private IResourceHandle FELGHAMABDL; // Token: 0x04001C2F RID: 7215 [Token(Token = "0x4001C2F")] private const float JNJNLECDOGG = 1f; // Token: 0x04001C30 RID: 7216 [global::Cpp2IlInjected.FieldOffset(Offset = "0x90")] [Token(Token = "0x4001C30")] private List EFDGLLOBFHD; // Token: 0x04001C31 RID: 7217 [global::Cpp2IlInjected.FieldOffset(Offset = "0x98")] [Token(Token = "0x4001C31")] private TeachableMoment PAIHFLHBPCC; // Token: 0x04001C32 RID: 7218 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA0")] [Token(Token = "0x4001C32")] private Coroutine MFCBDENGGBO; // Token: 0x04001C33 RID: 7219 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA8")] [Token(Token = "0x4001C33")] private IEnumerator LLCPANEAKML; // Token: 0x04001C34 RID: 7220 [global::Cpp2IlInjected.FieldOffset(Offset = "0xB0")] [Token(Token = "0x4001C34")] private DateTime MKKFDDNEEFP; // Token: 0x04001C35 RID: 7221 [Token(Token = "0x4001C35")] private static string DEBADLGBCJC = "FIRST_TIME_IN_FLAGS"; // Token: 0x04001C36 RID: 7222 [Token(Token = "0x4001C36")] private static string JCFLNDELFIG = "USER_TRACKING"; // Token: 0x04001C37 RID: 7223 [Token(Token = "0x4001C37")] private static string OBIODNNLFCO = "PICKED_UP_STICKY_TOOL_BEFORE"; // Token: 0x04001C38 RID: 7224 [Token(Token = "0x4001C38")] private static string AKELNNOMFOE = "TUTORIAL_COMPLETE_MASK"; // Token: 0x04001C39 RID: 7225 [Token(Token = "0x4001C39")] public static string OOBEFLOW_PREF = "Recroom.OOBE"; // Token: 0x0200049D RID: 1181 [Token(Token = "0x200049D")] public enum DDDLEBIENKF { // Token: 0x04001C3B RID: 7227 [Token(Token = "0x4001C3B")] TeleportButton, // Token: 0x04001C3C RID: 7228 [Token(Token = "0x4001C3C")] SwipeButton, // Token: 0x04001C3D RID: 7229 [Token(Token = "0x4001C3D")] GrabButton, // Token: 0x04001C3E RID: 7230 [Token(Token = "0x4001C3E")] DropItemButton, // Token: 0x04001C3F RID: 7231 [Token(Token = "0x4001C3F")] OpenWatch, // Token: 0x04001C40 RID: 7232 [Token(Token = "0x4001C40")] Laser, // Token: 0x04001C41 RID: 7233 [Token(Token = "0x4001C41")] Stop, // Token: 0x04001C42 RID: 7234 [Token(Token = "0x4001C42")] FistBump, // Token: 0x04001C43 RID: 7235 [Token(Token = "0x4001C43")] ShakeHands, // Token: 0x04001C44 RID: 7236 [Token(Token = "0x4001C44")] WalkButton } // Token: 0x0200049E RID: 1182 [Token(Token = "0x200049E")] public enum LFBAKFELNDP { // Token: 0x04001C46 RID: 7238 [Token(Token = "0x4001C46")] Great = 5, // Token: 0x04001C47 RID: 7239 [Token(Token = "0x4001C47")] Perfect, // Token: 0x04001C48 RID: 7240 [Token(Token = "0x4001C48")] LookAtWristToViewWatch = 25, // Token: 0x04001C49 RID: 7241 [Token(Token = "0x4001C49")] OpenWatch = 31, // Token: 0x04001C4A RID: 7242 [Token(Token = "0x4001C4A")] PleaseEnterYourBirthday = 43, // Token: 0x04001C4B RID: 7243 [Token(Token = "0x4001C4B")] Thanks, // Token: 0x04001C4C RID: 7244 [Token(Token = "0x4001C4C")] RegisterNonJunior, // Token: 0x04001C4D RID: 7245 [Token(Token = "0x4001C4D")] RegisterJunior, // Token: 0x04001C4E RID: 7246 [Token(Token = "0x4001C4E")] Excellent, // Token: 0x04001C4F RID: 7247 [Token(Token = "0x4001C4F")] VerifyAccount = 66, // Token: 0x04001C50 RID: 7248 [Token(Token = "0x4001C50")] ThereAreTwoWaysToMove = 178, // Token: 0x04001C51 RID: 7249 [Token(Token = "0x4001C51")] PickWhichWayYoudLikeToMove, // Token: 0x04001C52 RID: 7250 [Token(Token = "0x4001C52")] WeRecommendTeleport, // Token: 0x04001C53 RID: 7251 [Token(Token = "0x4001C53")] YouCanChangeBetweenWalkingAndTeleporting, // Token: 0x04001C54 RID: 7252 [Token(Token = "0x4001C54")] ExploreNUX_WelcomeToRecRoom = 190, // Token: 0x04001C55 RID: 7253 [Token(Token = "0x4001C55")] ExploreNUX_ThisIsYourDormRoom, // Token: 0x04001C56 RID: 7254 [Token(Token = "0x4001C56")] ExploreNUX_FeelFreeToPlayAround, // Token: 0x04001C57 RID: 7255 [Token(Token = "0x4001C57")] WhatIsYourAge = 195, // Token: 0x04001C58 RID: 7256 [Token(Token = "0x4001C58")] WhatDoYouWantYourNameToBe, // Token: 0x04001C59 RID: 7257 [Token(Token = "0x4001C59")] FeelFreeToPlayAround, // Token: 0x04001C5A RID: 7258 [Token(Token = "0x4001C5A")] UseMirrorToCustomizeLook = 200, // Token: 0x04001C5B RID: 7259 [Token(Token = "0x4001C5B")] WelcomeToPaintball, // Token: 0x04001C5C RID: 7260 [Token(Token = "0x4001C5C")] WhatWouldYouLikeYourPasswordToBe, // Token: 0x04001C5D RID: 7261 [Token(Token = "0x4001C5D")] DoYouWantUsToConnectYou = 220, // Token: 0x04001C5E RID: 7262 [Token(Token = "0x4001C5E")] WeNeedMoreInfo, // Token: 0x04001C5F RID: 7263 [Token(Token = "0x4001C5F")] LooksLikeYouKnowPlayers, // Token: 0x04001C60 RID: 7264 [Token(Token = "0x4001C60")] WellLetYouKnowWhenFriendsJoin, // Token: 0x04001C61 RID: 7265 [Token(Token = "0x4001C61")] CompleteChallengesToEarnRewards = 230, // Token: 0x04001C62 RID: 7266 [Token(Token = "0x4001C62")] KeepCompletingChallengesToEarnRewards, // Token: 0x04001C63 RID: 7267 [Token(Token = "0x4001C63")] Mirror_FromTheMirror = 250, // Token: 0x04001C64 RID: 7268 [Token(Token = "0x4001C64")] Mirror_LookingGood, // Token: 0x04001C65 RID: 7269 [Token(Token = "0x4001C65")] BulletinBoard_AtTheCommunityBoard = 300, // Token: 0x04001C66 RID: 7270 [Token(Token = "0x4001C66")] Intro_WelcomeToRecRoom = 350, // Token: 0x04001C67 RID: 7271 [Token(Token = "0x4001C67")] Intro_ThisIsYourDormRoom, // Token: 0x04001C68 RID: 7272 [Token(Token = "0x4001C68")] Watch_BeforeYouHeadOut = 400, // Token: 0x04001C69 RID: 7273 [Token(Token = "0x4001C69")] Watch_ThisIsYourWatchMenu, // Token: 0x04001C6A RID: 7274 [Token(Token = "0x4001C6A")] Watch_TryTappingPlay, // Token: 0x04001C6B RID: 7275 [Token(Token = "0x4001C6B")] Watch_ExcellentRooms } // Token: 0x0200049F RID: 1183 [Token(Token = "0x200049F")] public enum HLGLKDBJNBD { // Token: 0x04001C6D RID: 7277 [Token(Token = "0x4001C6D")] NotRan, // Token: 0x04001C6E RID: 7278 [Token(Token = "0x4001C6E")] TutorialStart, // Token: 0x04001C6F RID: 7279 [Token(Token = "0x4001C6F")] Registration, // Token: 0x04001C70 RID: 7280 [Token(Token = "0x4001C70")] ChooseVRPlayerType = 77, // Token: 0x04001C71 RID: 7281 [Token(Token = "0x4001C71")] IosImportFriends, // Token: 0x04001C72 RID: 7282 [Token(Token = "0x4001C72")] ExploratoryTutorials = 80, // Token: 0x04001C73 RID: 7283 [Token(Token = "0x4001C73")] CohortNUX, // Token: 0x04001C74 RID: 7284 [Token(Token = "0x4001C74")] DressUpChoice = 83, // Token: 0x04001C75 RID: 7285 [Token(Token = "0x4001C75")] DressUpMirror, // Token: 0x04001C76 RID: 7286 [Token(Token = "0x4001C76")] ConfirmAvatar, // Token: 0x04001C77 RID: 7287 [Token(Token = "0x4001C77")] Complete = 100 } // Token: 0x020004A0 RID: 1184 [Token(Token = "0x20004A0")] [Flags] public enum PBGCGJOEICJ { // Token: 0x04001C79 RID: 7289 [Token(Token = "0x4001C79")] INVALID = 0, // Token: 0x04001C7A RID: 7290 [Token(Token = "0x4001C7A")] RecCenter = 1 } // Token: 0x020004A1 RID: 1185 [Token(Token = "0x20004A1")] [Flags] public enum JLKAMNFGKDG { // Token: 0x04001C7C RID: 7292 [Token(Token = "0x4001C7C")] INVALID = 0, // Token: 0x04001C7D RID: 7293 [Token(Token = "0x4001C7D")] HasVisitedCustomRoom = 1, // Token: 0x04001C7E RID: 7294 [Token(Token = "0x4001C7E")] Tutorial_CustomRoomBrowser = 2, // Token: 0x04001C7F RID: 7295 [Token(Token = "0x4001C7F")] Tutorial_CreateCustomRoom = 4, // Token: 0x04001C80 RID: 7296 [Token(Token = "0x4001C80")] HasUsedUGCShortcut = 8, // Token: 0x04001C81 RID: 7297 [Token(Token = "0x4001C81")] HasLearnedAboutNewWatch_2018_04_23 = 16, // Token: 0x04001C82 RID: 7298 [Token(Token = "0x4001C82")] HasLearnedAboutNewWatch_2018_08_20 = 32 } // Token: 0x020004A2 RID: 1186 [Token(Token = "0x20004A2")] [Serializable] public class VOClip { // Token: 0x1700062A RID: 1578 // (get) Token: 0x060022E0 RID: 8928 RVA: 0x0009122C File Offset: 0x0008F42C [Token(Token = "0x1700062A")] public RecRoomAudioClip AudioClip { [Token(Token = "0x60022E0")] [Address(RVA = "0x3C39A0", Offset = "0x3C23A0", VA = "0x1803C39A0")] get { return this.recClip; } } // Token: 0x060022E1 RID: 8929 RVA: 0x00091240 File Offset: 0x0008F440 [Token(Token = "0x60022E1")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public VOClip() { } // Token: 0x04001C83 RID: 7299 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4001C83")] [SerializeField] private RecRoomAudioClip recClip; // Token: 0x04001C84 RID: 7300 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4001C84")] public float preDuration; // Token: 0x04001C85 RID: 7301 [global::Cpp2IlInjected.FieldOffset(Offset = "0x1C")] [Token(Token = "0x4001C85")] public float postDuration; } // Token: 0x020004A3 RID: 1187 [Token(Token = "0x20004A3")] public enum PKHLMAEGIKG { // Token: 0x04001C87 RID: 7303 [Token(Token = "0x4001C87")] NUX_INTRO, // Token: 0x04001C88 RID: 7304 [Token(Token = "0x4001C88")] NUX_MIRROR, // Token: 0x04001C89 RID: 7305 [Token(Token = "0x4001C89")] NUX_BULLETIN_BOARD, // Token: 0x04001C8A RID: 7306 [Token(Token = "0x4001C8A")] NUX_WATCH } // Token: 0x020004A4 RID: 1188 [Token(Token = "0x20004A4")] [CompilerGenerated] private sealed class COPEILOMEMB { // Token: 0x060022E2 RID: 8930 RVA: 0x00091254 File Offset: 0x0008F454 [Token(Token = "0x60022E2")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public COPEILOMEMB() { } // Token: 0x060022E3 RID: 8931 RVA: 0x00091268 File Offset: 0x0008F468 [Token(Token = "0x60022E3")] [Address(RVA = "0x19FEBA0", Offset = "0x19FD5A0", VA = "0x1819FEBA0")] internal void b__0(bool hasSetPassword) { string text = this.eventName; string text2 = "GGF_" + text; bool flag = this.<>4__this.IsTutorialComplete(TutorialManager.PKHLMAEGIKG.NUX_MIRROR); bool flag2 = this.<>4__this.IsTutorialComplete(TutorialManager.PKHLMAEGIKG.NUX_WATCH); float time = Time.time; TutorialManager tutorialManager = this.<>4__this; bool fakeValue = PEGGCEDHBOF.DOOHKCANFLO.k__BackingField.fakeValue; bool flag3; if (flag3) { } int num = 0; CFLMJLFBOKH.MENPFMBALJP(text2, flag, flag2, time, hasSetPassword, num); } // Token: 0x04001C8B RID: 7307 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4001C8B")] public string eventName; // Token: 0x04001C8C RID: 7308 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4001C8C")] public TutorialManager <>4__this; // Token: 0x04001C8D RID: 7309 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4001C8D")] public bool? isJuniorAccount; } // Token: 0x020004A6 RID: 1190 [Token(Token = "0x20004A6")] [CompilerGenerated] private sealed class PLHMJBHGCNK { // Token: 0x060022EA RID: 8938 RVA: 0x00091438 File Offset: 0x0008F638 [Token(Token = "0x60022EA")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public PLHMJBHGCNK() { } // Token: 0x060022EB RID: 8939 RVA: 0x0009144C File Offset: 0x0008F64C [Token(Token = "0x60022EB")] [Address(RVA = "0x1A00550", Offset = "0x19FEF50", VA = "0x181A00550")] internal void b__0(Texture2D texture2D) { int num = 0; if (texture2D != num) { this.<>4__this.ONIMLKBKPPM.SetContent(texture2D); } this.<>4__this.ONIMLKBKPPM.BCKCEELIDLH = true; HelpPopup helpPopup = this.<>4__this.ONIMLKBKPPM; Vector3? vector = this.positionOverride; helpPopup.UpdatePosition(vector); } // Token: 0x04001C92 RID: 7314 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4001C92")] public TutorialManager <>4__this; // Token: 0x04001C93 RID: 7315 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4001C93")] public Vector3? positionOverride; } }