Files
niko 8fc35183db a
2026-04-11 22:19:20 +02:00

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: 0x020023B8 RID: 9144
[Token(Token = "0x20023B8")]
public class PoseableAvatarPuppet : PlayerPuppet
{
// Token: 0x1700263F RID: 9791
// (get) Token: 0x0600EB95 RID: 60309 RVA: 0x00363810 File Offset: 0x00361A10
[Token(Token = "0x1700263F")]
protected override PBFNANEPIFO PDOJHGJMNPH
{
[Token(Token = "0x600EB95")]
[Address(RVA = "0x423D40", Offset = "0x422B40", VA = "0x180423D40", Slot = "5")]
get
{
/*
An exception occurred when decompiling this method (0600EB95)
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 1660
*/;
}
}
// Token: 0x17002640 RID: 9792
// (get) Token: 0x0600EB96 RID: 60310 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x17002640")]
protected override PlayerAvatarDisplay.NEHFHAEIMKF CFJPDKKNGEE
{
[Token(Token = "0x600EB96")]
[Address(RVA = "0x460D40", Offset = "0x45FB40", VA = "0x180460D40", Slot = "8")]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x0600EB97 RID: 60311 RVA: 0x00363824 File Offset: 0x00361A24
[Token(Token = "0x600EB97")]
[Address(RVA = "0xF28650", Offset = "0xF27450", VA = "0x180F28650")]
private void Awake()
{
PlayerAvatarDisplay playerAvatarDisplay = this.playerAvatarDisplay;
Action action = new Action(this.MJDLJPJCGBL);
playerAvatarDisplay.HKEGDMNCKHM += action;
}
// Token: 0x0600EB98 RID: 60312 RVA: 0x00363854 File Offset: 0x00361A54
[Token(Token = "0x600EB98")]
[Address(RVA = "0xF28B90", Offset = "0xF27990", VA = "0x180F28B90")]
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: 0x0600EB99 RID: 60313 RVA: 0x003638B4 File Offset: 0x00361AB4
[Token(Token = "0x600EB99")]
[Address(RVA = "0xF28730", Offset = "0xF27530", VA = "0x180F28730")]
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: 0x0600EB9A RID: 60314 RVA: 0x00363A10 File Offset: 0x00361C10
[Token(Token = "0x600EB9A")]
[Address(RVA = "0x40B190", Offset = "0x409F90", VA = "0x18040B190")]
public static bool IsAvatarValidForPoseGeneration(MNHEFLIMKGO KJAFOCJMDIH)
{
return KJAFOCJMDIH != 0;
}
// Token: 0x0600EB9B RID: 60315 RVA: 0x00363A24 File Offset: 0x00361C24
[Token(Token = "0x600EB9B")]
[Address(RVA = "0xF28A20", Offset = "0xF27820", VA = "0x180F28A20")]
private void JMELEEJNCIL(PlayerEmotes.MGIGFNJOGEM HCPNGDMELND, float DIJKHBILKOM)
{
PlayerFacialAnimator facialAnimator = base.MFMOOOFDFHJ;
PlayerFacialAnimator facialAnimator2 = base.MFMOOOFDFHJ;
int num = 0;
facialAnimator2.IALAFCJLAJM = (float)num;
}
// Token: 0x0600EB9C RID: 60316 RVA: 0x00363A50 File Offset: 0x00361C50
[Token(Token = "0x600EB9C")]
[Address(RVA = "0xF28A90", Offset = "0xF27890", VA = "0x180F28A90")]
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: 0x0600EB9D RID: 60317 RVA: 0x00363A88 File Offset: 0x00361C88
[Token(Token = "0x600EB9D")]
[Address(RVA = "0xF286D0", Offset = "0xF274D0", VA = "0x180F286D0")]
private IEnumerator<KENFJGFMIPM> GMEMDHPGMKG()
{
/*
An exception occurred when decompiling this method (0600EB9D)
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 1660
*/;
}
// Token: 0x0600EB9E RID: 60318 RVA: 0x00363AAC File Offset: 0x00361CAC
[Token(Token = "0x600EB9E")]
[Address(RVA = "0xF28B60", Offset = "0xF27960", VA = "0x180F28B60", Slot = "15")]
protected override void NIDCJDKOAIJ()
{
base.NIDCJDKOAIJ();
this.playerAvatarDisplay.ForceUpdateHandsVisualState();
}
// Token: 0x0600EB9F RID: 60319 RVA: 0x00363AD0 File Offset: 0x00361CD0
[Token(Token = "0x600EB9F")]
[Address(RVA = "0xF28C60", Offset = "0xF27A60", VA = "0x180F28C60")]
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: 0x04009BC7 RID: 39879
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4009BC7")]
private NCGCFJADHBB FOCJEOOAOMF;
// Token: 0x04009BC8 RID: 39880
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x4009BC8")]
private JJEKJGALHKO NGNBPMOEKFJ;
}
}