using System; using System.Collections; using System.Runtime.InteropServices; using Cpp2IlInjected; using RecRoom.Core.Animation; using RecRoom.Core.UI; using UnityEngine; namespace RecRoom.Tutorials { // Token: 0x020024E8 RID: 9448 [Token(Token = "0x20024E8")] [StructLayout(3)] public abstract class TutorialController : MonoBehaviour { // Token: 0x0601050D RID: 66829 RVA: 0x003D310C File Offset: 0x003D130C [Token(Token = "0x601050D")] [Address(RVA = "0x147FF40", Offset = "0x147E940", VA = "0x18147FF40", Slot = "4")] protected virtual void Awake() { HKKOHFHADKK hkkohfhadkk = new HKKOHFHADKK(); this.PEGJGMDGKJN = hkkohfhadkk; int num = 0; int num2 = 0; int num3 = 0; int num4 = 0; hkkohfhadkk.JEPMLPCOGNM((ushort)num2, num4, num3, num); HKKOHFHADKK pegjgmdgkjn = this.PEGJGMDGKJN; MIEIBBPMDMP.OKGCDFLPFOD okgcdflpfod = new MIEIBBPMDMP.OKGCDFLPFOD(this.IONOEIOCLLE); MIEIBBPMDMP.OKGCDFLPFOD okgcdflpfod2 = new MIEIBBPMDMP.OKGCDFLPFOD(this.CACOFNAFFEJ); MIEIBBPMDMP.KNFAKJMALJE knfakjmalje = new MIEIBBPMDMP.KNFAKJMALJE(this.HKJMFIJDDHC); HKKOHFHADKK pegjgmdgkjn2 = this.PEGJGMDGKJN; MIEIBBPMDMP.OKGCDFLPFOD okgcdflpfod3 = new MIEIBBPMDMP.OKGCDFLPFOD(this.CCKCEOBDIOF); MIEIBBPMDMP.OKGCDFLPFOD okgcdflpfod4 = new MIEIBBPMDMP.OKGCDFLPFOD(this.ENHOGLBAOGO); MIEIBBPMDMP.KNFAKJMALJE knfakjmalje2 = new MIEIBBPMDMP.KNFAKJMALJE(this.BJKJMBHDDLH); HKKOHFHADKK pegjgmdgkjn3 = this.PEGJGMDGKJN; MIEIBBPMDMP.OKGCDFLPFOD okgcdflpfod5 = new MIEIBBPMDMP.OKGCDFLPFOD(this.PCGMJKLFNJM); HKKOHFHADKK pegjgmdgkjn4 = this.PEGJGMDGKJN; MIEIBBPMDMP.OKGCDFLPFOD okgcdflpfod6 = new MIEIBBPMDMP.OKGCDFLPFOD(this.GJEHPCPGPLP); HKKOHFHADKK pegjgmdgkjn5 = this.PEGJGMDGKJN; int num5 = 0; pegjgmdgkjn5.PIEOGAPMGIH((ushort)num5); } // Token: 0x0601050E RID: 66830 RVA: 0x003D31EC File Offset: 0x003D13EC [Token(Token = "0x601050E")] [Address(RVA = "0x1480AA0", Offset = "0x147F4A0", VA = "0x181480AA0", Slot = "5")] protected virtual void Start() { TutorialManager instance = SingletonMonoBehaviour.Instance; this.OnDestroy(); bool flag; if (!flag) { HKKOHFHADKK pegjgmdgkjn = this.PEGJGMDGKJN; } } // Token: 0x0601050F RID: 66831 RVA: 0x003D3218 File Offset: 0x003D1418 [Token(Token = "0x601050F")] [Address(RVA = "0x1480B50", Offset = "0x147F550", VA = "0x181480B50", Slot = "6")] protected virtual void Update() { this.PEGJGMDGKJN.OPEMIFENIJM(); } // Token: 0x06010510 RID: 66832 RVA: 0x003D3238 File Offset: 0x003D1438 [Token(Token = "0x6010510")] [Address(RVA = "0x1480720", Offset = "0x147F120", VA = "0x181480720", Slot = "7")] protected virtual void OnDestroy() { if (this.PEGJGMDGKJN != 0 && this.EGIPDLIAKNF()) { HKKOHFHADKK pegjgmdgkjn = this.PEGJGMDGKJN; return; } } // Token: 0x06010511 RID: 66833 RVA: 0x003D3268 File Offset: 0x003D1468 [Token(Token = "0x6010511")] [Address(RVA = "0x1480420", Offset = "0x147EE20", VA = "0x181480420")] protected void FEKOJKJCFBH(string BOMMOMHFIGH, string AKLHFMGIICF) { HKKOHFHADKK pegjgmdgkjn = this.PEGJGMDGKJN; this.BOMMOMHFIGH = BOMMOMHFIGH; this.AKLHFMGIICF = AKLHFMGIICF; } // Token: 0x17002C54 RID: 11348 // (get) Token: 0x06010512 RID: 66834 [Token(Token = "0x17002C54")] protected abstract TutorialManager.PKHLMAEGIKG PPOOGDLMBJB { [Token(Token = "0x6010512")] [Address(Slot = "8")] get; } // Token: 0x06010513 RID: 66835 [Token(Token = "0x6010513")] [Address(Slot = "9")] protected abstract bool COAONLBBPAF(); // Token: 0x06010514 RID: 66836 [Token(Token = "0x6010514")] [Address(Slot = "10")] protected abstract bool EGIPDLIAKNF(); // Token: 0x17002C55 RID: 11349 // (get) Token: 0x06010515 RID: 66837 RVA: 0x003D3290 File Offset: 0x003D1490 [Token(Token = "0x17002C55")] protected virtual bool DJJKANKMOII { [Token(Token = "0x6010515")] [Address(RVA = "0x52F470", Offset = "0x52DE70", VA = "0x18052F470", Slot = "11")] get; } // Token: 0x06010516 RID: 66838 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6010516")] [Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "12")] protected virtual void HCIFEFFOKNB() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06010517 RID: 66839 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6010517")] [Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "13")] protected virtual void BMHJLHBDIJN() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06010518 RID: 66840 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6010518")] [Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "14")] protected virtual void MDPFCJILCON() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06010519 RID: 66841 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6010519")] [Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "15")] protected virtual void HOPFIHELGFE() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0601051A RID: 66842 RVA: 0x003D32A4 File Offset: 0x003D14A4 [Token(Token = "0x601051A")] [Address(RVA = "0xA69C00", Offset = "0xA68600", VA = "0x180A69C00")] private void IONOEIOCLLE(ushort IBCNKLKINAA, ushort HNEIFFDHGFO) { TutorialManager.PKHLMAEGIKG pkhlmaegikg = this.PPOOGDLMBJB; } // Token: 0x0601051B RID: 66843 RVA: 0x003D32B8 File Offset: 0x003D14B8 [Token(Token = "0x601051B")] [Address(RVA = "0x1480590", Offset = "0x147EF90", VA = "0x181480590")] private void HKJMFIJDDHC() { if (this.PPOOGDLMBJB != TutorialManager.PKHLMAEGIKG.NUX_INTRO) { HKKOHFHADKK pegjgmdgkjn = this.PEGJGMDGKJN; return; } } // Token: 0x0601051C RID: 66844 RVA: 0x003D32DC File Offset: 0x003D14DC [Token(Token = "0x601051C")] [Address(RVA = "0x9E3620", Offset = "0x9E2020", VA = "0x1809E3620")] private void CACOFNAFFEJ(ushort IBCNKLKINAA, ushort HNEIFFDHGFO) { TutorialManager.PKHLMAEGIKG pkhlmaegikg = this.PPOOGDLMBJB; } // Token: 0x0601051D RID: 66845 RVA: 0x003D32F0 File Offset: 0x003D14F0 [Token(Token = "0x601051D")] [Address(RVA = "0xAFCEB0", Offset = "0xAFB8B0", VA = "0x180AFCEB0")] private void CCKCEOBDIOF(ushort IBCNKLKINAA, ushort HNEIFFDHGFO) { TutorialManager.PKHLMAEGIKG pkhlmaegikg = this.PPOOGDLMBJB; } // Token: 0x0601051E RID: 66846 RVA: 0x003D3304 File Offset: 0x003D1504 [Token(Token = "0x601051E")] [Address(RVA = "0x14801C0", Offset = "0x147EBC0", VA = "0x1814801C0")] private void BJKJMBHDDLH() { if (this.COAONLBBPAF()) { HKKOHFHADKK pegjgmdgkjn = this.PEGJGMDGKJN; return; } } // Token: 0x0601051F RID: 66847 RVA: 0x003D3328 File Offset: 0x003D1528 [Token(Token = "0x601051F")] [Address(RVA = "0x14803E0", Offset = "0x147EDE0", VA = "0x1814803E0")] private void ENHOGLBAOGO(ushort IBCNKLKINAA, ushort HNEIFFDHGFO) { Coroutine iiblinldija = this.IIBLINLDIJA; if (iiblinldija != 0) { base.StopCoroutine(iiblinldija); this.IIBLINLDIJA = (ulong)0L; } TutorialManager.PKHLMAEGIKG pkhlmaegikg = this.PPOOGDLMBJB; } // Token: 0x06010520 RID: 66848 RVA: 0x003D3358 File Offset: 0x003D1558 [Token(Token = "0x6010520")] [Address(RVA = "0x14807A0", Offset = "0x147F1A0", VA = "0x1814807A0")] private void PCGMJKLFNJM(ushort IBCNKLKINAA, ushort HNEIFFDHGFO) { TutorialManager instance = SingletonMonoBehaviour.Instance; this.OnDestroy(); } // Token: 0x06010521 RID: 66849 RVA: 0x003D3378 File Offset: 0x003D1578 [Token(Token = "0x6010521")] [Address(RVA = "0x1480490", Offset = "0x147EE90", VA = "0x181480490")] private void GJEHPCPGPLP(ushort IBCNKLKINAA, ushort HNEIFFDHGFO) { string bommomhfigh = this.BOMMOMHFIGH; string text = "Error code " + bommomhfigh + ". Please contact us at recroom.happyfox.com"; ulong num; SingletonMonoBehaviour.Instance.AddPersistentNotification("An unexpected error occurred", text, this, num != 0UL); string bommomhfigh2 = this.BOMMOMHFIGH; Debug.LogError(this.AKLHFMGIICF + ": Error Code " + bommomhfigh2); } // Token: 0x06010522 RID: 66850 RVA: 0x003D33D4 File Offset: 0x003D15D4 [Token(Token = "0x6010522")] [Address(RVA = "0x1480600", Offset = "0x147F000", VA = "0x181480600")] protected Coroutine LCLHBENILIA(PlayerAnimationVignette ICAINNHGICK) { if (SingletonMonoBehaviour.Instance.ACGDGBHFJFB) { int num = 0; if (!(ICAINNHGICK == num)) { GPPHJKMNPJM k__BackingField = SingletonMonoBehaviour.Instance.screenController.k__BackingField; IEnumerator enumerator = ICAINNHGICK.FNAEOIGFMBJ(k__BackingField); return base.StartCoroutine(enumerator); } } throw new NullReferenceException(); } // Token: 0x06010523 RID: 66851 RVA: 0x003D3424 File Offset: 0x003D1624 [Token(Token = "0x6010523")] [Address(RVA = "0x1480230", Offset = "0x147EC30", VA = "0x181480230")] protected void DHMBKHOGOBM(TutorialController.BPKAEMAFDMG LOIIKGFHHAA) { Coroutine iiblinldija = this.IIBLINLDIJA; if (iiblinldija != 0) { base.StopCoroutine(iiblinldija); this.IIBLINLDIJA = (ulong)0L; } IEnumerator enumerator = LOIIKGFHHAA(); Coroutine coroutine = base.StartCoroutine(enumerator); this.IIBLINLDIJA = coroutine; } // Token: 0x06010524 RID: 66852 RVA: 0x003D3468 File Offset: 0x003D1668 [Token(Token = "0x6010524")] [Address(RVA = "0x146CC30", Offset = "0x146B630", VA = "0x18146CC30")] protected void DLDGMGCLNGJ() { Coroutine iiblinldija = this.IIBLINLDIJA; if (iiblinldija != 0) { base.StopCoroutine(iiblinldija); this.IIBLINLDIJA = (ulong)0L; } } // Token: 0x06010525 RID: 66853 RVA: 0x003D3490 File Offset: 0x003D1690 [Token(Token = "0x6010525")] [Address(RVA = "0x1480290", Offset = "0x147EC90", VA = "0x181480290")] protected void EHJIOHENLAB(string JKMKKAFNNEM, Sprite OBDFMDLNIBF, string NIIGHGBPIBC, Sprite BDHGHMIIIEP, string FNOLAOHKFMA, Sprite PBABAOKGJCF, int JMHKMOACHDG = -1) { if (SingletonMonoBehaviour.Instance.EBPFBFMJMBB || SingletonMonoBehaviour.Instance.k__BackingField.k__BackingField != IFDIGHKFEGF.TOUCH) { } SubtitleManager instance = SingletonMonoBehaviour.Instance; } // Token: 0x06010526 RID: 66854 RVA: 0x003D34C8 File Offset: 0x003D16C8 [Token(Token = "0x6010526")] [Address(RVA = "0x1472FD0", Offset = "0x14719D0", VA = "0x181472FD0")] protected void BFPHMBIBBJN() { SingletonMonoBehaviour.Instance.Hide(this); } // Token: 0x06010527 RID: 66855 RVA: 0x003D34E8 File Offset: 0x003D16E8 [Token(Token = "0x6010527")] [Address(RVA = "0x1480830", Offset = "0x147F230", VA = "0x181480830")] protected bool PKALBCOJOAL(SimpleVolume AOFAKGKOBOJ, Vector3 MOCICCABLIF, float ONGEHEBPGOE) { int num = 0; bool flag; if (!(AOFAKGKOBOJ == num) && flag) { Vector3 vector; float z = vector.z; float z2 = Vector3.up.z; float z3 = MOCICCABLIF.z; if (0 <= (int)ONGEHEBPGOE) { return true; } } throw new NullReferenceException(); } // Token: 0x06010528 RID: 66856 RVA: 0x003D3534 File Offset: 0x003D1734 [Token(Token = "0x6010528")] [Address(RVA = "0x3C1210", Offset = "0x3BFC10", VA = "0x1803C1210")] protected TutorialController() { } // Token: 0x0400AD6A RID: 44394 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x400AD6A")] private HKKOHFHADKK PEGJGMDGKJN; // Token: 0x0400AD6B RID: 44395 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x400AD6B")] private Coroutine IIBLINLDIJA; // Token: 0x0400AD6C RID: 44396 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x400AD6C")] private string BOMMOMHFIGH; // Token: 0x0400AD6D RID: 44397 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x400AD6D")] private string AKLHFMGIICF; // Token: 0x020024E9 RID: 9449 [Token(Token = "0x20024E9")] private enum AKDKPAEDBHJ { // Token: 0x0400AD70 RID: 44400 [Token(Token = "0x400AD70")] Inactive, // Token: 0x0400AD71 RID: 44401 [Token(Token = "0x400AD71")] WaitingForDependencies, // Token: 0x0400AD72 RID: 44402 [Token(Token = "0x400AD72")] Running, // Token: 0x0400AD73 RID: 44403 [Token(Token = "0x400AD73")] Completed, // Token: 0x0400AD74 RID: 44404 [Token(Token = "0x400AD74")] Error } // Token: 0x020024EA RID: 9450 [Token(Token = "0x20024EA")] protected sealed class BPKAEMAFDMG : MulticastDelegate { // Token: 0x06010529 RID: 66857 RVA: 0x003D3548 File Offset: 0x003D1748 [Token(Token = "0x6010529")] [Address(RVA = "0x3E5170", Offset = "0x3E3B70", VA = "0x1803E5170")] public BPKAEMAFDMG(object @object, IntPtr method) { this.method = method; this.m_target = @object; } // Token: 0x0601052A RID: 66858 RVA: 0x003D3564 File Offset: 0x003D1764 [Token(Token = "0x601052A")] [Address(RVA = "0x146BF00", Offset = "0x146A900", VA = "0x18146BF00", Slot = "13")] public IEnumerator Invoke() { /* An exception occurred when decompiling this method (0601052A) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator RecRoom.Tutorials.TutorialController/BPKAEMAFDMG::Invoke() ---> System.Exception: Basic block has to end with unconditional control flow. { IL_85: stloc:int32(var_1_88, add:int32(ldloc:int32(var_1_08), ldc.i4:int32(1))) } 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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 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: 0x0601052B RID: 66859 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x601052B")] [Address(RVA = "0x4340F0", Offset = "0x432AF0", VA = "0x1804340F0", Slot = "14")] public IAsyncResult BeginInvoke(AsyncCallback AFLPGGJMPOE, object FEDFKKMABOG) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0601052C RID: 66860 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x601052C")] [Address(RVA = "0x40BFF0", Offset = "0x40A9F0", VA = "0x18040BFF0", Slot = "15")] public IEnumerator EndInvoke(IAsyncResult GIAOBLMEMMI) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } } } }