using System; using System.Collections.Generic; using System.Runtime.CompilerServices; using Cpp2IlInjected; using RecRoom.Core; using RecRoom.Core.VR.UI; using UnityEngine; using UnityEngine.Events; using UnityEngine.SceneManagement; namespace RecRoom.Tutorials { // Token: 0x020029A1 RID: 10657 [Token(Token = "0x20029A1")] public class TutorialPromptManager : SingletonMonoBehaviour { // Token: 0x170031ED RID: 12781 // (get) Token: 0x06011D9E RID: 73118 RVA: 0x00410CCC File Offset: 0x0040EECC [Token(Token = "0x170031ED")] public VRTutorialPromptDialog HBMAHACNIAK { [Token(Token = "0x6011D9E")] [Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")] get { return this.vrTutorialPromptDialog; } } // Token: 0x06011D9F RID: 73119 RVA: 0x00410CE0 File Offset: 0x0040EEE0 [Token(Token = "0x6011D9F")] [Address(RVA = "0x101F0E0", Offset = "0x101DEE0", VA = "0x18101F0E0", Slot = "4")] protected override void Awake() { SceneManager.sceneUnloaded += new UnityAction(this.LMOACMLMLAB); base.Awake(); } // Token: 0x06011DA0 RID: 73120 RVA: 0x00410D04 File Offset: 0x0040EF04 [Token(Token = "0x6011DA0")] [Address(RVA = "0x101F820", Offset = "0x101E620", VA = "0x18101F820", Slot = "5")] protected override void OnDestroy() { base.OnDestroy(); SceneManager.sceneUnloaded -= new UnityAction(this.LMOACMLMLAB); } // Token: 0x06011DA1 RID: 73121 RVA: 0x00410D28 File Offset: 0x0040EF28 [Token(Token = "0x6011DA1")] [Address(RVA = "0x101F8C0", Offset = "0x101E6C0", VA = "0x18101F8C0")] public CDJFFFCFLMF RunTutorialPrompt(TutorialPromptContext OGPDDBIIAEB) { HHKIEEPFDOH hhkieepfdoh = new HHKIEEPFDOH(); Scheduler instance = SingletonMonoBehaviour.ONCPNMDGGKG; TutorialPromptManager.AKCFHAFDIAM akcfhafdiam; akcfhafdiam.System.IDisposable.Dispose(); akcfhafdiam.<>1__state = (int)((ulong)0L); akcfhafdiam.<>4__this = this; akcfhafdiam.promptContext = OGPDDBIIAEB; akcfhafdiam.newActivePromptPromise = hhkieepfdoh; KFBABPAPIMB kfbabpapimb = instance.Run(akcfhafdiam); throw new NullReferenceException(); } // Token: 0x06011DA2 RID: 73122 RVA: 0x00410D74 File Offset: 0x0040EF74 [Token(Token = "0x6011DA2")] [Address(RVA = "0x101F1C0", Offset = "0x101DFC0", VA = "0x18101F1C0")] public void FinishTutorialPrompt(TutorialPromptManager.ANINMLFKAPH HEMFNKBMEMG) { int num = (int)(HEMFNKBMEMG + 1); if (num != 0) { if (num == 0) { HHKIEEPFDOH ajfhafeemne = SingletonMonoBehaviour.ONCPNMDGGKG.AJFHAFEEMNE; while (ajfhafeemne == 0) { } ajfhafeemne.KBPKIDJEOFB(); return; } if (num == 0) { HHKIEEPFDOH ajfhafeemne2 = SingletonMonoBehaviour.ONCPNMDGGKG.AJFHAFEEMNE; while (ajfhafeemne2 == 0) { } ajfhafeemne2.OOOIENHGNCA(); return; } if (num == 1) { SingletonMonoBehaviour.ONCPNMDGGKG.HideTutorialPrompt(); return; } } } // Token: 0x06011DA3 RID: 73123 RVA: 0x00410DD4 File Offset: 0x0040EFD4 [Token(Token = "0x6011DA3")] [Address(RVA = "0x101F180", Offset = "0x101DF80", VA = "0x18101F180")] public void CancelTutorialPrompt() { HHKIEEPFDOH ajfhafeemne = this.AJFHAFEEMNE; if (ajfhafeemne != 0) { ajfhafeemne.KBPKIDJEOFB(); return; } } // Token: 0x06011DA4 RID: 73124 RVA: 0x00410DF4 File Offset: 0x0040EFF4 [Token(Token = "0x6011DA4")] [Address(RVA = "0x101F1A0", Offset = "0x101DFA0", VA = "0x18101F1A0")] public void CompleteTutorialPrompt() { HHKIEEPFDOH ajfhafeemne = this.AJFHAFEEMNE; if (ajfhafeemne != 0) { ajfhafeemne.OOOIENHGNCA(); return; } } // Token: 0x06011DA5 RID: 73125 RVA: 0x00410E14 File Offset: 0x0040F014 [Token(Token = "0x6011DA5")] [Address(RVA = "0x101F2E0", Offset = "0x101E0E0", VA = "0x18101F2E0")] public void HideTutorialPrompt() { ScreenHUD screenModeHUD; for (;;) { if (this.ILGHJBJMEJC != 0) { this.ILGHJBJMEJC = (ulong)0L; } if (!SingletonMonoBehaviour.ONCPNMDGGKG.ACGDGBHFJFB) { break; } screenModeHUD = SingletonMonoBehaviour.ONCPNMDGGKG.screenModeHUD; int num = 0; if (screenModeHUD != num) { goto Block_2; } } this.vrTutorialPromptDialog.Hide(); return; Block_2: screenModeHUD.DisableTutorialPromptDialog(); } // Token: 0x06011DA6 RID: 73126 RVA: 0x00410E70 File Offset: 0x0040F070 [Token(Token = "0x6011DA6")] [Address(RVA = "0x101F500", Offset = "0x101E300", VA = "0x18101F500")] private IEnumerator MGKBPDFMKIF(TutorialPromptContext OGPDDBIIAEB, HHKIEEPFDOH AILBAPGINGC) { /* An exception occurred when decompiling this method (06011DA6) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1 RecRoom.Tutorials.TutorialPromptManager::MGKBPDFMKIF(RecRoom.Tutorials.TutorialPromptContext,HHKIEEPFDOH) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(AKCFHAFDIAM::System.IDisposable.Dispose, ldloc:AKCFHAFDIAM(var_0)) stfld:TutorialPromptManager(AKCFHAFDIAM::<>4__this, ldloc:AKCFHAFDIAM(var_0), ldloc:TutorialPromptManager(this)) stfld:TutorialPromptContext(AKCFHAFDIAM::promptContext, ldloc:AKCFHAFDIAM(var_0), ldloc:TutorialPromptContext(OGPDDBIIAEB)) stfld:int32(AKCFHAFDIAM::<>1__state, ldloc:AKCFHAFDIAM(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:HHKIEEPFDOH(AKCFHAFDIAM::newActivePromptPromise, ldloc:AKCFHAFDIAM(var_0), ldloc:HHKIEEPFDOH(AILBAPGINGC)) } 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: 0x06011DA7 RID: 73127 RVA: 0x00410EA0 File Offset: 0x0040F0A0 [Token(Token = "0x6011DA7")] [Address(RVA = "0x101F180", Offset = "0x101DF80", VA = "0x18101F180")] private void LMOACMLMLAB(Scene LHECBPFGEMH) { HHKIEEPFDOH ajfhafeemne = this.AJFHAFEEMNE; if (ajfhafeemne != 0) { ajfhafeemne.KBPKIDJEOFB(); return; } } // Token: 0x06011DA8 RID: 73128 RVA: 0x00410EC0 File Offset: 0x0040F0C0 [Token(Token = "0x6011DA8")] [Address(RVA = "0x101F5F0", Offset = "0x101E3F0", VA = "0x18101F5F0")] private void OIPMLAEEHNM(TutorialPromptContext OGPDDBIIAEB) { int num; int num2; do { num = 0; if ((OGPDDBIIAEB.debugLog ? 1 : 0) != num) { Debug.LogError(OGPDDBIIAEB.promptType + ": Cleanup"); } this.HideTutorialPrompt(); List lffinojgpme = this.LFFINOJGPME; bool flag; if (flag) { num += num; num++; while (num == 0) { } num++; num += 19; } num2 = 0; } while (num != 0); this.LFFINOJGPME.Clear(); this.AJFHAFEEMNE = num2; } // Token: 0x06011DA9 RID: 73129 RVA: 0x00410F3C File Offset: 0x0040F13C [Token(Token = "0x6011DA9")] [Address(RVA = "0x101F410", Offset = "0x101E210", VA = "0x18101F410")] private void LNHNOJCFMLP(TutorialPromptContext OGPDDBIIAEB) { this.HideTutorialPrompt(); Scheduler instance = SingletonMonoBehaviour.ONCPNMDGGKG; TutorialPromptManager.KGKCGPDIEGJ kgkcgpdiegj; kgkcgpdiegj.System.IDisposable.Dispose(); kgkcgpdiegj.<>1__state = (int)((ulong)0L); kgkcgpdiegj.<>4__this = this; kgkcgpdiegj.promptContext = OGPDDBIIAEB; KFBABPAPIMB kfbabpapimb = instance.Run(kgkcgpdiegj); this.ILGHJBJMEJC = kfbabpapimb; } // Token: 0x06011DAA RID: 73130 RVA: 0x00410F88 File Offset: 0x0040F188 [Token(Token = "0x6011DAA")] [Address(RVA = "0x101F580", Offset = "0x101E380", VA = "0x18101F580")] private IEnumerator NOHNLGAGEEB(TutorialPromptContext OGPDDBIIAEB) { /* An exception occurred when decompiling this method (06011DAA) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1 RecRoom.Tutorials.TutorialPromptManager::NOHNLGAGEEB(RecRoom.Tutorials.TutorialPromptContext) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(KGKCGPDIEGJ::System.IDisposable.Dispose, ldloc:KGKCGPDIEGJ(var_0)) stfld:TutorialPromptManager(KGKCGPDIEGJ::<>4__this, ldloc:KGKCGPDIEGJ(var_0), ldloc:TutorialPromptManager(this)) stfld:int32(KGKCGPDIEGJ::<>1__state, ldloc:KGKCGPDIEGJ(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:TutorialPromptContext(KGKCGPDIEGJ::promptContext, ldloc:KGKCGPDIEGJ(var_0), ldloc:TutorialPromptContext(OGPDDBIIAEB)) } 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: 0x06011DAB RID: 73131 RVA: 0x00410FB4 File Offset: 0x0040F1B4 [Token(Token = "0x6011DAB")] [Address(RVA = "0x101F9C0", Offset = "0x101E7C0", VA = "0x18101F9C0")] public TutorialPromptManager() { List list = new List(); this.LFFINOJGPME = list; base..ctor(); } // Token: 0x0400B7E9 RID: 47081 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400B7E9")] [SerializeField] [Header("References")] private VRTutorialPromptDialog vrTutorialPromptDialog; // Token: 0x0400B7EA RID: 47082 [FieldOffset(Offset = "0x20")] [Token(Token = "0x400B7EA")] [SerializeField] [Header("Configs")] private TutorialPromptConfigs tutorialPromptConfigs; // Token: 0x0400B7EB RID: 47083 [FieldOffset(Offset = "0x28")] [Token(Token = "0x400B7EB")] private HHKIEEPFDOH AJFHAFEEMNE; // Token: 0x0400B7EC RID: 47084 [FieldOffset(Offset = "0x30")] [Token(Token = "0x400B7EC")] private KFBABPAPIMB ILGHJBJMEJC; // Token: 0x0400B7ED RID: 47085 [FieldOffset(Offset = "0x38")] [Token(Token = "0x400B7ED")] private List LFFINOJGPME; // Token: 0x020029A2 RID: 10658 [Token(Token = "0x20029A2")] public enum ANINMLFKAPH { // Token: 0x0400B7EF RID: 47087 [Token(Token = "0x400B7EF")] NONE = -1, // Token: 0x0400B7F0 RID: 47088 [Token(Token = "0x400B7F0")] CANCEL, // Token: 0x0400B7F1 RID: 47089 [Token(Token = "0x400B7F1")] COMPLETE, // Token: 0x0400B7F2 RID: 47090 [Token(Token = "0x400B7F2")] HIDE } // Token: 0x020029A3 RID: 10659 [Token(Token = "0x20029A3")] [CompilerGenerated] private sealed class KBIJJJHONKB { // Token: 0x06011DAC RID: 73132 RVA: 0x00410FD4 File Offset: 0x0040F1D4 [Token(Token = "0x6011DAC")] [Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")] public KBIJJJHONKB() { } // Token: 0x06011DAD RID: 73133 RVA: 0x00410FE8 File Offset: 0x0040F1E8 [Token(Token = "0x6011DAD")] [Address(RVA = "0x100C4D0", Offset = "0x100B2D0", VA = "0x18100C4D0")] internal void b__0() { TutorialPromptManager tutorialPromptManager = this.<>4__this; TutorialPromptContext tutorialPromptContext = this.promptContext; tutorialPromptManager.OIPMLAEEHNM(tutorialPromptContext); } // Token: 0x0400B7F3 RID: 47091 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400B7F3")] public TutorialPromptManager <>4__this; // Token: 0x0400B7F4 RID: 47092 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400B7F4")] public TutorialPromptContext promptContext; // Token: 0x0400B7F5 RID: 47093 [FieldOffset(Offset = "0x20")] [Token(Token = "0x400B7F5")] public HHKIEEPFDOH newActivePromptPromise; } // Token: 0x020029A4 RID: 10660 [Token(Token = "0x20029A4")] [CompilerGenerated] private sealed class EFIDKIOMNNN { // Token: 0x06011DAE RID: 73134 RVA: 0x00411010 File Offset: 0x0040F210 [Token(Token = "0x6011DAE")] [Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")] public EFIDKIOMNNN() { } // Token: 0x06011DAF RID: 73135 RVA: 0x00411024 File Offset: 0x0040F224 [Token(Token = "0x6011DAF")] [Address(RVA = "0x100ADF0", Offset = "0x1009BF0", VA = "0x18100ADF0")] internal bool b__1() { float time = Time.time; TutorialPromptManager.KBIJJJHONKB cs$<>8__locals = this.CS$<>8__locals1; TutorialPromptContext promptContext = cs$<>8__locals.promptContext; return time > promptContext.gracePeriod || !cs$<>8__locals.newActivePromptPromise.HLBOMBLINAL; } // Token: 0x0400B7F6 RID: 47094 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400B7F6")] public float startTime; // Token: 0x0400B7F7 RID: 47095 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400B7F7")] public TutorialPromptManager.KBIJJJHONKB CS$<>8__locals1; } } }