Files
Aug2021-Cpp2IL-Dump/Assembly-CSharp/RecRoom/Core/Creation/Holotars/HolotarPlaybackPuppet.cs
T
2026-04-10 22:50:51 +02:00

456 lines
17 KiB
C#

using System;
using Cpp2IlInjected;
using RecRoom.Audio;
using RecRoom.Core.Rendering;
using RecRoom.Players.Puppet;
using UnityEngine;
namespace RecRoom.Core.Creation.Holotars
{
// Token: 0x020032E2 RID: 13026
[Token(Token = "0x20032E2")]
public class HolotarPlaybackPuppet : PlayerPuppet
{
// Token: 0x17003DF9 RID: 15865
// (get) Token: 0x0601671E RID: 91934 RVA: 0x0053CB58 File Offset: 0x0053AD58
[Token(Token = "0x17003DF9")]
protected override PBFNANEPIFO PDOJHGJMNPH
{
[Token(Token = "0x601671E")]
[Address(RVA = "0x567CE0", Offset = "0x566AE0", VA = "0x180567CE0", Slot = "5")]
get
{
/*
An exception occurred when decompiling this method (0601671E)
ICSharpCode.Decompiler.DecompilerException: Error decompiling PBFNANEPIFO RecRoom.Core.Creation.Holotars.HolotarPlaybackPuppet::APDMDPBGDPL()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:GHEIBIAPJMB(var_0_06, ldfld:GHEIBIAPJMB(HolotarPlaybackPuppet::DIEPOPNJNCO, ldloc:HolotarPlaybackPuppet(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: 0x17003DFA RID: 15866
// (get) Token: 0x0601671F RID: 91935 RVA: 0x0053CB6C File Offset: 0x0053AD6C
[Token(Token = "0x17003DFA")]
public bool MDAHDIHLCHC
{
[Token(Token = "0x601671F")]
[Address(RVA = "0xE994F0", Offset = "0xE982F0", VA = "0x180E994F0")]
get
{
/*
An exception occurred when decompiling this method (0601671F)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean RecRoom.Core.Creation.Holotars.HolotarPlaybackPuppet::get_IsPlaying()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_1:
stloc:float32(var_2_25, ldfld:float32(GHEIBIAPJMB::IDOPEKABJJC, ldloc:GHEIBIAPJMB(var_1_11)))
}
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: 0x17003DFB RID: 15867
// (get) Token: 0x06016720 RID: 91936 RVA: 0x0053CBA0 File Offset: 0x0053ADA0
[Token(Token = "0x17003DFB")]
public float LGCEDPDLCKG
{
[Token(Token = "0x6016720")]
[Address(RVA = "0xE99550", Offset = "0xE98350", VA = "0x180E99550")]
get
{
GHEIBIAPJMB diepopnjnco;
do
{
diepopnjnco = this.DIEPOPNJNCO;
}
while (diepopnjnco == 0 || diepopnjnco.IIBGOBJLAEH == 0);
return diepopnjnco.IDOPEKABJJC;
}
}
// Token: 0x17003DFC RID: 15868
// (get) Token: 0x06016721 RID: 91937 RVA: 0x0053CBC8 File Offset: 0x0053ADC8
[Token(Token = "0x17003DFC")]
private bool FBBGNNOCLOH
{
[Token(Token = "0x6016721")]
[Address(RVA = "0xE98C60", Offset = "0xE97A60", VA = "0x180E98C60")]
get
{
float avgPeakAmp = this.levelMeter.DHOJEBFIIEG;
throw new NullReferenceException();
}
}
// Token: 0x06016722 RID: 91938 RVA: 0x0053CBE8 File Offset: 0x0053ADE8
[Token(Token = "0x6016722")]
[Address(RVA = "0xE98910", Offset = "0xE97710", VA = "0x180E98910")]
protected void Awake()
{
this.FELNBMICNMF = false;
this.audioSource.Stop();
GHEIBIAPJMB diepopnjnco = this.DIEPOPNJNCO;
if (diepopnjnco.IIBGOBJLAEH != (ulong)0L)
{
int num = 0;
diepopnjnco.IJHPPDNPBNP((float)num);
}
AudioSource audioSource = this.audioSource;
int num2 = 0;
audioSource.time = (float)num2;
if (this.FELNBMICNMF)
{
this.audioSource.Play();
}
int num3 = 0;
this.DLODOPBJAPF(num3);
}
// Token: 0x06016723 RID: 91939 RVA: 0x0053CC58 File Offset: 0x0053AE58
[Token(Token = "0x6016723")]
[Address(RVA = "0xE98DD0", Offset = "0xE97BD0", VA = "0x180E98DD0", Slot = "9")]
protected override void LateUpdate()
{
base.LateUpdate();
if (this.ToString() != 0 && this.FELNBMICNMF)
{
GHEIBIAPJMB diepopnjnco = this.DIEPOPNJNCO;
float deltaTime = Time.deltaTime;
diepopnjnco.OPEMIFENIJM(deltaTime);
GHEIBIAPJMB diepopnjnco2 = this.DIEPOPNJNCO;
if (diepopnjnco2.IIBGOBJLAEH != 0)
{
float idopekabjjc = diepopnjnco2.IDOPEKABJJC;
if (!this.Loop)
{
Action onPlaybackComplete = this.OnPlaybackComplete;
if (onPlaybackComplete == 0)
{
goto IL_74;
}
onPlaybackComplete();
}
int num = 0;
this.SetTime((float)num);
}
IL_74:
if (this.PlayHolographicOverlayEffect)
{
SkinnedMeshRenderer[] currentDefaultSkinnedMeshRenderers = this.playerAvatarDisplay.CurrentDefaultSkinnedMeshRenderers;
if (currentDefaultSkinnedMeshRenderers != 0 && currentDefaultSkinnedMeshRenderers.Length != 0)
{
SkinnedMeshRenderer skinnedMeshRenderer = currentDefaultSkinnedMeshRenderers[0];
int num2 = 0;
if (skinnedMeshRenderer != num2)
{
Mesh sharedMesh = skinnedMeshRenderer.sharedMesh;
int num3 = 0;
if (sharedMesh != num3)
{
int subMeshCount = skinnedMeshRenderer.sharedMesh.subMeshCount;
HolographicOverlayRendererEffect.RenderHolographicOverlay(skinnedMeshRenderer, subMeshCount);
}
}
}
}
}
}
// Token: 0x06016724 RID: 91940 RVA: 0x0053CD4C File Offset: 0x0053AF4C
[Token(Token = "0x6016724")]
[Address(RVA = "0xE98FD0", Offset = "0xE97DD0", VA = "0x180E98FD0")]
private void OnDestroy()
{
int num = 0;
this.DLODOPBJAPF(num);
this.DIEPOPNJNCO.Dispose();
}
// Token: 0x06016725 RID: 91941 RVA: 0x0053CD74 File Offset: 0x0053AF74
[Token(Token = "0x6016725")]
[Address(RVA = "0xE98C90", Offset = "0xE97A90", VA = "0x180E98C90")]
public void Initialize(KLFOBEKJDKL ABADFLCBFIJ)
{
this.FELNBMICNMF = false;
this.audioSource.Stop();
GHEIBIAPJMB diepopnjnco = this.DIEPOPNJNCO;
if (diepopnjnco.IIBGOBJLAEH != (ulong)0L)
{
int num = 0;
diepopnjnco.IJHPPDNPBNP((float)num);
}
AudioSource audioSource = this.audioSource;
int num2 = 0;
audioSource.time = (float)num2;
if (this.FELNBMICNMF)
{
this.audioSource.Play();
}
int num3 = 0;
this.DLODOPBJAPF(num3);
this.DIEPOPNJNCO.PBPPCMNHODC = ABADFLCBFIJ;
AudioManager instance = SingletonMonoBehaviour.ONCPNMDGGKG;
bool isCompleted = ((IAsyncResult)this).IsCompleted;
}
// Token: 0x06016726 RID: 91942 RVA: 0x0053CE00 File Offset: 0x0053B000
[Token(Token = "0x6016726")]
[Address(RVA = "0xE99340", Offset = "0xE98140", VA = "0x180E99340")]
public void RefreshFromData()
{
this.DIEPOPNJNCO.NAKBNIBLPKP();
bool isCompleted = ((IAsyncResult)this).IsCompleted;
}
// Token: 0x06016727 RID: 91943 RVA: 0x0053CE28 File Offset: 0x0053B028
[Token(Token = "0x6016727")]
[Address(RVA = "0xE99160", Offset = "0xE97F60", VA = "0x180E99160")]
public void Play()
{
GHEIBIAPJMB diepopnjnco = this.DIEPOPNJNCO;
if (diepopnjnco.IIBGOBJLAEH == 0)
{
Debug.LogWarning("Unable to play a Holotar with no assigned data.");
return;
}
if (diepopnjnco != 0 && diepopnjnco == 0)
{
AudioSource audioSource = this.audioSource;
this.FELNBMICNMF = false;
audioSource.Stop();
GHEIBIAPJMB diepopnjnco2 = this.DIEPOPNJNCO;
if (diepopnjnco2.IIBGOBJLAEH != (ulong)0L)
{
int num = 0;
diepopnjnco2.IJHPPDNPBNP((float)num);
}
AudioSource audioSource2 = this.audioSource;
int num2 = 0;
audioSource2.time = (float)num2;
if (this.FELNBMICNMF)
{
this.audioSource.Play();
}
}
AudioClip liebgliajia = this.LIEBGLIAJIA;
int num3 = 0;
if (liebgliajia == num3)
{
KHJKOGJKJNA kbfcblklmep = this.DIEPOPNJNCO.IIBGOBJLAEH.KBFCBLKLMEP;
int num4 = 0;
AudioClip audioClip = HNNCAGBOFHB.PKMDHIHNKOH(kbfcblklmep, num4);
this.DLODOPBJAPF(audioClip);
}
this.audioSource.Play();
this.FELNBMICNMF = true;
}
// Token: 0x06016728 RID: 91944 RVA: 0x0053CF08 File Offset: 0x0053B108
[Token(Token = "0x6016728")]
[Address(RVA = "0xE99130", Offset = "0xE97F30", VA = "0x180E99130")]
public void Pause()
{
this.FELNBMICNMF = false;
this.audioSource.Pause();
}
// Token: 0x06016729 RID: 91945 RVA: 0x0053CF30 File Offset: 0x0053B130
[Token(Token = "0x6016729")]
[Address(RVA = "0xE993F0", Offset = "0xE981F0", VA = "0x180E993F0")]
public void Stop(bool COLKCDAABDF = true)
{
this.FELNBMICNMF = false;
this.audioSource.Stop();
GHEIBIAPJMB diepopnjnco = this.DIEPOPNJNCO;
if (diepopnjnco.IIBGOBJLAEH != (ulong)0L)
{
int num = 0;
diepopnjnco.IJHPPDNPBNP((float)num);
}
AudioSource audioSource = this.audioSource;
int num2 = 0;
audioSource.time = (float)num2;
if (this.FELNBMICNMF)
{
this.audioSource.Play();
}
if (COLKCDAABDF)
{
int num3 = 0;
this.DLODOPBJAPF(num3);
}
}
// Token: 0x0601672A RID: 91946 RVA: 0x0053CFA4 File Offset: 0x0053B1A4
[Token(Token = "0x601672A")]
[Address(RVA = "0xE990D0", Offset = "0xE97ED0", VA = "0x180E990D0", Slot = "14")]
protected override void PHBDLHMLHHJ()
{
GHEIBIAPJMB diepopnjnco = this.DIEPOPNJNCO;
float avgPeakAmp = this.levelMeter.DHOJEBFIIEG;
base.PHBDLHMLHHJ();
}
// Token: 0x0601672B RID: 91947 RVA: 0x0053CFD0 File Offset: 0x0053B1D0
[Token(Token = "0x601672B")]
[Address(RVA = "0xE99010", Offset = "0xE97E10", VA = "0x180E99010")]
private void PDEDDMDMNFE()
{
AudioClip liebgliajia = this.LIEBGLIAJIA;
int num = 0;
if (liebgliajia == num)
{
KHJKOGJKJNA kbfcblklmep = this.DIEPOPNJNCO.IIBGOBJLAEH.KBFCBLKLMEP;
int num2 = 0;
AudioClip audioClip = HNNCAGBOFHB.PKMDHIHNKOH(kbfcblklmep, num2);
this.DLODOPBJAPF(audioClip);
}
}
// Token: 0x0601672C RID: 91948 RVA: 0x0053D01C File Offset: 0x0053B21C
[Token(Token = "0x601672C")]
[Address(RVA = "0xE98B70", Offset = "0xE97970", VA = "0x180E98B70")]
private void DLODOPBJAPF(AudioClip OAMCCIEIHAP)
{
AudioClip liebgliajia = this.LIEBGLIAJIA;
int num = 0;
if (liebgliajia != num)
{
bool flag = this.LIEBGLIAJIA.KBBHAOLANEK();
global::UnityEngine.Object.DestroyImmediate(this.LIEBGLIAJIA);
}
AudioSource audioSource = this.audioSource;
this.LIEBGLIAJIA = OAMCCIEIHAP;
audioSource.clip = OAMCCIEIHAP;
}
// Token: 0x0601672D RID: 91949 RVA: 0x0053D070 File Offset: 0x0053B270
[Token(Token = "0x601672D")]
[Address(RVA = "0xE99380", Offset = "0xE98180", VA = "0x180E99380")]
public void SetTime(float MOPKOPOKKEE)
{
GHEIBIAPJMB diepopnjnco = this.DIEPOPNJNCO;
if (diepopnjnco.IIBGOBJLAEH != (ulong)0L)
{
diepopnjnco.IJHPPDNPBNP(MOPKOPOKKEE);
}
this.audioSource.time = MOPKOPOKKEE;
if (this.FELNBMICNMF)
{
this.audioSource.Play();
}
}
// Token: 0x0601672E RID: 91950 RVA: 0x0053D0BC File Offset: 0x0053B2BC
[Token(Token = "0x601672E")]
[Address(RVA = "0xE98AF0", Offset = "0xE978F0", VA = "0x180E98AF0")]
private void BNEHHBABOOI(AudioManager.FGICFGKJOFE LMAJKCLDDIF)
{
AudioManager instance = SingletonMonoBehaviour.ONCPNMDGGKG;
}
// Token: 0x0601672F RID: 91951 RVA: 0x0053D0D8 File Offset: 0x0053B2D8
[Token(Token = "0x601672F")]
[Address(RVA = "0xE989A0", Offset = "0xE977A0", VA = "0x180E989A0")]
private void BDGAIMGJDGA()
{
SkinnedMeshRenderer[] currentDefaultSkinnedMeshRenderers = this.playerAvatarDisplay.CurrentDefaultSkinnedMeshRenderers;
if (currentDefaultSkinnedMeshRenderers != 0 && currentDefaultSkinnedMeshRenderers.Length != 0)
{
SkinnedMeshRenderer skinnedMeshRenderer = currentDefaultSkinnedMeshRenderers[0];
int num = 0;
if (skinnedMeshRenderer != num)
{
Mesh sharedMesh = skinnedMeshRenderer.sharedMesh;
int num2 = 0;
if (sharedMesh != num2)
{
int subMeshCount = skinnedMeshRenderer.sharedMesh.subMeshCount;
HolographicOverlayRendererEffect.RenderHolographicOverlay(skinnedMeshRenderer, subMeshCount);
}
}
}
}
// Token: 0x06016730 RID: 91952 RVA: 0x0053D144 File Offset: 0x0053B344
[Token(Token = "0x6016730")]
[Address(RVA = "0xE99490", Offset = "0xE98290", VA = "0x180E99490")]
public HolotarPlaybackPuppet()
{
GHEIBIAPJMB gheibiapjmb = new GHEIBIAPJMB();
this.DIEPOPNJNCO = gheibiapjmb;
base..ctor();
}
// Token: 0x0400EAA5 RID: 60069
[Token(Token = "0x400EAA5")]
private const float EBAGDCGDAHI = 0.01f;
// Token: 0x0400EAA6 RID: 60070
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x400EAA6")]
[SerializeField]
private AudioSource audioSource;
// Token: 0x0400EAA7 RID: 60071
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x400EAA7")]
[SerializeField]
private AudioSourceSimpleLevelMeter levelMeter;
// Token: 0x0400EAA8 RID: 60072
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x400EAA8")]
public bool Loop;
// Token: 0x0400EAA9 RID: 60073
[FieldOffset(Offset = "0x69")]
[Token(Token = "0x400EAA9")]
public bool PlayHolographicOverlayEffect;
// Token: 0x0400EAAA RID: 60074
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x400EAAA")]
public Action OnPlaybackComplete;
// Token: 0x0400EAAB RID: 60075
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x400EAAB")]
private AudioClip LIEBGLIAJIA;
// Token: 0x0400EAAC RID: 60076
[FieldOffset(Offset = "0x80")]
[Token(Token = "0x400EAAC")]
protected GHEIBIAPJMB DIEPOPNJNCO;
// Token: 0x0400EAAD RID: 60077
[FieldOffset(Offset = "0x88")]
[Token(Token = "0x400EAAD")]
private bool FELNBMICNMF;
}
}