227 lines
11 KiB
C#
227 lines
11 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using Cpp2IlInjected;
|
|
using RecRoom.Avatars.Face;
|
|
using RecRoom.Core;
|
|
using RecRoom.Players;
|
|
using RecRoom.Players.Puppet;
|
|
|
|
namespace RecRoom.Avatars.Poseable
|
|
{
|
|
// Token: 0x0200249C RID: 9372
|
|
[Token(Token = "0x200249C")]
|
|
public class PoseableAvatarPuppet : PlayerPuppet
|
|
{
|
|
// Token: 0x170026E3 RID: 9955
|
|
// (get) Token: 0x0600EFA9 RID: 61353 RVA: 0x0036CDF0 File Offset: 0x0036AFF0
|
|
[Token(Token = "0x170026E3")]
|
|
protected override PBFNANEPIFO PDOJHGJMNPH
|
|
{
|
|
[Token(Token = "0x600EFA9")]
|
|
[Address(RVA = "0x417710", Offset = "0x416710", VA = "0x180417710", Slot = "5")]
|
|
get
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600EFA9)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling PBFNANEPIFO RecRoom.Avatars.Poseable.PoseableAvatarPuppet::APDMDPBGDPL()
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
Block_0:
|
|
stloc:NCGCFJADHBB(var_0_06, ldfld:NCGCFJADHBB(PoseableAvatarPuppet::FOCJEOOAOMF, ldloc:PoseableAvatarPuppet(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: 0x170026E4 RID: 9956
|
|
// (get) Token: 0x0600EFAA RID: 61354 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x170026E4")]
|
|
protected override PlayerAvatarDisplay.NEHFHAEIMKF CFJPDKKNGEE
|
|
{
|
|
[Token(Token = "0x600EFAA")]
|
|
[Address(RVA = "0x4246A0", Offset = "0x4236A0", VA = "0x1804246A0", Slot = "8")]
|
|
get
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600EFAB RID: 61355 RVA: 0x0036CE04 File Offset: 0x0036B004
|
|
[Token(Token = "0x600EFAB")]
|
|
[Address(RVA = "0x1A07F30", Offset = "0x1A06F30", VA = "0x181A07F30")]
|
|
private void Awake()
|
|
{
|
|
PlayerAvatarDisplay playerAvatarDisplay = this.playerAvatarDisplay;
|
|
Action action = new Action(this.MJDLJPJCGBL);
|
|
playerAvatarDisplay.HKEGDMNCKHM += action;
|
|
}
|
|
|
|
// Token: 0x0600EFAC RID: 61356 RVA: 0x0036CE34 File Offset: 0x0036B034
|
|
[Token(Token = "0x600EFAC")]
|
|
[Address(RVA = "0x1A08470", Offset = "0x1A07470", VA = "0x181A08470")]
|
|
protected void OnDestroy()
|
|
{
|
|
PlayerAvatarDisplay playerAvatarDisplay = this.playerAvatarDisplay;
|
|
int num = 0;
|
|
if (playerAvatarDisplay != num)
|
|
{
|
|
PlayerAvatarDisplay playerAvatarDisplay2 = this.playerAvatarDisplay;
|
|
Action action = new Action(this.MJDLJPJCGBL);
|
|
playerAvatarDisplay2.HKEGDMNCKHM -= action;
|
|
}
|
|
NCGCFJADHBB focjeooaomf = this.FOCJEOOAOMF;
|
|
if (focjeooaomf != 0)
|
|
{
|
|
focjeooaomf.Dispose();
|
|
}
|
|
this.FOCJEOOAOMF = (ulong)0L;
|
|
}
|
|
|
|
// Token: 0x0600EFAD RID: 61357 RVA: 0x0036CE94 File Offset: 0x0036B094
|
|
[Token(Token = "0x600EFAD")]
|
|
[Address(RVA = "0x1A08010", Offset = "0x1A07010", VA = "0x181A08010")]
|
|
public DABKFAIHBBP InitializeAsync(MNHEFLIMKGO KJAFOCJMDIH, PoseableAvatarAsset ABADFLCBFIJ)
|
|
{
|
|
if (KJAFOCJMDIH != 0)
|
|
{
|
|
JJEKJGALHKO jjekjgalhko = new JJEKJGALHKO();
|
|
this.NGNBPMOEKFJ = jjekjgalhko;
|
|
NCGCFJADHBB ncgcfjadhbb = NCGCFJADHBB.KGPKEFGANCP(KJAFOCJMDIH);
|
|
this.FOCJEOOAOMF = ncgcfjadhbb;
|
|
if (ncgcfjadhbb != 0)
|
|
{
|
|
ACHNJMAHALI achnjmahali;
|
|
float codofndjlnp = achnjmahali.CODOFNDJLNP;
|
|
float w = achnjmahali.FJPMMIIMNJG.Rotation.w;
|
|
ABADFLCBFIJ.PoseData.LeftHandThumbUp = w;
|
|
PlayerAnimationFrameTransform enoneadfacp = achnjmahali.ENONEADFACP;
|
|
ABADFLCBFIJ.PoseData.RightHand.Rotation = enoneadfacp;
|
|
float y = achnjmahali.ENONEADFACP.Rotation.y;
|
|
ABADFLCBFIJ.PoseData.RightHandTrigger = y;
|
|
float z = achnjmahali.EAFCPPAEHJA.Rotation.z;
|
|
ABADFLCBFIJ.PoseData.Head.Rotation.z = z;
|
|
float w2 = achnjmahali.CPBIELIDPBI.Rotation.w;
|
|
ABADFLCBFIJ.PoseData.Body.Rotation.w = w2;
|
|
this.PHBDLHMLHHJ();
|
|
PlayerEmotes.MGIGFNJOGEM emote = ABADFLCBFIJ.Emote;
|
|
PlayerFacialAnimator facialAnimator = base.MFMOOOFDFHJ;
|
|
PlayerFacialAnimator facialAnimator2 = base.MFMOOOFDFHJ;
|
|
int num = 0;
|
|
facialAnimator2.IALAFCJLAJM = (float)num;
|
|
}
|
|
float b = ncgcfjadhbb.<NEJCGJPOGLH>k__BackingField.b;
|
|
bool flag = ncgcfjadhbb.EPDBCAOKNHF;
|
|
}
|
|
DABKFAIHBBP dabkfaihbbp = JJEKJGALHKO.LIPGKFECLDO("Poseable Avatar Pupper Source cannot be generated from an invalid avatar");
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600EFAE RID: 61358 RVA: 0x0036CFF0 File Offset: 0x0036B1F0
|
|
[Token(Token = "0x600EFAE")]
|
|
[Address(RVA = "0x77C860", Offset = "0x77B860", VA = "0x18077C860")]
|
|
public static bool IsAvatarValidForPoseGeneration(MNHEFLIMKGO KJAFOCJMDIH)
|
|
{
|
|
return KJAFOCJMDIH != 0;
|
|
}
|
|
|
|
// Token: 0x0600EFAF RID: 61359 RVA: 0x0036D004 File Offset: 0x0036B204
|
|
[Token(Token = "0x600EFAF")]
|
|
[Address(RVA = "0x1A08300", Offset = "0x1A07300", VA = "0x181A08300")]
|
|
private void JMELEEJNCIL(PlayerEmotes.MGIGFNJOGEM HCPNGDMELND, float DIJKHBILKOM)
|
|
{
|
|
PlayerFacialAnimator facialAnimator = base.MFMOOOFDFHJ;
|
|
PlayerFacialAnimator facialAnimator2 = base.MFMOOOFDFHJ;
|
|
int num = 0;
|
|
facialAnimator2.IALAFCJLAJM = (float)num;
|
|
}
|
|
|
|
// Token: 0x0600EFB0 RID: 61360 RVA: 0x0036D030 File Offset: 0x0036B230
|
|
[Token(Token = "0x600EFB0")]
|
|
[Address(RVA = "0x1A08370", Offset = "0x1A07370", VA = "0x181A08370")]
|
|
private void MJDLJPJCGBL()
|
|
{
|
|
Scheduler instance = SingletonMonoBehaviour.ONCPNMDGGKG;
|
|
PoseableAvatarPuppet.EJEFIBJNHGN ejefibjnhgn;
|
|
ejefibjnhgn.System.IDisposable.Dispose();
|
|
ejefibjnhgn.<>1__state = (int)((ulong)0L);
|
|
ejefibjnhgn.<>4__this = this;
|
|
KFBABPAPIMB kfbabpapimb = instance.Run(this, ejefibjnhgn);
|
|
}
|
|
|
|
// Token: 0x0600EFB1 RID: 61361 RVA: 0x0036D068 File Offset: 0x0036B268
|
|
[Token(Token = "0x600EFB1")]
|
|
[Address(RVA = "0x1A07FB0", Offset = "0x1A06FB0", VA = "0x181A07FB0")]
|
|
private IEnumerator<KENFJGFMIPM> GMEMDHPGMKG()
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600EFB1)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1<KENFJGFMIPM> RecRoom.Avatars.Poseable.PoseableAvatarPuppet::GMEMDHPGMKG()
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
Block_0:
|
|
call:void(EJEFIBJNHGN::System.IDisposable.Dispose, ldloc:EJEFIBJNHGN(var_0))
|
|
stfld:int32(EJEFIBJNHGN::<>1__state, ldloc:EJEFIBJNHGN(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0)))
|
|
stfld:PoseableAvatarPuppet(EJEFIBJNHGN::<>4__this, ldloc:EJEFIBJNHGN(var_0), ldloc:PoseableAvatarPuppet(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: 0x0600EFB2 RID: 61362 RVA: 0x0036D08C File Offset: 0x0036B28C
|
|
[Token(Token = "0x600EFB2")]
|
|
[Address(RVA = "0x1A08440", Offset = "0x1A07440", VA = "0x181A08440", Slot = "15")]
|
|
protected override void NIDCJDKOAIJ()
|
|
{
|
|
base.NIDCJDKOAIJ();
|
|
this.playerAvatarDisplay.ForceUpdateHandsVisualState();
|
|
}
|
|
|
|
// Token: 0x0600EFB3 RID: 61363 RVA: 0x0036D0B0 File Offset: 0x0036B2B0
|
|
[Token(Token = "0x600EFB3")]
|
|
[Address(RVA = "0x1A08540", Offset = "0x1A07540", VA = "0x181A08540")]
|
|
public PoseableAvatarPuppet()
|
|
{
|
|
DABKFAIHBBP <EIDHKJMHBEC>k__BackingField;
|
|
do
|
|
{
|
|
<EIDHKJMHBEC>k__BackingField = JJEKJGALHKO.<EIDHKJMHBEC>k__BackingField;
|
|
if (<EIDHKJMHBEC>k__BackingField == 0)
|
|
{
|
|
}
|
|
}
|
|
while (<EIDHKJMHBEC>k__BackingField == 0);
|
|
this.NGNBPMOEKFJ = <EIDHKJMHBEC>k__BackingField;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x04009DB8 RID: 40376
|
|
[FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x4009DB8")]
|
|
private NCGCFJADHBB FOCJEOOAOMF;
|
|
|
|
// Token: 0x04009DB9 RID: 40377
|
|
[FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x4009DB9")]
|
|
private JJEKJGALHKO NGNBPMOEKFJ;
|
|
}
|
|
}
|