Files
niko c12fbe3fc6 m
2026-04-12 16:51:38 +02:00

394 lines
15 KiB
C#

using System;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
using RecRoom.Avatars;
using RecRoom.Avatars.Face;
using RecRoom.Avatars.Outfit;
using RecRoom.Core;
using RecRoom.Core.Screens.PlayerController;
using UnityEngine;
namespace RecRoom.Players.Puppet
{
// Token: 0x02002967 RID: 10599
[Token(Token = "0x2002967")]
public class AnimatedPlayerPuppet : PlayerPuppet
{
// Token: 0x17003187 RID: 12679
// (get) Token: 0x06011B18 RID: 72472 RVA: 0x00401400 File Offset: 0x003FF600
[Token(Token = "0x17003187")]
protected override PBFNANEPIFO PDOJHGJMNPH
{
[Token(Token = "0x6011B18")]
[Address(RVA = "0x133C020", Offset = "0x133B020", VA = "0x18133C020", Slot = "5")]
get
{
/*
An exception occurred when decompiling this method (06011B18)
ICSharpCode.Decompiler.DecompilerException: Error decompiling PBFNANEPIFO RecRoom.Players.Puppet.AnimatedPlayerPuppet::APDMDPBGDPL()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:JFDGOAOGGHD(var_0_0E, newobj:JFDGOAOGGHD(JFDGOAOGGHD::.ctor))
stfld:JFDGOAOGGHD(AnimatedPlayerPuppet::DIEPOPNJNCO, ldloc:AnimatedPlayerPuppet(this), ldloc:JFDGOAOGGHD(var_0_0E))
}
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: 0x17003188 RID: 12680
// (get) Token: 0x06011B19 RID: 72473 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x17003188")]
protected override PlayerAvatarDisplay.NEHFHAEIMKF CFJPDKKNGEE
{
[Token(Token = "0x6011B19")]
[Address(RVA = "0x4246A0", Offset = "0x4236A0", VA = "0x1804246A0", Slot = "8")]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x06011B1A RID: 72474 RVA: 0x00401424 File Offset: 0x003FF624
[Token(Token = "0x6011B1A")]
[Address(RVA = "0x133C8A0", Offset = "0x133B8A0", VA = "0x18133C8A0")]
[ContextMenu("Test Animation")]
public void TestAnimation()
{
}
// Token: 0x06011B1B RID: 72475 RVA: 0x00401434 File Offset: 0x003FF634
[Token(Token = "0x6011B1B")]
[Address(RVA = "0x133C080", Offset = "0x133B080", VA = "0x18133C080")]
private void Awake()
{
float num = this.fidgetFadeTime;
PlayerAnimation playerAnimation = new PlayerAnimation();
PlayerFidgetAnimationSet playerFidgetAnimationSet = this.fidgetAnimationSet;
this.LONPMDOPLEN = playerAnimation;
EOEOFMCNLOL<IReadOnlyList<PlayerAnimationAsset>> eoeofmcnlol = new EOEOFMCNLOL();
this.LMOKIFLNNLD = eoeofmcnlol;
}
// Token: 0x06011B1C RID: 72476 RVA: 0x00401474 File Offset: 0x003FF674
[Token(Token = "0x6011B1C")]
[Address(RVA = "0x133C660", Offset = "0x133B660", VA = "0x18133C660")]
protected void OnDestroy()
{
JFDGOAOGGHD diepopnjnco = this.DIEPOPNJNCO;
if (diepopnjnco != 0)
{
diepopnjnco.Dispose();
}
KFBABPAPIMB bhfniijepgg = this.BHFNIIJEPGG;
this.DIEPOPNJNCO = (ulong)0L;
if (bhfniijepgg != 0)
{
}
this.BHFNIIJEPGG = (ulong)0L;
}
// Token: 0x06011B1D RID: 72477 RVA: 0x004014B0 File Offset: 0x003FF6B0
[Token(Token = "0x6011B1D")]
[Address(RVA = "0x133C8E0", Offset = "0x133B8E0", VA = "0x18133C8E0")]
private void Update()
{
PlayerAnimation lonpmdoplen = this.LONPMDOPLEN;
bool flag;
if (!flag)
{
IBHOLFCLKFB ggbgjpijihn = this.GGBGJPIJIHN;
PlayerAnimation lonpmdoplen2 = this.LONPMDOPLEN;
int num = 0;
if (ggbgjpijihn.IALPIEDKJGH(lonpmdoplen2, num != 0))
{
goto IL_42;
}
}
PlayerAnimationAsset playerAnimationAsset = ECNNGIFNNNM.NBMJEPIPHGC<PlayerAnimationAsset>(this.LMOKIFLNNLD.OBNBDDNFNDN());
PlayerAnimation lonpmdoplen3 = this.LONPMDOPLEN;
IL_42:
PlayerAnimation lonpmdoplen4 = this.LONPMDOPLEN;
int num2 = 0;
this.JEBCDECIGHG(this, lonpmdoplen4, GHLCJGAMKMG.BOTH_RIGHT_PRIMARY, (LBAPHGMNKIC)num2, num2 != 0, num2 != 0, num2 != 0);
PlayerAvatarDisplay playerAvatarDisplay = this.playerAvatarDisplay;
Func<bool> isTalking = this.IsTalking;
PlayerFacialAnimator facialAnimator = playerAvatarDisplay.facialAnimator;
if (isTalking != 0)
{
bool flag2 = isTalking() != null;
}
int num3 = 0;
facialAnimator.CBDLBHPIGNB = num3 != 0;
}
// Token: 0x06011B1E RID: 72478 RVA: 0x00401558 File Offset: 0x003FF758
[Token(Token = "0x6011B1E")]
[Address(RVA = "0x133C7B0", Offset = "0x133B7B0", VA = "0x18133C7B0")]
public void SetAvatarVisuals(MNHEFLIMKGO KJAFOCJMDIH, bool CCMCLPFEIKO = false)
{
if (this.BHFNIIJEPGG != 0)
{
}
if (!CCMCLPFEIKO)
{
Action action = delegate
{
AnimatedPlayerPuppet <>4__this = this;
MNHEFLIMKGO avatar2 = KJAFOCJMDIH;
<>4__this.IHOFENLOFIM(avatar2);
};
KFBABPAPIMB kfbabpapimb = this.JGIPMJPPCBM(action);
this.BHFNIIJEPGG = kfbabpapimb;
return;
}
MNHEFLIMKGO avatar = KJAFOCJMDIH;
throw new NullReferenceException();
}
// Token: 0x06011B1F RID: 72479 RVA: 0x004015B0 File Offset: 0x003FF7B0
[Token(Token = "0x6011B1F")]
[Address(RVA = "0x133C310", Offset = "0x133B310", VA = "0x18133C310")]
private void IHOFENLOFIM(MNHEFLIMKGO KJAFOCJMDIH)
{
JFDGOAOGGHD jfdgoaogghd = JFDGOAOGGHD.KGPKEFGANCP(KJAFOCJMDIH);
this.DIEPOPNJNCO = jfdgoaogghd;
if (jfdgoaogghd != 0)
{
PBFNANEPIFO pbfnanepifo = base.PDOJHGJMNPH;
return;
}
Debug.LogError("Animated Player Puppet Source could not be generated");
}
// Token: 0x06011B20 RID: 72480 RVA: 0x004015E4 File Offset: 0x003FF7E4
[Token(Token = "0x6011B20")]
[Address(RVA = "0x133C780", Offset = "0x133B780", VA = "0x18133C780")]
public void PlayEmote(PlayerEmotes.MGIGFNJOGEM HCPNGDMELND, float DIJKHBILKOM = 0f)
{
this.playerAvatarDisplay.facialAnimator.LocalPlayEmote(HCPNGDMELND, DIJKHBILKOM);
}
// Token: 0x06011B21 RID: 72481 RVA: 0x0040160C File Offset: 0x003FF80C
[Token(Token = "0x6011B21")]
[Address(RVA = "0x133C740", Offset = "0x133B740", VA = "0x18133C740")]
public void PlayAnimationOnce(object LHOMKMINCHH, NIPBJGMMMEF EKJHAMMOBBH, GHLCJGAMKMG MFKOJMHJPOC = GHLCJGAMKMG.BOTH_RIGHT_PRIMARY, bool JGGMJFMGMPB = false)
{
}
// Token: 0x06011B22 RID: 72482 RVA: 0x0040161C File Offset: 0x003FF81C
[Token(Token = "0x6011B22")]
[Address(RVA = "0x133C700", Offset = "0x133B700", VA = "0x18133C700")]
public void PlayAnimationLoop(object LHOMKMINCHH, NIPBJGMMMEF EKJHAMMOBBH, GHLCJGAMKMG MFKOJMHJPOC = GHLCJGAMKMG.BOTH_RIGHT_PRIMARY, bool JGGMJFMGMPB = false)
{
}
// Token: 0x06011B23 RID: 72483 RVA: 0x0040162C File Offset: 0x003FF82C
[Token(Token = "0x6011B23")]
[Address(RVA = "0x133C6D0", Offset = "0x133B6D0", VA = "0x18133C6D0")]
public void PlayAnimationFidget(object LHOMKMINCHH, NIPBJGMMMEF EKJHAMMOBBH, GHLCJGAMKMG MFKOJMHJPOC = GHLCJGAMKMG.BOTH_RIGHT_PRIMARY)
{
int num = 0;
this.JEBCDECIGHG(LHOMKMINCHH, EKJHAMMOBBH, MFKOJMHJPOC, (LBAPHGMNKIC)num, num != 0, num != 0, num != 0);
}
// Token: 0x06011B24 RID: 72484 RVA: 0x00401648 File Offset: 0x003FF848
[Token(Token = "0x6011B24")]
[Address(RVA = "0x133C3B0", Offset = "0x133B3B0", VA = "0x18133C3B0")]
private void JEBCDECIGHG(object LHOMKMINCHH, NIPBJGMMMEF EKJHAMMOBBH, GHLCJGAMKMG MFKOJMHJPOC, LBAPHGMNKIC JMHKMOACHDG, bool IOOAMNLKLGP, bool KMNHDGCACPG, bool JGGMJFMGMPB)
{
if (EKJHAMMOBBH != 0)
{
IBHOLFCLKFB.CINMKCEDCPG cinmkcedcpg = IBHOLFCLKFB.CINMKCEDCPG.OCJJLBLNMKA(0);
object lhomkminchh = cinmkcedcpg.LHOMKMINCHH;
float bpnofhafggc = cinmkcedcpg.BPNOFHAFGGC;
bool jggmjfmgmpb = cinmkcedcpg.JGGMJFMGMPB;
if (MFKOJMHJPOC == GHLCJGAMKMG.LEFT_ONLY || MFKOJMHJPOC == GHLCJGAMKMG.BOTH_LEFT_PRIMARY)
{
}
IBHOLFCLKFB ggbgjpijihn = this.GGBGJPIJIHN;
}
}
// Token: 0x06011B25 RID: 72485 RVA: 0x00401690 File Offset: 0x003FF890
[Token(Token = "0x6011B25")]
[Address(RVA = "0x133C2C0", Offset = "0x133B2C0", VA = "0x18133C2C0")]
public void EndAnimation(object LHOMKMINCHH)
{
if (this.GGBGJPIJIHN.PINOKONDKMH(LHOMKMINCHH))
{
this.GGBGJPIJIHN.EIOHJEDGICK(true);
return;
}
}
// Token: 0x06011B26 RID: 72486 RVA: 0x004016C0 File Offset: 0x003FF8C0
[Token(Token = "0x6011B26")]
[Address(RVA = "0x133BF10", Offset = "0x133AF10", VA = "0x18133BF10", Slot = "13")]
protected override void AGLEGENCIID()
{
IBHOLFCLKFB ggbgjpijihn = this.GGBGJPIJIHN;
float deltaTime = Time.deltaTime;
bool flag;
if (flag)
{
JFDGOAOGGHD diepopnjnco = this.DIEPOPNJNCO;
}
base.AGLEGENCIID();
}
// Token: 0x06011B27 RID: 72487 RVA: 0x004016F4 File Offset: 0x003FF8F4
[Token(Token = "0x6011B27")]
[Address(RVA = "0x133C1E0", Offset = "0x133B1E0", VA = "0x18133C1E0")]
private NIPBJGMMMEF BJHAFNIOJHJ()
{
PlayerAnimation lonpmdoplen = this.LONPMDOPLEN;
bool flag;
if (!flag)
{
IBHOLFCLKFB ggbgjpijihn = this.GGBGJPIJIHN;
PlayerAnimation lonpmdoplen2 = this.LONPMDOPLEN;
int num = 0;
if (ggbgjpijihn.IALPIEDKJGH(lonpmdoplen2, num != 0))
{
goto IL_42;
}
}
PlayerAnimationAsset playerAnimationAsset = ECNNGIFNNNM.NBMJEPIPHGC<PlayerAnimationAsset>(this.LMOKIFLNNLD.OBNBDDNFNDN());
PlayerAnimation lonpmdoplen3 = this.LONPMDOPLEN;
IL_42:
PlayerAnimation lonpmdoplen4 = this.LONPMDOPLEN;
throw new NullReferenceException();
}
// Token: 0x06011B28 RID: 72488 RVA: 0x00401750 File Offset: 0x003FF950
[Token(Token = "0x6011B28")]
[Address(RVA = "0x133C5D0", Offset = "0x133B5D0", VA = "0x18133C5D0")]
private static PlayerAnimation OOAKAPBBBKG(float KNFPLBMCJDN)
{
return new PlayerAnimation();
}
// Token: 0x06011B29 RID: 72489 RVA: 0x00401768 File Offset: 0x003FF968
[Token(Token = "0x6011B29")]
[Address(RVA = "0x133C500", Offset = "0x133B500", VA = "0x18133C500")]
private static EOEOFMCNLOL<IReadOnlyList<PlayerAnimationAsset>> OMLPJHMBAGM(PlayerFidgetAnimationSet MAAOAKJOOKA, ScreenPlayerLocomotionAnimationContent.FidgetWeights AHBEOFEIMKE)
{
return new EOEOFMCNLOL();
}
// Token: 0x06011B2A RID: 72490 RVA: 0x00401780 File Offset: 0x003FF980
[Token(Token = "0x6011B2A")]
[Address(RVA = "0x133CA50", Offset = "0x133BA50", VA = "0x18133CA50")]
public AnimatedPlayerPuppet()
{
int num;
IBHOLFCLKFB ibholfclkfb = new IBHOLFCLKFB(num != 0);
num = 0;
this.GGBGJPIJIHN = ibholfclkfb;
List<OutfitPrefab> list = new List();
this.HBPOEKGCIKD = list;
base..ctor();
}
// Token: 0x0400B55C RID: 46428
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x400B55C")]
[SerializeField]
[Header("Animations")]
private PlayerAnimation testAnimation;
// Token: 0x0400B55D RID: 46429
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x400B55D")]
[SerializeField]
private PlayerFidgetAnimationSet fidgetAnimationSet;
// Token: 0x0400B55E RID: 46430
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x400B55E")]
[SerializeField]
public ScreenPlayerLocomotionAnimationContent.FidgetWeights fidgetWeights;
// Token: 0x0400B55F RID: 46431
[FieldOffset(Offset = "0x74")]
[Token(Token = "0x400B55F")]
[SerializeField]
private float fidgetFadeTime = 0.2f;
// Token: 0x0400B560 RID: 46432
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x400B560")]
private JFDGOAOGGHD DIEPOPNJNCO;
// Token: 0x0400B561 RID: 46433
[FieldOffset(Offset = "0x80")]
[Token(Token = "0x400B561")]
private readonly IBHOLFCLKFB GGBGJPIJIHN;
// Token: 0x0400B562 RID: 46434
[FieldOffset(Offset = "0x88")]
[Token(Token = "0x400B562")]
private KFBABPAPIMB BHFNIIJEPGG;
// Token: 0x0400B563 RID: 46435
[FieldOffset(Offset = "0x90")]
[Token(Token = "0x400B563")]
public Func<bool> IsTalking;
// Token: 0x0400B564 RID: 46436
[FieldOffset(Offset = "0x98")]
[Token(Token = "0x400B564")]
private PlayerAnimation LONPMDOPLEN;
// Token: 0x0400B565 RID: 46437
[FieldOffset(Offset = "0xA0")]
[Token(Token = "0x400B565")]
private EOEOFMCNLOL<IReadOnlyList<PlayerAnimationAsset>> LMOKIFLNNLD;
// Token: 0x02002968 RID: 10600
[Token(Token = "0x2002968")]
[CompilerGenerated]
private sealed class IGGGMMPKKCL
{
// Token: 0x06011B2B RID: 72491 RVA: 0x004017BC File Offset: 0x003FF9BC
[Token(Token = "0x6011B2B")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public IGGGMMPKKCL()
{
}
// Token: 0x06011B2C RID: 72492 RVA: 0x004017D0 File Offset: 0x003FF9D0
[Token(Token = "0x6011B2C")]
[Address(RVA = "0x133D4E0", Offset = "0x133C4E0", VA = "0x18133D4E0")]
internal void <SetAvatarVisuals>b__0()
{
AnimatedPlayerPuppet animatedPlayerPuppet = this.<>4__this;
MNHEFLIMKGO mnheflimkgo = this.avatar;
animatedPlayerPuppet.IHOFENLOFIM(mnheflimkgo);
}
// Token: 0x0400B566 RID: 46438
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x400B566")]
public AnimatedPlayerPuppet <>4__this;
// Token: 0x0400B567 RID: 46439
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400B567")]
public MNHEFLIMKGO avatar;
}
}
}