Files
2026-04-08 23:40:05 +02:00

350 lines
15 KiB
C#

using System;
using System.Collections;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;
namespace RecRoom.Tutorials
{
// Token: 0x020024D2 RID: 9426
[Token(Token = "0x20024D2")]
[StructLayout(3)]
public class MirrorTutorial : TutorialController
{
// Token: 0x0601045E RID: 66654 RVA: 0x003D06E8 File Offset: 0x003CE8E8
[Token(Token = "0x601045E")]
[Address(RVA = "0x1472C30", Offset = "0x1471630", VA = "0x181472C30", Slot = "4")]
protected override void Awake()
{
base.Awake();
TutorialManager instance = SingletonMonoBehaviour.Instance;
this.OnDestroy();
bool flag;
if (!flag && SingletonMonoBehaviour.Instance.IsLegacyTutorialComplete())
{
TutorialManager instance2 = SingletonMonoBehaviour.Instance;
this.OnDestroy();
}
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.LFFMHLODNFD);
MIEIBBPMDMP.OKGCDFLPFOD okgcdflpfod2 = new MIEIBBPMDMP.OKGCDFLPFOD(this.BNGPLNFDFFK);
MIEIBBPMDMP.KNFAKJMALJE knfakjmalje = new MIEIBBPMDMP.KNFAKJMALJE(this.AFODFHBMFJO);
HKKOHFHADKK pegjgmdgkjn2 = this.PEGJGMDGKJN;
MIEIBBPMDMP.OKGCDFLPFOD okgcdflpfod3 = new MIEIBBPMDMP.OKGCDFLPFOD(this.OIDABGIOBKM);
MIEIBBPMDMP.OKGCDFLPFOD okgcdflpfod4 = new MIEIBBPMDMP.OKGCDFLPFOD(this.HKDBIHAMDCN);
HKKOHFHADKK pegjgmdgkjn3 = this.PEGJGMDGKJN;
HKKOHFHADKK pegjgmdgkjn4 = this.PEGJGMDGKJN;
HKKOHFHADKK pegjgmdgkjn5 = this.PEGJGMDGKJN;
MIEIBBPMDMP.OKGCDFLPFOD okgcdflpfod5 = new MIEIBBPMDMP.OKGCDFLPFOD(this.KHMHOGBCHKN);
MIEIBBPMDMP.OKGCDFLPFOD okgcdflpfod6 = new MIEIBBPMDMP.OKGCDFLPFOD(this.OGDGFCJKLKL);
HKKOHFHADKK pegjgmdgkjn6 = this.PEGJGMDGKJN;
HKKOHFHADKK pegjgmdgkjn7 = this.PEGJGMDGKJN;
int num5 = 0;
pegjgmdgkjn7.PIEOGAPMGIH((ushort)num5);
}
// Token: 0x0601045F RID: 66655 RVA: 0x003D080C File Offset: 0x003CEA0C
[Token(Token = "0x601045F")]
[Address(RVA = "0x146CD10", Offset = "0x146B710", VA = "0x18146CD10", Slot = "6")]
protected override void Update()
{
this.PEGJGMDGKJN.OPEMIFENIJM();
this.PEGJGMDGKJN.OPEMIFENIJM();
}
// Token: 0x06010460 RID: 66656 RVA: 0x003D0838 File Offset: 0x003CEA38
[Token(Token = "0x6010460")]
[Address(RVA = "0x14734C0", Offset = "0x1471EC0", VA = "0x1814734C0", Slot = "7")]
protected override void OnDestroy()
{
base.OnDestroy();
HKKOHFHADKK pegjgmdgkjn = this.PEGJGMDGKJN;
if (pegjgmdgkjn != 0)
{
int num = 0;
pegjgmdgkjn.PIEOGAPMGIH((ushort)num);
return;
}
}
// Token: 0x17002C32 RID: 11314
// (get) Token: 0x06010461 RID: 66657 RVA: 0x003D0860 File Offset: 0x003CEA60
[Token(Token = "0x17002C32")]
protected override TutorialManager.PKHLMAEGIKG PPOOGDLMBJB
{
[Token(Token = "0x6010461")]
[Address(RVA = "0x3E2800", Offset = "0x3E1200", VA = "0x1803E2800", Slot = "8")]
get
{
return TutorialManager.PKHLMAEGIKG.NUX_MIRROR;
}
}
// Token: 0x17002C33 RID: 11315
// (get) Token: 0x06010462 RID: 66658 RVA: 0x003D0870 File Offset: 0x003CEA70
[Token(Token = "0x17002C33")]
protected override bool DJJKANKMOII
{
[Token(Token = "0x6010462")]
[Address(RVA = "0x4405A0", Offset = "0x43EFA0", VA = "0x1804405A0", Slot = "11")]
get
{
return true;
}
}
// Token: 0x06010463 RID: 66659 RVA: 0x003D0880 File Offset: 0x003CEA80
[Token(Token = "0x6010463")]
[Address(RVA = "0x1473040", Offset = "0x1471A40", VA = "0x181473040", Slot = "9")]
protected override bool COAONLBBPAF()
{
TutorialManager instance = SingletonMonoBehaviour.Instance;
int num = 0;
return instance.IsTutorialComplete((TutorialManager.PKHLMAEGIKG)num);
}
// Token: 0x06010464 RID: 66660 RVA: 0x003D08A8 File Offset: 0x003CEAA8
[Token(Token = "0x6010464")]
[Address(RVA = "0x1473380", Offset = "0x1471D80", VA = "0x181473380", Slot = "14")]
protected override void MDPFCJILCON()
{
HKKOHFHADKK pegjgmdgkjn = this.PEGJGMDGKJN;
}
// Token: 0x06010465 RID: 66661 RVA: 0x003D08C4 File Offset: 0x003CEAC4
[Token(Token = "0x6010465")]
[Address(RVA = "0x14730B0", Offset = "0x1471AB0", VA = "0x1814730B0", Slot = "10")]
protected override bool EGIPDLIAKNF()
{
HKKOHFHADKK pegjgmdgkjn = this.PEGJGMDGKJN;
bool flag;
return flag;
}
// Token: 0x06010466 RID: 66662 RVA: 0x003D08E0 File Offset: 0x003CEAE0
[Token(Token = "0x6010466")]
[Address(RVA = "0x14731F0", Offset = "0x1471BF0", VA = "0x1814731F0")]
private void LFFMHLODNFD(ushort IBCNKLKINAA, ushort HNEIFFDHGFO)
{
LocalPlayerController instance = SingletonMonoBehaviour.Instance;
string text = "Walk towards ";
if (instance.FGAMGPEBMGE == LocalPlayerController.JJKKCDNKBJI.VR_TELEPORT)
{
text = "Teleport in front of ";
}
string text2 = text + "the Mirror to choose a new look.";
string text3 = "Press {0} and walk towards " + "the Mirror to choose a new look.";
Sprite sprite = SingletonMonoBehaviour.Instance.<PCNCCNKJIAP>k__BackingField.KGDLBEAPDFE(GAMNIEMGCBI.WalkAxis);
string text4 = "Press {0} and walk towards " + "the Mirror to choose a new look.";
Sprite sprite2 = NPILADHLMKC.KGDLBEAPDFE(NPILADHLMKC.BCDIKFOHNGE.Mobile_UI_Walk);
int num = 0;
ulong num2;
base.EHJIOHENLAB(text2, num, text3, sprite, text4, sprite2, (int)num2);
}
// Token: 0x06010467 RID: 66663 RVA: 0x003D0970 File Offset: 0x003CEB70
[Token(Token = "0x6010467")]
[Address(RVA = "0x1472B80", Offset = "0x1471580", VA = "0x181472B80")]
private void AFODFHBMFJO()
{
Transform transform = base.transform;
Vector3 vector;
float z = vector.z;
bool flag;
if (flag)
{
HKKOHFHADKK pegjgmdgkjn = this.PEGJGMDGKJN;
}
}
// Token: 0x06010468 RID: 66664 RVA: 0x003D09A0 File Offset: 0x003CEBA0
[Token(Token = "0x6010468")]
[Address(RVA = "0x1472FD0", Offset = "0x14719D0", VA = "0x181472FD0")]
private void BNGPLNFDFFK(ushort IBCNKLKINAA, ushort HNEIFFDHGFO)
{
SingletonMonoBehaviour.Instance.Hide(this);
}
// Token: 0x06010469 RID: 66665 RVA: 0x003D09C0 File Offset: 0x003CEBC0
[Token(Token = "0x6010469")]
[Address(RVA = "0x14733D0", Offset = "0x1471DD0", VA = "0x1814733D0")]
private void OIDABGIOBKM(ushort IBCNKLKINAA, ushort HNEIFFDHGFO)
{
TutorialController.BPKAEMAFDMG bpkaemafdmg;
bpkaemafdmg.method_ptr = ldftn(JBINBLPEHOD);
bpkaemafdmg.method = ldftn(JBINBLPEHOD);
bpkaemafdmg.m_target = this;
Coroutine iiblinldija = this.IIBLINLDIJA;
if (iiblinldija != 0)
{
base.StopCoroutine(iiblinldija);
this.IIBLINLDIJA = (ulong)0L;
}
IEnumerator enumerator = bpkaemafdmg();
Coroutine coroutine = base.StartCoroutine(enumerator);
this.IIBLINLDIJA = coroutine;
}
// Token: 0x0601046A RID: 66666 RVA: 0x003D0A20 File Offset: 0x003CEC20
[Token(Token = "0x601046A")]
[Address(RVA = "0x1473100", Offset = "0x1471B00", VA = "0x181473100")]
private IEnumerator JBINBLPEHOD()
{
/*
An exception occurred when decompiling this method (0601046A)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator RecRoom.Tutorials.MirrorTutorial::JBINBLPEHOD()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
call:void(BJDCGKPAANF::System.IDisposable.Dispose, ldloc:BJDCGKPAANF(var_0))
stfld:int32(BJDCGKPAANF::<>1__state, ldloc:BJDCGKPAANF(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0)))
stfld:MirrorTutorial(BJDCGKPAANF::<>4__this, ldloc:BJDCGKPAANF(var_0), ldloc:MirrorTutorial(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: 0x0601046B RID: 66667 RVA: 0x003D0A44 File Offset: 0x003CEC44
[Token(Token = "0x601046B")]
[Address(RVA = "0x146CC30", Offset = "0x146B630", VA = "0x18146CC30")]
private void HKDBIHAMDCN(ushort IBCNKLKINAA, ushort HNEIFFDHGFO)
{
Coroutine iiblinldija = this.IIBLINLDIJA;
if (iiblinldija != 0)
{
base.StopCoroutine(iiblinldija);
this.IIBLINLDIJA = (ulong)0L;
}
}
// Token: 0x0601046C RID: 66668 RVA: 0x003D0A6C File Offset: 0x003CEC6C
[Token(Token = "0x601046C")]
[Address(RVA = "0x1473160", Offset = "0x1471B60", VA = "0x181473160")]
private void KHMHOGBCHKN(ushort IBCNKLKINAA, ushort HNEIFFDHGFO)
{
TutorialController.BPKAEMAFDMG bpkaemafdmg;
bpkaemafdmg.method_ptr = ldftn(OPGEGPLEAOB);
bpkaemafdmg.method = ldftn(OPGEGPLEAOB);
bpkaemafdmg.m_target = this;
Coroutine iiblinldija = this.IIBLINLDIJA;
if (iiblinldija != 0)
{
base.StopCoroutine(iiblinldija);
this.IIBLINLDIJA = (ulong)0L;
}
IEnumerator enumerator = bpkaemafdmg();
Coroutine coroutine = base.StartCoroutine(enumerator);
this.IIBLINLDIJA = coroutine;
}
// Token: 0x0601046D RID: 66669 RVA: 0x003D0ACC File Offset: 0x003CECCC
[Token(Token = "0x601046D")]
[Address(RVA = "0x1473460", Offset = "0x1471E60", VA = "0x181473460")]
private IEnumerator OPGEGPLEAOB()
{
/*
An exception occurred when decompiling this method (0601046D)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator RecRoom.Tutorials.MirrorTutorial::OPGEGPLEAOB()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
call:void(BEHGNCDDJIJ::System.IDisposable.Dispose, ldloc:BEHGNCDDJIJ(var_0))
stfld:int32(BEHGNCDDJIJ::<>1__state, ldloc:BEHGNCDDJIJ(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0)))
stfld:MirrorTutorial(BEHGNCDDJIJ::<>4__this, ldloc:BEHGNCDDJIJ(var_0), ldloc:MirrorTutorial(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: 0x0601046E RID: 66670 RVA: 0x003D0AF0 File Offset: 0x003CECF0
[Token(Token = "0x601046E")]
[Address(RVA = "0x146CC30", Offset = "0x146B630", VA = "0x18146CC30")]
private void OGDGFCJKLKL(ushort IBCNKLKINAA, ushort HNEIFFDHGFO)
{
Coroutine iiblinldija = this.IIBLINLDIJA;
if (iiblinldija != 0)
{
base.StopCoroutine(iiblinldija);
this.IIBLINLDIJA = (ulong)0L;
}
}
// Token: 0x0601046F RID: 66671 RVA: 0x003D0B18 File Offset: 0x003CED18
[Token(Token = "0x601046F")]
[Address(RVA = "0x146CD50", Offset = "0x146B750", VA = "0x18146CD50")]
public MirrorTutorial()
{
}
// Token: 0x0400AD01 RID: 44289
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x400AD01")]
[SerializeField]
[Header("Trigger")]
private SimpleVolume simpleTriggerVolume;
// Token: 0x0400AD02 RID: 44290
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x400AD02")]
[SerializeField]
private float triggerVisionConeHalfAngle = 45f;
// Token: 0x0400AD03 RID: 44291
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x400AD03")]
private HKKOHFHADKK PEGJGMDGKJN;
// Token: 0x020024D3 RID: 9427
[Token(Token = "0x20024D3")]
private enum DLKICHGDPCO
{
// Token: 0x0400AD05 RID: 44293
[Token(Token = "0x400AD05")]
Inactive,
// Token: 0x0400AD06 RID: 44294
[Token(Token = "0x400AD06")]
WaitForPlayerToWalkToMirror,
// Token: 0x0400AD07 RID: 44295
[Token(Token = "0x400AD07")]
MirrorIntro,
// Token: 0x0400AD08 RID: 44296
[Token(Token = "0x400AD08")]
WaitForMirrorInteractionStart,
// Token: 0x0400AD09 RID: 44297
[Token(Token = "0x400AD09")]
WaitForMirrorInteractionFinish,
// Token: 0x0400AD0A RID: 44298
[Token(Token = "0x400AD0A")]
MirrorOutro,
// Token: 0x0400AD0B RID: 44299
[Token(Token = "0x400AD0B")]
Completed
}
}
}