using System; using System.Collections; using System.Collections.Generic; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using AGUI.StackedUI; using CodeStage.AntiCheat.ObscuredTypes; using Cpp2IlInjected; using RecNet; using RecRoom; using RecRoom.Core; using RecRoom.Core.UI; using RecRoom.Systems; using RecRoom.UI; using UnityEngine; using UnityEngine.Events; using UnityEngine.SceneManagement; // Token: 0x02000499 RID: 1177 [Token(Token = "0x2000499")] public class TutorialManager : SingletonMonoBehaviour { // Token: 0x17000602 RID: 1538 // (get) Token: 0x060022C6 RID: 8902 RVA: 0x0008C644 File Offset: 0x0008A844 [Token(Token = "0x17000602")] public bool FMHMDIFGABF { [Token(Token = "0x60022C6")] [Address(RVA = "0x1329940", Offset = "0x1328940", VA = "0x181329940")] get { return this.voAudioSource.isPlaying || this.voAudioSource3D.isPlaying; } } // Token: 0x060022C7 RID: 8903 RVA: 0x0008C674 File Offset: 0x0008A874 [Token(Token = "0x60022C7")] [Address(RVA = "0x13285E0", Offset = "0x13275E0", VA = "0x1813285E0")] private static string PKEDNFLMEFP() { JJGHAFKJBEI doohkcanflo = PEGGCEDHBOF.DOOHKCANFLO; ObscuredInt k__BackingField = doohkcanflo.k__BackingField; bool fakeValueActive = doohkcanflo.k__BackingField.fakeValueActive; return string.Format("PromptedForEmail-{0}", fakeValueActive); } // Token: 0x17000603 RID: 1539 // (get) Token: 0x060022C8 RID: 8904 RVA: 0x0008C6B0 File Offset: 0x0008A8B0 // (set) Token: 0x060022C9 RID: 8905 RVA: 0x0008C6D4 File Offset: 0x0008A8D4 [Token(Token = "0x17000603")] public bool LJMAOMDLHKJ { [Token(Token = "0x60022C8")] [Address(RVA = "0x13296D0", Offset = "0x13286D0", VA = "0x1813296D0")] get { EFEFMHJPJIJ jfmoegcpnac = this.JFMOEGCPNAC; return TutorialManager.PKEDNFLMEFP() == 0; } [Token(Token = "0x60022C9")] [Address(RVA = "0x1329B50", Offset = "0x1328B50", VA = "0x181329B50")] set { EFEFMHJPJIJ jfmoegcpnac = this.JFMOEGCPNAC; string text = TutorialManager.PKEDNFLMEFP(); } } // Token: 0x17000604 RID: 1540 // (get) Token: 0x060022CA RID: 8906 RVA: 0x0008C6F8 File Offset: 0x0008A8F8 // (set) Token: 0x060022CB RID: 8907 RVA: 0x0008C70C File Offset: 0x0008A90C [Token(Token = "0x17000604")] public static bool? HGKAJBPOANK { [Token(Token = "0x60022CA")] [Address(RVA = "0x1329670", Offset = "0x1328670", VA = "0x181329670")] get; [Token(Token = "0x60022CB")] [Address(RVA = "0x1328A10", Offset = "0x1327A10", VA = "0x181328A10")] private set; } // Token: 0x17000605 RID: 1541 // (get) Token: 0x060022CC RID: 8908 RVA: 0x0008C720 File Offset: 0x0008A920 // (set) Token: 0x060022CD RID: 8909 RVA: 0x0008C744 File Offset: 0x0008A944 [Token(Token = "0x17000605")] private int MACONJHDIIP { [Token(Token = "0x60022CC")] [Address(RVA = "0x1326880", Offset = "0x1325880", VA = "0x181326880")] get { EFEFMHJPJIJ jfmoegcpnac = this.JFMOEGCPNAC; EFEFMHJPJIJ jfmoegcpnac2 = this.JFMOEGCPNAC; return 0; } [Token(Token = "0x60022CD")] [Address(RVA = "0x1327F50", Offset = "0x1326F50", VA = "0x181327F50")] set { EFEFMHJPJIJ jfmoegcpnac = this.JFMOEGCPNAC; EFEFMHJPJIJ jfmoegcpnac2 = this.JFMOEGCPNAC; } } // Token: 0x17000606 RID: 1542 // (get) Token: 0x060022CE RID: 8910 RVA: 0x0008C768 File Offset: 0x0008A968 // (set) Token: 0x060022CF RID: 8911 RVA: 0x0008C790 File Offset: 0x0008A990 [Token(Token = "0x17000606")] public static bool OEBADECGCFO { [Token(Token = "0x60022CE")] [Address(RVA = "0x13297B0", Offset = "0x13287B0", VA = "0x1813297B0")] get { EFEFMHJPJIJ efefmhjpjij; if (efefmhjpjij != 0) { int num = 0; if (num < efefmhjpjij) { num += num; num++; } } throw new NullReferenceException(); } [Token(Token = "0x60022CF")] [Address(RVA = "0x1329BE0", Offset = "0x1328BE0", VA = "0x181329BE0")] set { EFEFMHJPJIJ efefmhjpjij; if (efefmhjpjij != 0) { int num = 0; if (num < efefmhjpjij) { num += num; num++; } } } } // Token: 0x17000607 RID: 1543 // (get) Token: 0x060022D0 RID: 8912 RVA: 0x0008C7B8 File Offset: 0x0008A9B8 [Token(Token = "0x17000607")] private HelpPopup ONIMLKBKPPM { [Token(Token = "0x60022D0")] [Address(RVA = "0x13267E0", Offset = "0x13257E0", VA = "0x1813267E0")] 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: 0x060022D1 RID: 8913 RVA: 0x0008C7F4 File Offset: 0x0008A9F4 [Token(Token = "0x60022D1")] [Address(RVA = "0x1327A20", Offset = "0x1326A20", VA = "0x181327A20")] public bool IsLegacyTutorialComplete() { EFEFMHJPJIJ jfmoegcpnac = this.JFMOEGCPNAC; EFEFMHJPJIJ jfmoegcpnac2 = this.JFMOEGCPNAC; bool flag; return flag; } // Token: 0x060022D2 RID: 8914 RVA: 0x0008C81C File Offset: 0x0008AA1C [Token(Token = "0x60022D2")] [Address(RVA = "0x13290B0", Offset = "0x13280B0", VA = "0x1813290B0")] public void SetTutorialComplete(TutorialManager.PKHLMAEGIKG LOMJKMDDCKE) { int num = 0; long num2 = this.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num); this.FCEKNBFLNFI("TUTORIAL_COMPLETE_MASK", num2); } // Token: 0x060022D3 RID: 8915 RVA: 0x0008C848 File Offset: 0x0008AA48 [Token(Token = "0x60022D3")] [Address(RVA = "0x1329120", Offset = "0x1328120", VA = "0x181329120")] public void SetTutorialIncomplete(TutorialManager.PKHLMAEGIKG LOMJKMDDCKE) { int num = 0; long num2 = this.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num); this.FCEKNBFLNFI("TUTORIAL_COMPLETE_MASK", num2); } // Token: 0x060022D4 RID: 8916 RVA: 0x0008C874 File Offset: 0x0008AA74 [Token(Token = "0x60022D4")] [Address(RVA = "0x1327AB0", Offset = "0x1326AB0", VA = "0x181327AB0")] public bool IsTutorialComplete(TutorialManager.PKHLMAEGIKG LOMJKMDDCKE) { /* An exception occurred when decompiling this method (060022D4) 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: 0x060022D5 RID: 8917 RVA: 0x0008C890 File Offset: 0x0008AA90 [Token(Token = "0x60022D5")] [Address(RVA = "0x1327BC0", Offset = "0x1326BC0", VA = "0x181327BC0")] public void LogGGFAnalyticEvent(string IKPPEONHGFO) { TutorialManager.OMBEOOFMBDN ombeoofmbdn = new TutorialManager.OMBEOOFMBDN(); ombeoofmbdn.eventName = IKPPEONHGFO; ombeoofmbdn.<>4__this = this; bool inited = PEGGCEDHBOF.DOOHKCANFLO.k__BackingField.inited; int num = 0; ombeoofmbdn.isJuniorAccount = num; PMGCJEPKFOF pmgcjepkfof = MHOKOMMOGKM.PPKFJEINCCN(); Action action = delegate(bool hasSetPassword) { string eventName = ombeoofmbdn.eventName; string text = "GGF_" + eventName; TutorialManager <>4__this = ombeoofmbdn.<>4__this; int num2 = 0; long num3 = <>4__this.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num2); TutorialManager <>4__this2 = ombeoofmbdn.<>4__this; int num4 = 0; long num5 = <>4__this2.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num4); float time = Time.time; TutorialManager <>4__this3 = ombeoofmbdn.<>4__this; bool inited2 = PEGGCEDHBOF.DOOHKCANFLO.k__BackingField.inited; int num6 = 0; bool flag; if (flag) { } int num7 = 0; CFLMJLFBOKH.MENPFMBALJP(text, num6 != 0, num4 != 0, time, hasSetPassword, num7); }; if (num < ombeoofmbdn) { num += num; if (num == ombeoofmbdn) { pmgcjepkfof += pmgcjepkfof; throw new NullReferenceException(); } num++; } } // Token: 0x060022D6 RID: 8918 RVA: 0x0008C900 File Offset: 0x0008AB00 [Token(Token = "0x60022D6")] [Address(RVA = "0x1326710", Offset = "0x1325710", VA = "0x181326710")] private void FCEKNBFLNFI(string CIGCAIGPMBE, long ONGBFDACHHG) { EFEFMHJPJIJ jfmoegcpnac = this.JFMOEGCPNAC; int num = 0; if ((long)num < ONGBFDACHHG) { num += num; num++; } } // Token: 0x060022D7 RID: 8919 RVA: 0x0008C928 File Offset: 0x0008AB28 [Token(Token = "0x60022D7")] [Address(RVA = "0x13260F0", Offset = "0x13250F0", VA = "0x1813260F0")] private long AOGFGKLCCLI(string CIGCAIGPMBE, long OANDOPIEEPO = 0L) { EFEFMHJPJIJ jfmoegcpnac = this.JFMOEGCPNAC; int num = 0; if ((long)num < OANDOPIEEPO) { num += num; num++; } throw new NullReferenceException(); } // Token: 0x17000608 RID: 1544 // (get) Token: 0x060022D8 RID: 8920 RVA: 0x0008C950 File Offset: 0x0008AB50 [Token(Token = "0x17000608")] public bool KHLAMLKOBFD { [Token(Token = "0x60022D8")] [Address(RVA = "0x1329760", Offset = "0x1328760", VA = "0x181329760")] get { /* An exception occurred when decompiling this method (060022D8) 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: 0x17000609 RID: 1545 // (get) Token: 0x060022D9 RID: 8921 RVA: 0x0008C96C File Offset: 0x0008AB6C // (set) Token: 0x060022DA RID: 8922 RVA: 0x0008C9A8 File Offset: 0x0008ABA8 [Token(Token = "0x17000609")] public TutorialManager.HLGLKDBJNBD EONGHPACNOP { [Token(Token = "0x60022D9")] [Address(RVA = "0x13299E0", Offset = "0x13289E0", VA = "0x1813299E0")] get { int num = 0; long num2 = this.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num); EFEFMHJPJIJ jfmoegcpnac = this.JFMOEGCPNAC; EFEFMHJPJIJ jfmoegcpnac2 = this.JFMOEGCPNAC; return this.JGLKBGBOLEJ; } [Token(Token = "0x60022DA")] [Address(RVA = "0x1329D60", Offset = "0x1328D60", VA = "0x181329D60")] set { int num = 0; long num2 = this.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num); this.JGLKBGBOLEJ = value; } } // Token: 0x1700060A RID: 1546 // (get) Token: 0x060022DB RID: 8923 RVA: 0x0008C9E8 File Offset: 0x0008ABE8 [Token(Token = "0x1700060A")] public bool IEJFJPJCOCE { [Token(Token = "0x60022DB")] [Address(RVA = "0x1329AB0", Offset = "0x1328AB0", VA = "0x181329AB0")] get { return !SingletonMonoBehaviour.FFNIFALJLDD || SingletonMonoBehaviour.ONCPNMDGGKG.ACGDGBHFJFB; } } // Token: 0x060022DC RID: 8924 RVA: 0x0008CA10 File Offset: 0x0008AC10 [Token(Token = "0x60022DC")] [Address(RVA = "0x1327800", Offset = "0x1326800", VA = "0x181327800")] public void Initialize() { if (this.MACONJHDIIP < 5) { MFBGLIHGCGO playerCreatedEvent = Player.PlayerCreatedEvent; Action action = new Action(this.INLPNKIEHME); Player.PlayerCreatedEvent = MFBGLIHGCGO.BPJDFPACLMK(playerCreatedEvent, action); } SessionManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; int num = 0; if (!(instance != num)) { Debug.LogError("SessionManager is null"); } SessionManager instance2 = SingletonMonoBehaviour.ONCPNMDGGKG; Action action2 = new Action(this.PLCGPPEICMI); instance2.PLCGPPEICMI += action2; SceneManager.sceneUnloaded += new UnityAction(this.LMOACMLMLAB); float time = Time.time; this.NCJIALKBINK = time; } // Token: 0x060022DD RID: 8925 RVA: 0x0008CAA8 File Offset: 0x0008ACA8 [Token(Token = "0x60022DD")] [Address(RVA = "0x1326230", Offset = "0x1325230", VA = "0x181326230", Slot = "4")] protected override void Awake() { base.Awake(); EFEFMHJPJIJ efefmhjpjij; this.JFMOEGCPNAC = efefmhjpjij; } // Token: 0x060022DE RID: 8926 RVA: 0x0008CACC File Offset: 0x0008ACCC [Token(Token = "0x60022DE")] [Address(RVA = "0x1327FE0", Offset = "0x1326FE0", VA = "0x181327FE0", Slot = "5")] protected override void OnDestroy() { base.OnDestroy(); IKAEDJBFIMM felghamabdl = this.FELGHAMABDL; this.FELGHAMABDL = (ulong)0L; if (felghamabdl != 0) { } MFBGLIHGCGO staticLockedToolPickedUpEvent = Tool.StaticLockedToolPickedUpEvent; Action action = new Action(this.GJMFCAEFBJO); Tool.StaticLockedToolPickedUpEvent = MFBGLIHGCGO.GMNMHGMFGOL(staticLockedToolPickedUpEvent, action); MFBGLIHGCGO playerCreatedEvent = Player.PlayerCreatedEvent; Action action2 = new Action(this.INLPNKIEHME); Player.PlayerCreatedEvent = MFBGLIHGCGO.GMNMHGMFGOL(playerCreatedEvent, action2); Player k__BackingField = Player.k__BackingField; int num = 0; if (k__BackingField != num) { PlayerUI playerUI = Player.k__BackingField.playerUI; int num2 = 0; if (playerUI != num2) { int num3 = 0; if (playerUI != num3) { Action action3 = new Action(this.HNBELILEPLG); } } } SessionManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; int num4 = 0; if (instance != num4) { SessionManager instance2 = SingletonMonoBehaviour.ONCPNMDGGKG; Action action4 = new Action(this.PLCGPPEICMI); instance2.PLCGPPEICMI -= action4; } SceneManager.sceneUnloaded -= new UnityAction(this.LMOACMLMLAB); } // Token: 0x060022DF RID: 8927 RVA: 0x0008CBD4 File Offset: 0x0008ADD4 [Token(Token = "0x60022DF")] [Address(RVA = "0x13274B0", Offset = "0x13264B0", VA = "0x1813274B0")] public bool HasUserTried(TutorialManager.JLKAMNFGKDG JJGHIEJCCDA) { EFEFMHJPJIJ jfmoegcpnac = this.JFMOEGCPNAC; EFEFMHJPJIJ jfmoegcpnac2 = this.JFMOEGCPNAC; Debug.LogWarning("TutorialManager: failed to get 'user tried' flag - recroomprefs not ready"); throw new NullReferenceException(); } // Token: 0x060022E0 RID: 8928 RVA: 0x0008CC04 File Offset: 0x0008AE04 [Token(Token = "0x60022E0")] [Address(RVA = "0x1327DE0", Offset = "0x1326DE0", VA = "0x181327DE0")] public void MarkUserTried(TutorialManager.JLKAMNFGKDG JJGHIEJCCDA, bool NFEDLKIHEOC = true) { EFEFMHJPJIJ jfmoegcpnac = this.JFMOEGCPNAC; EFEFMHJPJIJ jfmoegcpnac2 = this.JFMOEGCPNAC; if (!NFEDLKIHEOC) { } EFEFMHJPJIJ jfmoegcpnac3 = this.JFMOEGCPNAC; } // Token: 0x060022E1 RID: 8929 RVA: 0x0008CC3C File Offset: 0x0008AE3C [Token(Token = "0x60022E1")] [Address(RVA = "0x1328730", Offset = "0x1327730", VA = "0x181328730")] private void PLCGPPEICMI() { CIIBGMBOFEI ciibgmbofei = Matchmaking.BBJAEJHMAPB; Player k__BackingField = Player.k__BackingField; int num = 0; if (k__BackingField != num) { PlayerUI playerUI = Player.k__BackingField.playerUI; int num2 = 0; if (playerUI != num2) { int num3 = 0; if (playerUI != num3) { Action action = new Action(this.HNBELILEPLG); } } } } // Token: 0x060022E2 RID: 8930 RVA: 0x0008CCAC File Offset: 0x0008AEAC [Token(Token = "0x60022E2")] [Address(RVA = "0x1327B60", Offset = "0x1326B60", VA = "0x181327B60")] private void LMOACMLMLAB(Scene LHECBPFGEMH) { if (this.voAudioSource.isPlaying) { throw new NullReferenceException(); } if (this.voAudioSource3D.isPlaying) { this.voAudioSource3D.Stop(); return; } } // Token: 0x060022E3 RID: 8931 RVA: 0x0008CCE8 File Offset: 0x0008AEE8 [Token(Token = "0x60022E3")] [Address(RVA = "0x13270D0", Offset = "0x13260D0", VA = "0x1813270D0")] private void HNBELILEPLG(bool BKJBMEGABAD) { EFEFMHJPJIJ efefmhjpjij; if (BKJBMEGABAD && efefmhjpjij != 0) { int num = 0; if (num < efefmhjpjij) { num += num; num++; } if (efefmhjpjij == 0) { EFEFMHJPJIJ efefmhjpjij2; if (efefmhjpjij2 != 0 && num < typeof(EFEFMHJPJIJ).TypeHandle) { num += num; num++; } SplitTesting instance = SingletonMonoBehaviour.ONCPNMDGGKG; bool flag; if (flag) { WatchUI.BFPPPLIJIGC.GetFlowByType().ShowScreenAndGoToPlayMenu(); } } } } // Token: 0x060022E4 RID: 8932 RVA: 0x0008CD4C File Offset: 0x0008AF4C [Token(Token = "0x60022E4")] [Address(RVA = "0x1327670", Offset = "0x1326670", VA = "0x181327670")] private void INLPNKIEHME(Player IEKDDPPNFPF) { int num = 0; if (IEKDDPPNFPF != num && this.MACONJHDIIP < 5) { MFBGLIHGCGO staticLockedToolPickedUpEvent = Tool.StaticLockedToolPickedUpEvent; Action action = new Action(this.GJMFCAEFBJO); Tool.StaticLockedToolPickedUpEvent = MFBGLIHGCGO.GMNMHGMFGOL(staticLockedToolPickedUpEvent, action); MFBGLIHGCGO staticLockedToolPickedUpEvent2 = Tool.StaticLockedToolPickedUpEvent; Action action2 = new Action(this.GJMFCAEFBJO); Tool.StaticLockedToolPickedUpEvent = MFBGLIHGCGO.BPJDFPACLMK(staticLockedToolPickedUpEvent2, action2); } } // Token: 0x060022E5 RID: 8933 RVA: 0x0008CDB4 File Offset: 0x0008AFB4 [Token(Token = "0x60022E5")] [Address(RVA = "0x1326BF0", Offset = "0x1325BF0", VA = "0x181326BF0")] 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 num2 = this.MACONJHDIIP; EFEFMHJPJIJ jfmoegcpnac = this.JFMOEGCPNAC; if (num2 != 0) { EFEFMHJPJIJ jfmoegcpnac2 = this.JFMOEGCPNAC; int num3 = num2 + 1; } int num4 = this.MACONJHDIIP; MFBGLIHGCGO staticLockedToolPickedUpEvent = Tool.StaticLockedToolPickedUpEvent; Action action = new Action(this.GJMFCAEFBJO); Tool.StaticLockedToolPickedUpEvent = MFBGLIHGCGO.GMNMHGMFGOL(staticLockedToolPickedUpEvent, action); MFBGLIHGCGO playerCreatedEvent = Player.PlayerCreatedEvent; Action action2 = new Action(this.INLPNKIEHME); Player.PlayerCreatedEvent = MFBGLIHGCGO.GMNMHGMFGOL(playerCreatedEvent, action2); MFBGLIHGCGO postReleaseEvent = EGFEJGHDNAI.PostReleaseEvent; Action action3 = new Action(this.PDEEFICICFG); MFBGLIHGCGO mfbglihgcgo = MFBGLIHGCGO.BPJDFPACLMK(postReleaseEvent, action3); EGFEJGHDNAI.PostReleaseEvent = mfbglihgcgo; GameObject mgepikojfin = this.MGEPIKOJFIN; int num5 = 0; if (mgepikojfin != num5) { global::UnityEngine.Object.Destroy(this.MGEPIKOJFIN); } GameObject gameObject = global::UnityEngine.Object.Instantiate(this.dropItemNotePrefab); this.MGEPIKOJFIN = gameObject; gameObject.GetComponent().RefreshNote(EGFEJGHDNAI); TutorialManager.CKHIGCFIFJP ckhigcfifjp; ckhigcfifjp.System.IDisposable.Dispose(); ckhigcfifjp.<>1__state = (int)((ulong)0L); ckhigcfifjp.<>4__this = this; ckhigcfifjp.tool = EGFEJGHDNAI; Coroutine coroutine = base.StartCoroutine(ckhigcfifjp); } } } // Token: 0x060022E6 RID: 8934 RVA: 0x0008CEFC File Offset: 0x0008B0FC [Token(Token = "0x60022E6")] [Address(RVA = "0x13261C0", Offset = "0x13251C0", VA = "0x1813261C0")] private IEnumerator AOMPDNOCIPD(Tool EGFEJGHDNAI) { /* An exception occurred when decompiling this method (060022E6) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator TutorialManager::AOMPDNOCIPD(Tool) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(CKHIGCFIFJP::System.IDisposable.Dispose, ldloc:CKHIGCFIFJP(var_0)) stfld:TutorialManager(CKHIGCFIFJP::<>4__this, ldloc:CKHIGCFIFJP(var_0), ldloc:TutorialManager(this)) stfld:int32(CKHIGCFIFJP::<>1__state, ldloc:CKHIGCFIFJP(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:Tool(CKHIGCFIFJP::tool, ldloc:CKHIGCFIFJP(var_0), ldloc:Tool(EGFEJGHDNAI)) } 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: 0x060022E7 RID: 8935 RVA: 0x0008CF28 File Offset: 0x0008B128 [Token(Token = "0x60022E7")] [Address(RVA = "0x13284D0", Offset = "0x13274D0", VA = "0x1813284D0")] private void PDEEFICICFG(Tool EGFEJGHDNAI) { GameObject mgepikojfin = this.MGEPIKOJFIN; int num = 0; if (mgepikojfin != num) { MFBGLIHGCGO postReleaseEvent = EGFEJGHDNAI.PostReleaseEvent; Action action = new Action(this.PDEEFICICFG); MFBGLIHGCGO mfbglihgcgo = MFBGLIHGCGO.GMNMHGMFGOL(postReleaseEvent, action); EGFEJGHDNAI.PostReleaseEvent = mfbglihgcgo; global::UnityEngine.Object.Destroy(this.MGEPIKOJFIN); } } // Token: 0x060022E8 RID: 8936 RVA: 0x0008CF80 File Offset: 0x0008B180 [Token(Token = "0x60022E8")] [Address(RVA = "0x1326FD0", Offset = "0x1325FD0", VA = "0x181326FD0")] public IKAEDJBFIMM GetHelpTexture(TutorialManager.DDDLEBIENKF BEACPPIDKKB, [Optional] PlatformManager.LDIIFDDCKCN? LPBLKPHDFPD) { return this.helpPopupConfigs.IKEDMJHLJEA(BEACPPIDKKB, LPBLKPHDFPD); } // Token: 0x1700060B RID: 1547 // (get) Token: 0x060022E9 RID: 8937 RVA: 0x0008CFA0 File Offset: 0x0008B1A0 // (set) Token: 0x060022EA RID: 8938 RVA: 0x0008CFB4 File Offset: 0x0008B1B4 [Token(Token = "0x1700060B")] private IKAEDJBFIMM OLGBPIPPLIG { [Token(Token = "0x60022E9")] [Address(RVA = "0x4177B0", Offset = "0x4167B0", VA = "0x1804177B0")] get { return this.FELGHAMABDL; } [Token(Token = "0x60022EA")] [Address(RVA = "0x13266B0", Offset = "0x13256B0", VA = "0x1813266B0")] set { IKAEDJBFIMM felghamabdl = this.FELGHAMABDL; this.FELGHAMABDL = value; if (felghamabdl != 0) { } } } // Token: 0x060022EB RID: 8939 RVA: 0x0008CFD4 File Offset: 0x0008B1D4 [Token(Token = "0x60022EB")] [Address(RVA = "0x1329190", Offset = "0x1328190", VA = "0x181329190")] public HelpPopup ShowHelpPopup(TutorialManager.DDDLEBIENKF BEACPPIDKKB, [Optional] Vector3? FHDBEPINLBG, [Optional] PlatformManager.LDIIFDDCKCN? LPBLKPHDFPD) { HelpPopupConfigs helpPopupConfigs = this.helpPopupConfigs; IKAEDJBFIMM felghamabdl = this.FELGHAMABDL; IKAEDJBFIMM ikaedjbfimm; this.FELGHAMABDL = ikaedjbfimm; 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: 0x060022EC RID: 8940 RVA: 0x0008D024 File Offset: 0x0008B224 [Token(Token = "0x60022EC")] [Address(RVA = "0x1327580", Offset = "0x1326580", VA = "0x181327580")] public void HideHelpPopup() { HelpPopup helpPopup = this.ONIMLKBKPPM; int num = 0; helpPopup.BCKCEELIDLH = num != 0; } // Token: 0x060022ED RID: 8941 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x60022ED")] [Address(RVA = "0x13292F0", Offset = "0x13282F0", VA = "0x1813292F0")] public void ShowScreensHelpPopup(TutorialManager.DDDLEBIENKF BEACPPIDKKB) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x060022EE RID: 8942 RVA: 0x0008D048 File Offset: 0x0008B248 [Token(Token = "0x60022EE")] [Address(RVA = "0x13275B0", Offset = "0x13265B0", VA = "0x1813275B0")] public void HideScreensHelpPopup() { ScreenHUD screenModeHUD = SingletonMonoBehaviour.ONCPNMDGGKG.screenModeHUD; int num = 0; if (screenModeHUD != num) { screenModeHUD.DisableTutorialDialog(); return; } } // Token: 0x060022EF RID: 8943 RVA: 0x0008D07C File Offset: 0x0008B27C [Token(Token = "0x60022EF")] [Address(RVA = "0x13269F0", Offset = "0x13259F0", VA = "0x1813269F0")] private ScreenHUDDialog.OBELDOKFOCI? GHDPKLGILJE(TutorialManager.DDDLEBIENKF BEACPPIDKKB) { InputManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; 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.RightHandPickupToolPreciseButton); 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: 0x060022F0 RID: 8944 RVA: 0x0008D0D8 File Offset: 0x0008B2D8 [Token(Token = "0x60022F0")] [Address(RVA = "0x1327B60", Offset = "0x1326B60", VA = "0x181327B60")] public void StopVO() { if (this.voAudioSource.isPlaying) { throw new NullReferenceException(); } if (this.voAudioSource3D.isPlaying) { this.voAudioSource3D.Stop(); return; } } // Token: 0x060022F1 RID: 8945 RVA: 0x0008D114 File Offset: 0x0008B314 [Token(Token = "0x60022F1")] [Address(RVA = "0x1326FF0", Offset = "0x1325FF0", VA = "0x181326FF0")] 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.ONCPNMDGGKG.GFMHKKKEOGE; return tutorialAudioConfig.IPOIMPIGBJJ(gfmhkkkeoge); } // Token: 0x060022F2 RID: 8946 RVA: 0x0008D174 File Offset: 0x0008B374 [Token(Token = "0x60022F2")] [Address(RVA = "0x1328C50", Offset = "0x1327C50", VA = "0x181328C50")] public AudioSource PlayTutorialVO(TutorialManager.LFBAKFELNDP BFLJAONGKCB) { RecRoomAudioClip tutorialAudio = this.GetTutorialAudio(BFLJAONGKCB); return this.PlayVO(tutorialAudio); } // Token: 0x060022F3 RID: 8947 RVA: 0x0008D190 File Offset: 0x0008B390 [Token(Token = "0x60022F3")] [Address(RVA = "0x1328F80", Offset = "0x1327F80", VA = "0x181328F80")] public IEnumerator RunPlayVOClip(RecRoomAudioClip LIEBGLIAJIA) { /* An exception occurred when decompiling this method (060022F3) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator TutorialManager::RunPlayVOClip(RecRoomAudioClip) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(GLBHEKMCAIP::System.IDisposable.Dispose, ldloc:GLBHEKMCAIP(var_0)) stfld:TutorialManager(GLBHEKMCAIP::<>4__this, ldloc:GLBHEKMCAIP(var_0), ldloc:TutorialManager(this)) stfld:int32(GLBHEKMCAIP::<>1__state, ldloc:GLBHEKMCAIP(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:RecRoomAudioClip(GLBHEKMCAIP::audioClip, ldloc:GLBHEKMCAIP(var_0), ldloc:RecRoomAudioClip(LIEBGLIAJIA)) } 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: 0x060022F4 RID: 8948 RVA: 0x0008D1BC File Offset: 0x0008B3BC [Token(Token = "0x60022F4")] [Address(RVA = "0x1328EA0", Offset = "0x1327EA0", VA = "0x181328EA0")] public IEnumerator RunPlayVOClipOnScheduler(RecRoomAudioClip LIEBGLIAJIA) { /* An exception occurred when decompiling this method (060022F4) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1 TutorialManager::RunPlayVOClipOnScheduler(RecRoomAudioClip) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(DFLIMFPPDNM::System.IDisposable.Dispose, ldloc:DFLIMFPPDNM(var_0)) stfld:TutorialManager(DFLIMFPPDNM::<>4__this, ldloc:DFLIMFPPDNM(var_0), ldloc:TutorialManager(this)) stfld:int32(DFLIMFPPDNM::<>1__state, ldloc:DFLIMFPPDNM(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:RecRoomAudioClip(DFLIMFPPDNM::audioClip, ldloc:DFLIMFPPDNM(var_0), ldloc:RecRoomAudioClip(LIEBGLIAJIA)) } 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: 0x060022F5 RID: 8949 RVA: 0x0008D1E8 File Offset: 0x0008B3E8 [Token(Token = "0x60022F5")] [Address(RVA = "0x1329060", Offset = "0x1328060", VA = "0x181329060")] public IEnumerator RunVODelay() { /* An exception occurred when decompiling this method (060022F5) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator TutorialManager::RunVODelay() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(EBFEPLMCEIN::System.IDisposable.Dispose, ldloc:EBFEPLMCEIN(var_0)) stfld:int32(EBFEPLMCEIN::<>1__state, ldloc:EBFEPLMCEIN(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](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: 0x060022F6 RID: 8950 RVA: 0x0008D204 File Offset: 0x0008B404 [Token(Token = "0x60022F6")] [Address(RVA = "0x1328F10", Offset = "0x1327F10", VA = "0x181328F10")] public IEnumerator RunPlayVOClip(TutorialManager.LFBAKFELNDP BFLJAONGKCB) { /* An exception occurred when decompiling this method (060022F6) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator TutorialManager::RunPlayVOClip(TutorialManager/LFBAKFELNDP) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(LAKGFFLDJHD::System.IDisposable.Dispose, ldloc:LAKGFFLDJHD(var_1)) stfld:TutorialManager(LAKGFFLDJHD::<>4__this, ldloc:LAKGFFLDJHD(var_1), ldloc:TutorialManager(this)) stfld:int32(LAKGFFLDJHD::<>1__state, ldloc:LAKGFFLDJHD(var_1), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:LFBAKFELNDP(LAKGFFLDJHD::audioType, ldloc:LAKGFFLDJHD(var_1), ldloc:LFBAKFELNDP(BFLJAONGKCB)) } 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: 0x060022F7 RID: 8951 RVA: 0x0008D230 File Offset: 0x0008B430 [Token(Token = "0x60022F7")] [Address(RVA = "0x1328FF0", Offset = "0x1327FF0", VA = "0x181328FF0")] public IEnumerator RunPlayVO(TutorialManager.VOClip BEFFMNENBPA) { /* An exception occurred when decompiling this method (060022F7) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator TutorialManager::RunPlayVO(TutorialManager/VOClip) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(CCPLCKKEFFF::System.IDisposable.Dispose, ldloc:CCPLCKKEFFF(var_0)) stfld:TutorialManager(CCPLCKKEFFF::<>4__this, ldloc:CCPLCKKEFFF(var_0), ldloc:TutorialManager(this)) stfld:int32(CCPLCKKEFFF::<>1__state, ldloc:CCPLCKKEFFF(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:VOClip(CCPLCKKEFFF::vo, ldloc:CCPLCKKEFFF(var_0), ldloc:VOClip(BEFFMNENBPA)) } 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: 0x060022F8 RID: 8952 RVA: 0x0008D25C File Offset: 0x0008B45C [Token(Token = "0x60022F8")] [Address(RVA = "0x1328C80", Offset = "0x1327C80", VA = "0x181328C80")] 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: 0x1700060C RID: 1548 // (get) Token: 0x060022F9 RID: 8953 RVA: 0x0008D350 File Offset: 0x0008B550 [Token(Token = "0x1700060C")] public bool NFFFMEBIJPA { [Token(Token = "0x60022F9")] [Address(RVA = "0x1329980", Offset = "0x1328980", VA = "0x181329980")] get { TeachableMoment paihflhbpcc = this.PAIHFLHBPCC; int num = 0; return paihflhbpcc != num; } } // Token: 0x060022FA RID: 8954 RVA: 0x0008D370 File Offset: 0x0008B570 [Token(Token = "0x60022FA")] [Address(RVA = "0x21B6570", Offset = "0x21B5570", VA = "0x1821B6570")] public bool IsTeachableMomentOfTypePlaying() where T : TeachableMoment { int num = 0; return this != num; } // Token: 0x060022FB RID: 8955 RVA: 0x0008D388 File Offset: 0x0008B588 [Token(Token = "0x60022FB")] [Address(RVA = "0x1328E50", Offset = "0x1327E50", VA = "0x181328E50")] public void RegisterTeachableMoment(TeachableMoment KCCDGPFJCKP) { bool flag = ECNNGIFNNNM.KFDLNLFOGBN(this.EFDGLLOBFHD, KCCDGPFJCKP); } // Token: 0x060022FC RID: 8956 RVA: 0x0008D3A4 File Offset: 0x0008B5A4 [Token(Token = "0x60022FC")] [Address(RVA = "0x1329530", Offset = "0x1328530", VA = "0x181329530")] public void UnregisterTeachableMoment(TeachableMoment KCCDGPFJCKP) { bool flag = this.EFDGLLOBFHD.Remove(KCCDGPFJCKP); ECNNGIFNNNM.OHDOOOKOMNB(this.EFDGLLOBFHD); } // Token: 0x060022FD RID: 8957 RVA: 0x0008D3D0 File Offset: 0x0008B5D0 [Token(Token = "0x60022FD")] [Address(RVA = "0x21B6650", Offset = "0x21B5650", VA = "0x1821B6650")] public bool TryTeachableMoment() where T : TeachableMoment { bool flag; if (!flag) { return flag; } bool flag2; return flag2; } // Token: 0x060022FE RID: 8958 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x60022FE")] [Address(RVA = "0x1E62CE0", Offset = "0x1E61CE0", VA = "0x181E62CE0")] public T GetTeachableMoment() where T : TeachableMoment { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x060022FF RID: 8959 RVA: 0x0008D3EC File Offset: 0x0008B5EC [Token(Token = "0x60022FF")] [Address(RVA = "0x1326910", Offset = "0x1325910", VA = "0x181326910")] 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: 0x06002300 RID: 8960 RVA: 0x0008D434 File Offset: 0x0008B634 [Token(Token = "0x6002300")] [Address(RVA = "0x1329440", Offset = "0x1328440", VA = "0x181329440")] 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: 0x06002301 RID: 8961 RVA: 0x0008D478 File Offset: 0x0008B678 [Token(Token = "0x6002301")] [Address(RVA = "0x1328A70", Offset = "0x1327A70", VA = "0x181328A70")] private void PPOFFIBGBKE(TeachableMoment KCCDGPFJCKP) { this.PAIHFLHBPCC = KCCDGPFJCKP; if (KCCDGPFJCKP.JIBNEIKDLGJ) { MFBGLIHGCGO playerDestroyedEvent = Player.PlayerDestroyedEvent; Action action = new Action(this.NNHJFOAAOEA); Player.PlayerDestroyedEvent = MFBGLIHGCGO.BPJDFPACLMK(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; } } TutorialManager.MKBBPAHCJKA mkbbpahcjka; mkbbpahcjka.System.IDisposable.Dispose(); mkbbpahcjka.<>1__state = (int)((ulong)0L); mkbbpahcjka.<>4__this = this; Coroutine coroutine = base.StartCoroutine(mkbbpahcjka); this.MFCBDENGGBO = coroutine; } // Token: 0x06002302 RID: 8962 RVA: 0x0008D51C File Offset: 0x0008B71C [Token(Token = "0x6002302")] [Address(RVA = "0x1327F00", Offset = "0x1326F00", VA = "0x181327F00")] private void NNHJFOAAOEA(Player IEKDDPPNFPF) { TeachableMoment paihflhbpcc = this.PAIHFLHBPCC; this.CancelTeachableMomentIfActive(paihflhbpcc); } // Token: 0x06002303 RID: 8963 RVA: 0x0008D540 File Offset: 0x0008B740 [Token(Token = "0x6002303")] [Address(RVA = "0x1327660", Offset = "0x1326660", VA = "0x181327660")] private void IAGJLHLEPIC() { TeachableMoment paihflhbpcc = this.PAIHFLHBPCC; this.CancelTeachableMomentIfActive(paihflhbpcc); } // Token: 0x06002304 RID: 8964 RVA: 0x0008D55C File Offset: 0x0008B75C [Token(Token = "0x6002304")] [Address(RVA = "0x1326B90", Offset = "0x1325B90", VA = "0x181326B90")] private IEnumerator GJAOKBBGLJP() { /* An exception occurred when decompiling this method (06002304) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator TutorialManager::GJAOKBBGLJP() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(MKBBPAHCJKA::System.IDisposable.Dispose, ldloc:MKBBPAHCJKA(var_0)) stfld:int32(MKBBPAHCJKA::<>1__state, ldloc:MKBBPAHCJKA(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:TutorialManager(MKBBPAHCJKA::<>4__this, ldloc:MKBBPAHCJKA(var_0), ldloc:TutorialManager(this)) } 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: 0x06002305 RID: 8965 RVA: 0x0008D580 File Offset: 0x0008B780 [Token(Token = "0x6002305")] [Address(RVA = "0x1326300", Offset = "0x1325300", VA = "0x181326300")] 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.LCFNEFFEAJF aahgighaifi = this.PAIHFLHBPCC.AAHGIGHAIFI; int num3 = 0; if (this != num3) { Coroutine mfcbdenggbo = this.MFCBDENGGBO; base.StopCoroutine(mfcbdenggbo); IEnumerator llcpaneakml = this.LLCPANEAKML; base.StopCoroutine(llcpaneakml); } MFBGLIHGCGO playerDestroyedEvent = Player.PlayerDestroyedEvent; Action action = new Action(this.NNHJFOAAOEA); Player.PlayerDestroyedEvent = MFBGLIHGCGO.GMNMHGMFGOL(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: 0x06002306 RID: 8966 RVA: 0x0008D694 File Offset: 0x0008B894 [Token(Token = "0x6002306")] [Address(RVA = "0x13295A0", Offset = "0x13285A0", VA = "0x1813295A0")] public TutorialManager() { ulong num; this.screensHelpPopupPosition = num; this.screensHelpPopupPosition.y = (float)0; this.FCBHBAIIKPN = true; this.JGLKBGBOLEJ = (TutorialManager.HLGLKDBJNBD)((ulong)100L); List list = new List(); this.EFDGLLOBFHD = list; base..ctor(); } // Token: 0x06002307 RID: 8967 RVA: 0x0000220F File Offset: 0x0000040F // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x6002307")] [Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0")] static TutorialManager() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002308 RID: 8968 RVA: 0x0008D6D8 File Offset: 0x0008B8D8 [Token(Token = "0x6002308")] [Address(RVA = "0x1327B10", Offset = "0x1326B10", VA = "0x181327B10")] [CompilerGenerated] private bool KGDHFOLJACD() { if (this.voAudioSource.isPlaying) { } return this.voAudioSource3D.isPlaying; } // Token: 0x04001AAC RID: 6828 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4001AAC")] [SerializeField] [Header("Audio")] private AudioSource voAudioSource; // Token: 0x04001AAD RID: 6829 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4001AAD")] [SerializeField] private AudioSource voAudioSource3D; // Token: 0x04001AAE RID: 6830 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x4001AAE")] [SerializeField] private TutorialAudioConfigs tutorialAudioConfigs; // Token: 0x04001AAF RID: 6831 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x4001AAF")] [SerializeField] [NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)] private SubtitlePlayer subtitlePlayer; // Token: 0x04001AB0 RID: 6832 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x4001AB0")] [SerializeField] [Header("Help Popup")] private HelpPopup helpPopupPrefab; // Token: 0x04001AB1 RID: 6833 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x4001AB1")] [SerializeField] private HelpPopupConfigs helpPopupConfigs; // Token: 0x04001AB2 RID: 6834 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x4001AB2")] [SerializeField] private GameObject dropItemNotePrefab; // Token: 0x04001AB3 RID: 6835 [global::Cpp2IlInjected.FieldOffset(Offset = "0x50")] [Token(Token = "0x4001AB3")] private GameObject MGEPIKOJFIN; // Token: 0x04001AB4 RID: 6836 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x4001AB4")] [SerializeField] private Vector2 screensHelpPopupPosition; // Token: 0x04001AB5 RID: 6837 [Token(Token = "0x4001AB5")] private const string JCFLNDELFIG = "USER_TRACKING"; // Token: 0x04001AB6 RID: 6838 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x4001AB6")] private float NCJIALKBINK; // Token: 0x04001AB8 RID: 6840 [Token(Token = "0x4001AB8")] private const int FMJBGAIGMEE = 5; // Token: 0x04001AB9 RID: 6841 [Token(Token = "0x4001AB9")] private const string OBIODNNLFCO = "PICKED_UP_STICKY_TOOL_BEFORE"; // Token: 0x04001ABA RID: 6842 [Token(Token = "0x4001ABA")] private const string JHGKOFNDLJG = "HAS_OPENED_WATCH_MENU_BEFORE"; // Token: 0x04001ABB RID: 6843 [global::Cpp2IlInjected.FieldOffset(Offset = "0x68")] [Token(Token = "0x4001ABB")] private HelpPopup HPMMCMLIIML; // Token: 0x04001ABC RID: 6844 [Token(Token = "0x4001ABC")] private const string AKELNNOMFOE = "TUTORIAL_COMPLETE_MASK"; // Token: 0x04001ABD RID: 6845 [Token(Token = "0x4001ABD")] private const int LPCOFPALPEE = 0; // Token: 0x04001ABE RID: 6846 [global::Cpp2IlInjected.FieldOffset(Offset = "0x70")] [Token(Token = "0x4001ABE")] private bool FCBHBAIIKPN; // Token: 0x04001ABF RID: 6847 [global::Cpp2IlInjected.FieldOffset(Offset = "0x74")] [Token(Token = "0x4001ABF")] private TutorialManager.HLGLKDBJNBD JGLKBGBOLEJ; // Token: 0x04001AC0 RID: 6848 [Token(Token = "0x4001AC0")] public const string OOBEFLOW_PREF = "Recroom.OOBE"; // Token: 0x04001AC1 RID: 6849 [global::Cpp2IlInjected.FieldOffset(Offset = "0x78")] [Token(Token = "0x4001AC1")] private EFEFMHJPJIJ JFMOEGCPNAC; // Token: 0x04001AC2 RID: 6850 [global::Cpp2IlInjected.FieldOffset(Offset = "0x80")] [Token(Token = "0x4001AC2")] private IKAEDJBFIMM FELGHAMABDL; // Token: 0x04001AC3 RID: 6851 [Token(Token = "0x4001AC3")] private const float JNJNLECDOGG = 1f; // Token: 0x04001AC4 RID: 6852 [global::Cpp2IlInjected.FieldOffset(Offset = "0x88")] [Token(Token = "0x4001AC4")] private List EFDGLLOBFHD; // Token: 0x04001AC5 RID: 6853 [global::Cpp2IlInjected.FieldOffset(Offset = "0x90")] [Token(Token = "0x4001AC5")] private TeachableMoment PAIHFLHBPCC; // Token: 0x04001AC6 RID: 6854 [global::Cpp2IlInjected.FieldOffset(Offset = "0x98")] [Token(Token = "0x4001AC6")] private Coroutine MFCBDENGGBO; // Token: 0x04001AC7 RID: 6855 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA0")] [Token(Token = "0x4001AC7")] private IEnumerator LLCPANEAKML; // Token: 0x04001AC8 RID: 6856 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA8")] [Token(Token = "0x4001AC8")] private DateTime MKKFDDNEEFP; // Token: 0x0200049A RID: 1178 [Token(Token = "0x200049A")] public enum DDDLEBIENKF { // Token: 0x04001ACA RID: 6858 [Token(Token = "0x4001ACA")] TeleportButton, // Token: 0x04001ACB RID: 6859 [Token(Token = "0x4001ACB")] SwipeButton, // Token: 0x04001ACC RID: 6860 [Token(Token = "0x4001ACC")] GrabButton, // Token: 0x04001ACD RID: 6861 [Token(Token = "0x4001ACD")] DropItemButton, // Token: 0x04001ACE RID: 6862 [Token(Token = "0x4001ACE")] OpenWatch, // Token: 0x04001ACF RID: 6863 [Token(Token = "0x4001ACF")] Laser, // Token: 0x04001AD0 RID: 6864 [Token(Token = "0x4001AD0")] Stop, // Token: 0x04001AD1 RID: 6865 [Token(Token = "0x4001AD1")] FistBump, // Token: 0x04001AD2 RID: 6866 [Token(Token = "0x4001AD2")] ShakeHands, // Token: 0x04001AD3 RID: 6867 [Token(Token = "0x4001AD3")] WalkButton } // Token: 0x0200049B RID: 1179 [Token(Token = "0x200049B")] public enum LFBAKFELNDP { // Token: 0x04001AD5 RID: 6869 [Token(Token = "0x4001AD5")] Great = 5, // Token: 0x04001AD6 RID: 6870 [Token(Token = "0x4001AD6")] Perfect, // Token: 0x04001AD7 RID: 6871 [Token(Token = "0x4001AD7")] LookAtWristToViewWatch = 25, // Token: 0x04001AD8 RID: 6872 [Token(Token = "0x4001AD8")] OpenWatch = 31, // Token: 0x04001AD9 RID: 6873 [Token(Token = "0x4001AD9")] PleaseEnterYourBirthday = 43, // Token: 0x04001ADA RID: 6874 [Token(Token = "0x4001ADA")] Thanks, // Token: 0x04001ADB RID: 6875 [Token(Token = "0x4001ADB")] RegisterNonJunior, // Token: 0x04001ADC RID: 6876 [Token(Token = "0x4001ADC")] RegisterJunior, // Token: 0x04001ADD RID: 6877 [Token(Token = "0x4001ADD")] Excellent, // Token: 0x04001ADE RID: 6878 [Token(Token = "0x4001ADE")] VerifyAccount = 66, // Token: 0x04001ADF RID: 6879 [Token(Token = "0x4001ADF")] ThereAreTwoWaysToMove = 178, // Token: 0x04001AE0 RID: 6880 [Token(Token = "0x4001AE0")] PickWhichWayYoudLikeToMove, // Token: 0x04001AE1 RID: 6881 [Token(Token = "0x4001AE1")] WeRecommendTeleport, // Token: 0x04001AE2 RID: 6882 [Token(Token = "0x4001AE2")] YouCanChangeBetweenWalkingAndTeleporting, // Token: 0x04001AE3 RID: 6883 [Token(Token = "0x4001AE3")] ExploreNUX_WelcomeToRecRoom = 190, // Token: 0x04001AE4 RID: 6884 [Token(Token = "0x4001AE4")] ExploreNUX_ThisIsYourDormRoom, // Token: 0x04001AE5 RID: 6885 [Token(Token = "0x4001AE5")] ExploreNUX_FeelFreeToPlayAround, // Token: 0x04001AE6 RID: 6886 [Token(Token = "0x4001AE6")] WhatIsYourAge = 195, // Token: 0x04001AE7 RID: 6887 [Token(Token = "0x4001AE7")] WhatDoYouWantYourNameToBe, // Token: 0x04001AE8 RID: 6888 [Token(Token = "0x4001AE8")] FeelFreeToPlayAround, // Token: 0x04001AE9 RID: 6889 [Token(Token = "0x4001AE9")] UseMirrorToCustomizeLook = 200, // Token: 0x04001AEA RID: 6890 [Token(Token = "0x4001AEA")] WelcomeToPaintball, // Token: 0x04001AEB RID: 6891 [Token(Token = "0x4001AEB")] WhatWouldYouLikeYourPasswordToBe, // Token: 0x04001AEC RID: 6892 [Token(Token = "0x4001AEC")] DoYouWantUsToConnectYou = 220, // Token: 0x04001AED RID: 6893 [Token(Token = "0x4001AED")] WeNeedMoreInfo, // Token: 0x04001AEE RID: 6894 [Token(Token = "0x4001AEE")] LooksLikeYouKnowPlayers, // Token: 0x04001AEF RID: 6895 [Token(Token = "0x4001AEF")] WellLetYouKnowWhenFriendsJoin, // Token: 0x04001AF0 RID: 6896 [Token(Token = "0x4001AF0")] CompleteChallengesToEarnRewards = 230, // Token: 0x04001AF1 RID: 6897 [Token(Token = "0x4001AF1")] KeepCompletingChallengesToEarnRewards, // Token: 0x04001AF2 RID: 6898 [Token(Token = "0x4001AF2")] Mirror_FromTheMirror = 250, // Token: 0x04001AF3 RID: 6899 [Token(Token = "0x4001AF3")] Mirror_LookingGood, // Token: 0x04001AF4 RID: 6900 [Token(Token = "0x4001AF4")] BulletinBoard_AtTheCommunityBoard = 300, // Token: 0x04001AF5 RID: 6901 [Token(Token = "0x4001AF5")] Intro_WelcomeToRecRoom = 350, // Token: 0x04001AF6 RID: 6902 [Token(Token = "0x4001AF6")] Intro_ThisIsYourDormRoom, // Token: 0x04001AF7 RID: 6903 [Token(Token = "0x4001AF7")] Watch_BeforeYouHeadOut = 400, // Token: 0x04001AF8 RID: 6904 [Token(Token = "0x4001AF8")] Watch_ThisIsYourWatchMenu, // Token: 0x04001AF9 RID: 6905 [Token(Token = "0x4001AF9")] Watch_TryTappingPlay, // Token: 0x04001AFA RID: 6906 [Token(Token = "0x4001AFA")] Watch_ExcellentRooms } // Token: 0x0200049C RID: 1180 [Token(Token = "0x200049C")] public enum HLGLKDBJNBD { // Token: 0x04001AFC RID: 6908 [Token(Token = "0x4001AFC")] NotRan, // Token: 0x04001AFD RID: 6909 [Token(Token = "0x4001AFD")] TutorialStart, // Token: 0x04001AFE RID: 6910 [Token(Token = "0x4001AFE")] Registration, // Token: 0x04001AFF RID: 6911 [Token(Token = "0x4001AFF")] ChooseVRPlayerType = 77, // Token: 0x04001B00 RID: 6912 [Token(Token = "0x4001B00")] IosImportFriends, // Token: 0x04001B01 RID: 6913 [Token(Token = "0x4001B01")] ExploratoryTutorials = 80, // Token: 0x04001B02 RID: 6914 [Token(Token = "0x4001B02")] CohortNUX, // Token: 0x04001B03 RID: 6915 [Token(Token = "0x4001B03")] DressUpChoice = 83, // Token: 0x04001B04 RID: 6916 [Token(Token = "0x4001B04")] DressUpMirror, // Token: 0x04001B05 RID: 6917 [Token(Token = "0x4001B05")] ConfirmAvatar, // Token: 0x04001B06 RID: 6918 [Token(Token = "0x4001B06")] Complete = 100 } // Token: 0x0200049D RID: 1181 [Token(Token = "0x200049D")] [Flags] public enum PBGCGJOEICJ { // Token: 0x04001B08 RID: 6920 [Token(Token = "0x4001B08")] INVALID = 0, // Token: 0x04001B09 RID: 6921 [Token(Token = "0x4001B09")] RecCenter = 1 } // Token: 0x0200049E RID: 1182 [Token(Token = "0x200049E")] [Flags] public enum JLKAMNFGKDG { // Token: 0x04001B0B RID: 6923 [Token(Token = "0x4001B0B")] INVALID = 0, // Token: 0x04001B0C RID: 6924 [Token(Token = "0x4001B0C")] HasVisitedCustomRoom = 1, // Token: 0x04001B0D RID: 6925 [Token(Token = "0x4001B0D")] Tutorial_CustomRoomBrowser = 2, // Token: 0x04001B0E RID: 6926 [Token(Token = "0x4001B0E")] Tutorial_CreateCustomRoom = 4, // Token: 0x04001B0F RID: 6927 [Token(Token = "0x4001B0F")] HasUsedUGCShortcut = 8, // Token: 0x04001B10 RID: 6928 [Token(Token = "0x4001B10")] HasLearnedAboutNewWatch_2018_04_23 = 16, // Token: 0x04001B11 RID: 6929 [Token(Token = "0x4001B11")] HasLearnedAboutNewWatch_2018_08_20 = 32 } // Token: 0x0200049F RID: 1183 [Token(Token = "0x200049F")] [Serializable] public class VOClip { // Token: 0x1700060D RID: 1549 // (get) Token: 0x06002309 RID: 8969 RVA: 0x0008D708 File Offset: 0x0008B908 [Token(Token = "0x1700060D")] public RecRoomAudioClip AudioClip { [Token(Token = "0x6002309")] [Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")] get { return this.recClip; } } // Token: 0x0600230A RID: 8970 RVA: 0x0008D71C File Offset: 0x0008B91C [Token(Token = "0x600230A")] [Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")] public VOClip() { } // Token: 0x04001B12 RID: 6930 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4001B12")] [SerializeField] private RecRoomAudioClip recClip; // Token: 0x04001B13 RID: 6931 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4001B13")] public float preDuration; // Token: 0x04001B14 RID: 6932 [global::Cpp2IlInjected.FieldOffset(Offset = "0x1C")] [Token(Token = "0x4001B14")] public float postDuration; } // Token: 0x020004A0 RID: 1184 [Token(Token = "0x20004A0")] public enum PKHLMAEGIKG { // Token: 0x04001B16 RID: 6934 [Token(Token = "0x4001B16")] NUX_INTRO, // Token: 0x04001B17 RID: 6935 [Token(Token = "0x4001B17")] NUX_MIRROR, // Token: 0x04001B18 RID: 6936 [Token(Token = "0x4001B18")] NUX_BULLETIN_BOARD, // Token: 0x04001B19 RID: 6937 [Token(Token = "0x4001B19")] NUX_WATCH, // Token: 0x04001B1A RID: 6938 [Token(Token = "0x4001B1A")] NUX_MICROPHONE, // Token: 0x04001B1B RID: 6939 [Token(Token = "0x4001B1B")] NUX_CODE_OF_CONDUCT } // Token: 0x020004A1 RID: 1185 [Token(Token = "0x20004A1")] [CompilerGenerated] private sealed class OMBEOOFMBDN { // Token: 0x0600230B RID: 8971 RVA: 0x0008D730 File Offset: 0x0008B930 [Token(Token = "0x600230B")] [Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")] public OMBEOOFMBDN() { } // Token: 0x0600230C RID: 8972 RVA: 0x0008D744 File Offset: 0x0008B944 [Token(Token = "0x600230C")] [Address(RVA = "0x1316590", Offset = "0x1315590", VA = "0x181316590")] internal void b__0(bool hasSetPassword) { string text = this.eventName; string text2 = "GGF_" + text; TutorialManager tutorialManager = this.<>4__this; int num = 0; long num2 = tutorialManager.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num); TutorialManager tutorialManager2 = this.<>4__this; int num3 = 0; long num4 = tutorialManager2.AOGFGKLCCLI("TUTORIAL_COMPLETE_MASK", (long)num3); float time = Time.time; TutorialManager tutorialManager3 = this.<>4__this; bool inited = PEGGCEDHBOF.DOOHKCANFLO.k__BackingField.inited; int num5 = 0; bool flag; if (flag) { } int num6 = 0; CFLMJLFBOKH.MENPFMBALJP(text2, num5 != 0, num3 != 0, time, hasSetPassword, num6); } // Token: 0x04001B1C RID: 6940 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4001B1C")] public string eventName; // Token: 0x04001B1D RID: 6941 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4001B1D")] public TutorialManager <>4__this; // Token: 0x04001B1E RID: 6942 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4001B1E")] public bool? isJuniorAccount; } // Token: 0x020004A3 RID: 1187 [Token(Token = "0x20004A3")] [CompilerGenerated] private sealed class PLHMJBHGCNK { // Token: 0x06002313 RID: 8979 RVA: 0x0008D934 File Offset: 0x0008BB34 [Token(Token = "0x6002313")] [Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")] public PLHMJBHGCNK() { } // Token: 0x06002314 RID: 8980 RVA: 0x0008D948 File Offset: 0x0008BB48 [Token(Token = "0x6002314")] [Address(RVA = "0x13167F0", Offset = "0x13157F0", VA = "0x1813167F0")] 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: 0x04001B23 RID: 6947 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4001B23")] public TutorialManager <>4__this; // Token: 0x04001B24 RID: 6948 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4001B24")] public Vector3? positionOverride; } }