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

885 lines
31 KiB
C#

using System;
using System.Collections;
using System.Runtime.CompilerServices;
using System.Text;
using AGUI.StackedUI;
using Cpp2IlInjected;
using Photon.Pun;
using RecRoom.AGUI.ToolUIs;
using RecRoom.Core.AI;
using RecRoom.Core.Combat;
using RecRoom.Core.Creation;
using RecRoom.Core.Pools;
using UnityEngine;
// Token: 0x020000B2 RID: 178
[Token(Token = "0x20000B2")]
public class BreakableObject : MonoBehaviourPun, EOCLMMENCKH, AICKHLGGBBH
{
// Token: 0x170000B3 RID: 179
// (get) Token: 0x060004A9 RID: 1193 RVA: 0x00018D80 File Offset: 0x00016F80
// (set) Token: 0x060004AA RID: 1194 RVA: 0x00018DA0 File Offset: 0x00016FA0
[Token(Token = "0x170000B3")]
public int MMNFJJDMFNP
{
[Token(Token = "0x60004A9")]
[Address(RVA = "0x15096F0", Offset = "0x15086F0", VA = "0x1815096F0")]
get
{
return this.PAMCNCJAJDE.IAHDANBDAAM();
}
[Token(Token = "0x60004AA")]
[Address(RVA = "0x1509740", Offset = "0x1508740", VA = "0x181509740")]
set
{
KLLMCPFPIIE<int> pamcncjajde = this.PAMCNCJAJDE;
int num = 0;
int num2 = Mathf.Clamp(value, num, 1);
}
}
// Token: 0x170000B4 RID: 180
// (get) Token: 0x060004AB RID: 1195 RVA: 0x00018DC8 File Offset: 0x00016FC8
// (set) Token: 0x060004AC RID: 1196 RVA: 0x00018DDC File Offset: 0x00016FDC
[Token(Token = "0x170000B4")]
public Tool PBBJCLJPFMI
{
[Token(Token = "0x60004AB")]
[Address(RVA = "0x44BF00", Offset = "0x44AF00", VA = "0x18044BF00")]
get;
[Token(Token = "0x60004AC")]
[Address(RVA = "0x42DB80", Offset = "0x42CB80", VA = "0x18042DB80")]
private set;
}
// Token: 0x170000B5 RID: 181
// (get) Token: 0x060004AD RID: 1197 RVA: 0x00018DF0 File Offset: 0x00016FF0
[Token(Token = "0x170000B5")]
public bool MGPIPKGDLIO
{
[Token(Token = "0x60004AD")]
[Address(RVA = "0x15096C0", Offset = "0x15086C0", VA = "0x1815096C0")]
get
{
return !this.FCDKDFPADME.CFLJGNJLBFG;
}
}
// Token: 0x060004AE RID: 1198 RVA: 0x00018E14 File Offset: 0x00017014
[Token(Token = "0x60004AE")]
[Address(RVA = "0x15071D0", Offset = "0x15061D0", VA = "0x1815071D0", Slot = "13")]
protected override void Awake()
{
base..ctor();
Tool component = base.GetComponent<Tool>();
this.<MBFGOCOFHHM>k__BackingField = component;
int num = 0;
if (!(component == num))
{
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
Action<Tool, Weapon, FJDJKDOJKDO, Vector3, Vector3> action;
EAHPNACBLDD<Tool, Weapon, FJDJKDOJKDO, Vector3, Vector3> eahpnacbldd = EAHPNACBLDD.BPJDFPACLMK(tool.AttackAppliedEvent, action);
tool.AttackAppliedEvent = eahpnacbldd;
Tool tool2 = this.<MBFGOCOFHHM>k__BackingField;
MFBGLIHGCGO<Tool> postPickupEvent = tool2.PostPickupEvent;
Action<Tool> action2 = new Action(this.EOEEJHHPNNO);
EAHPNACBLDD eahpnacbldd2;
tool2.PostPickupEvent = eahpnacbldd2;
Tool tool3 = this.<MBFGOCOFHHM>k__BackingField;
Action<Tool, Vector3, Quaternion, Vector3, bool> action3;
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> eahpnacbldd3 = EAHPNACBLDD.BPJDFPACLMK(tool3.PostResetEvent, action3);
tool3.PostResetEvent = eahpnacbldd3;
}
Debug.LogError(base.name + " is missing Tool component.");
int num2;
Action action4;
KLLMCPFPIIE<int> kllmcpfpiie = new KLLMCPFPIIE(this, "HP", 1, (OHOEENCHJJE)num2, action4, num2);
num2 = 0;
this.PAMCNCJAJDE = kllmcpfpiie;
Action action5 = new Action(this.DPCBANINOLH);
KLLMCPFPIIE<bool> kllmcpfpiie2;
this.KCMCLDEPDAH = kllmcpfpiie2;
GameObject gameObject = this.fracturedObject;
int num3 = 0;
if (gameObject != num3)
{
RagdollPiece[] componentsInChildren = this.fracturedObject.GetComponentsInChildren<RagdollPiece>(true);
GameObject gameObject2 = this.fracturedObject;
this.LCMLJHDFCOJ = componentsInChildren;
int num4 = 0;
gameObject2.SetActive(num4 != 0);
}
MeleeWeapon meleeWeapon = this.thisWeapon;
int num5 = 0;
if (meleeWeapon != num5)
{
MeleeWeapon meleeWeapon2 = this.thisWeapon;
Weapon.LBLCAILBAJI lblcailbaji = new Weapon.LBLCAILBAJI(this.HLKIJKAOOFJ);
meleeWeapon2.PNBLJFFPGNL += lblcailbaji;
MeleeWeapon meleeWeapon3 = this.thisWeapon;
Weapon.NPHCMDJAAMN nphcmdjaamn = new Weapon.NPHCMDJAAMN(this.BNGKNNHAKAP);
meleeWeapon3.EIMFCMEGGPP += nphcmdjaamn;
MeleeWeapon meleeWeapon4 = this.thisWeapon;
Weapon.EMEJOMLNINC emejomlninc = new Weapon.EMEJOMLNINC(this.PLNIMJMBHID);
meleeWeapon4.BEKCCHHMPEH += emejomlninc;
MeleeWeapon meleeWeapon5 = this.thisWeapon;
Weapon.MPPJCKFGBGO mppjckfgbgo = new Weapon.MPPJCKFGBGO(this.BEFAIONLJPD);
meleeWeapon5.NMMNPCKPNDM += mppjckfgbgo;
MeleeWeapon meleeWeapon6 = this.thisWeapon;
Weapon.GOJEHKCBHJO gojehkcbhjo = new Weapon.GOJEHKCBHJO(this.IPKDFBMOMFB);
meleeWeapon6.FIEIACGBCCI += gojehkcbhjo;
}
this.NNHGCACFLDL = num2 != 0;
}
// Token: 0x060004AF RID: 1199 RVA: 0x00018FF8 File Offset: 0x000171F8
[Token(Token = "0x60004AF")]
[Address(RVA = "0x1509170", Offset = "0x1508170", VA = "0x181509170")]
private void Start()
{
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
int num = 0;
tool.NFNOHGFMPEA = num != 0;
CreationObject creationObject = this.<MBFGOCOFHHM>k__BackingField.creationObject;
int num2 = 0;
if (creationObject != num2)
{
CreationObject creationObject2 = this.<MBFGOCOFHHM>k__BackingField.creationObject;
OMKPHDBNLKH<CreationObjectSettingBooleanUIControl, bool>.DEDABHKCIBG <>9__27_ = BreakableObject.<>c.<>9__27_0;
if (<>9__27_ == 0)
{
BreakableObject.<>c.<>9__27_0 = (MakerPenPaletteConfigScreen editableUiFlow) => editableUiFlow.DefaultBoolUIControlPrefab;
}
OMKPHDBNLKH<CreationObjectSettingBooleanUIControl, bool>.OHINDOLFNMP ohindolfnmp = new OMKPHDBNLKH.OHINDOLFNMP(this.MPPNPFFPEKC);
CPNMFOKDBKM cpnmfokdbkm = new CPNMFOKDBKM(<>9__27_, ohindolfnmp, 100);
int num3 = 0;
ILINODKFHEO ilinodkfheo = creationObject2.AddConfigurableSetting(cpnmfokdbkm);
CreationObject creationObject3 = this.<MBFGOCOFHHM>k__BackingField.creationObject;
DOPNALIMPNA[] array = new DOPNALIMPNA[0];
Func<bool> func = new Func(this.LKNKPCBECJD);
Action<bool> action = new Action(this.AGBFJLFOHDA);
int num4 = 0;
int num5 = 0;
string text;
string text2;
ulong num6;
DHCINNFLBBA dhcinnflbba = ONOKJPIMIIP.LBJPOFMMGGP(func, action, num5, num4, text, text2, (int)num6, num3);
if (dhcinnflbba != 0)
{
}
array[0] = dhcinnflbba;
ECJBHJOCKHL ecjbhjockhl = creationObject3.AddFoldoutMenu("Breakable Settings", 100, array);
}
GameObject gameObject = this.wholeObject;
int num7 = 0;
if (gameObject != num7)
{
this.wholeObject.SetActive(true);
}
GameObject gameObject2 = this.fracturedObject;
int num8 = 0;
if (gameObject2 != num8)
{
GameObject gameObject3 = this.fracturedObject;
int num9 = 0;
gameObject3.SetActive(num9 != 0);
}
CreationObject creationObject4 = this.<MBFGOCOFHHM>k__BackingField.creationObject;
int num10 = 0;
if (creationObject4 != num10)
{
bool flag = this.KCMCLDEPDAH.IAHDANBDAAM() != null;
CreationObject creationObject5 = this.<MBFGOCOFHHM>k__BackingField.creationObject;
AOLMGGAPKEH fcdkdfpadme = this.FCDKDFPADME;
if (flag)
{
fcdkdfpadme.BIHKNNPGGKP(creationObject5);
throw new NullReferenceException();
}
fcdkdfpadme.BPAJKKAGPKB(creationObject5);
}
}
// Token: 0x060004B0 RID: 1200 RVA: 0x000191A0 File Offset: 0x000173A0
[Token(Token = "0x60004B0")]
[Address(RVA = "0x1508960", Offset = "0x1507960", VA = "0x181508960")]
private void OnDisable()
{
this.MEAOOANLNHB();
}
// Token: 0x060004B1 RID: 1201 RVA: 0x000191B4 File Offset: 0x000173B4
[Token(Token = "0x60004B1")]
[Address(RVA = "0x1508650", Offset = "0x1507650", VA = "0x181508650", Slot = "14")]
protected override void OnDestroy()
{
base.OnDestroy();
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
int num = 0;
if (tool != num)
{
Tool tool2 = this.<MBFGOCOFHHM>k__BackingField;
Action<Tool, Weapon, FJDJKDOJKDO, Vector3, Vector3> action;
EAHPNACBLDD<Tool, Weapon, FJDJKDOJKDO, Vector3, Vector3> eahpnacbldd = EAHPNACBLDD.GMNMHGMFGOL(tool2.AttackAppliedEvent, action);
tool2.AttackAppliedEvent = eahpnacbldd;
Tool tool3 = this.<MBFGOCOFHHM>k__BackingField;
MFBGLIHGCGO<Tool> postPickupEvent = tool3.PostPickupEvent;
Action<Tool> action2 = new Action(this.EOEEJHHPNNO);
EAHPNACBLDD eahpnacbldd2;
tool3.PostPickupEvent = eahpnacbldd2;
Tool tool4 = this.<MBFGOCOFHHM>k__BackingField;
Action<Tool, Vector3, Quaternion, Vector3, bool> action3;
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> eahpnacbldd3 = EAHPNACBLDD.GMNMHGMFGOL(tool4.PostResetEvent, action3);
tool4.PostResetEvent = eahpnacbldd3;
}
MeleeWeapon meleeWeapon = this.thisWeapon;
int num2 = 0;
if (meleeWeapon != num2)
{
MeleeWeapon meleeWeapon2 = this.thisWeapon;
Weapon.LBLCAILBAJI lblcailbaji = new Weapon.LBLCAILBAJI(this.HLKIJKAOOFJ);
meleeWeapon2.PNBLJFFPGNL -= lblcailbaji;
MeleeWeapon meleeWeapon3 = this.thisWeapon;
Weapon.NPHCMDJAAMN nphcmdjaamn = new Weapon.NPHCMDJAAMN(this.BNGKNNHAKAP);
meleeWeapon3.EIMFCMEGGPP -= nphcmdjaamn;
MeleeWeapon meleeWeapon4 = this.thisWeapon;
Weapon.EMEJOMLNINC emejomlninc = new Weapon.EMEJOMLNINC(this.PLNIMJMBHID);
meleeWeapon4.BEKCCHHMPEH -= emejomlninc;
MeleeWeapon meleeWeapon5 = this.thisWeapon;
Weapon.MPPJCKFGBGO mppjckfgbgo = new Weapon.MPPJCKFGBGO(this.BEFAIONLJPD);
meleeWeapon5.NMMNPCKPNDM -= mppjckfgbgo;
MeleeWeapon meleeWeapon6 = this.thisWeapon;
Weapon.GOJEHKCBHJO gojehkcbhjo = new Weapon.GOJEHKCBHJO(this.IPKDFBMOMFB);
meleeWeapon6.FIEIACGBCCI -= gojehkcbhjo;
}
}
// Token: 0x060004B2 RID: 1202 RVA: 0x000192FC File Offset: 0x000174FC
[Token(Token = "0x60004B2")]
[Address(RVA = "0x1508030", Offset = "0x1507030", VA = "0x181508030", Slot = "19")]
protected virtual void LMOKCLBBEMJ()
{
int num = this.PAMCNCJAJDE.IAHDANBDAAM();
if (base.gameObject.activeSelf)
{
Coroutine ljgnfmlilfa = this.LJGNFMLILFA;
if (ljgnfmlilfa != 0)
{
base.StopCoroutine(ljgnfmlilfa);
this.LJGNFMLILFA = (ulong)0L;
}
BreakableObject.CBHLHAEAGFB cbhlhaeagfb;
cbhlhaeagfb.System.IDisposable.Dispose();
cbhlhaeagfb.<>1__state = (int)((ulong)0L);
cbhlhaeagfb.<>4__this = this;
Coroutine coroutine = base.StartCoroutine(cbhlhaeagfb);
this.LJGNFMLILFA = coroutine;
}
}
// Token: 0x060004B3 RID: 1203 RVA: 0x0001936C File Offset: 0x0001756C
[Token(Token = "0x60004B3")]
[Address(RVA = "0x1507790", Offset = "0x1506790", VA = "0x181507790")]
private void DPCBANINOLH()
{
CreationObject creationObject = this.<MBFGOCOFHHM>k__BackingField.creationObject;
int num = 0;
if (!(creationObject != num))
{
return;
}
bool flag = this.KCMCLDEPDAH.IAHDANBDAAM() != null;
CreationObject creationObject2 = this.<MBFGOCOFHHM>k__BackingField.creationObject;
AOLMGGAPKEH fcdkdfpadme = this.FCDKDFPADME;
if (!flag)
{
fcdkdfpadme.BPAJKKAGPKB(creationObject2);
return;
}
}
// Token: 0x060004B4 RID: 1204 RVA: 0x000193C8 File Offset: 0x000175C8
[Token(Token = "0x60004B4")]
[Address(RVA = "0x15076F0", Offset = "0x15066F0", VA = "0x1815076F0")]
private void CFFPNCLHIKB()
{
Coroutine ljgnfmlilfa = this.LJGNFMLILFA;
if (ljgnfmlilfa != 0)
{
base.StopCoroutine(ljgnfmlilfa);
this.LJGNFMLILFA = (ulong)0L;
}
BreakableObject.CBHLHAEAGFB cbhlhaeagfb;
cbhlhaeagfb.System.IDisposable.Dispose();
cbhlhaeagfb.<>1__state = (int)((ulong)0L);
cbhlhaeagfb.<>4__this = this;
Coroutine coroutine = base.StartCoroutine(cbhlhaeagfb);
this.LJGNFMLILFA = coroutine;
}
// Token: 0x060004B5 RID: 1205 RVA: 0x00019418 File Offset: 0x00017618
[Token(Token = "0x60004B5")]
[Address(RVA = "0x1507DB0", Offset = "0x1506DB0", VA = "0x181507DB0")]
private void IHMECKOBEIH()
{
Coroutine ljgnfmlilfa = this.LJGNFMLILFA;
if (ljgnfmlilfa != 0)
{
base.StopCoroutine(ljgnfmlilfa);
this.LJGNFMLILFA = (ulong)0L;
}
}
// Token: 0x060004B6 RID: 1206 RVA: 0x00019440 File Offset: 0x00017640
[Token(Token = "0x60004B6")]
[Address(RVA = "0x15079D0", Offset = "0x15069D0", VA = "0x1815079D0")]
private IEnumerator EHMAGCGCKFC()
{
/*
An exception occurred when decompiling this method (060004B6)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator BreakableObject::EHMAGCGCKFC()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
call:void(CBHLHAEAGFB::System.IDisposable.Dispose, ldloc:CBHLHAEAGFB(var_0))
stfld:int32(CBHLHAEAGFB::<>1__state, ldloc:CBHLHAEAGFB(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0)))
stfld:BreakableObject(CBHLHAEAGFB::<>4__this, ldloc:CBHLHAEAGFB(var_0), ldloc:BreakableObject(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: 0x060004B7 RID: 1207 RVA: 0x00019464 File Offset: 0x00017664
[Token(Token = "0x60004B7")]
[Address(RVA = "0x1507A30", Offset = "0x1506A30", VA = "0x181507A30")]
private void EOEEJHHPNNO(Tool EGFEJGHDNAI)
{
if (this.NNHGCACFLDL && this.<MBFGOCOFHHM>k__BackingField.FNFNLDBILFE && this.<MBFGOCOFHHM>k__BackingField.BHNPNHMILIF != 0)
{
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
OKIMOMGKKDH ekjclgjfign = OKIMOMGKKDH.EKJCLGJFIGN;
tool.IKEGONLJBPP = ekjclgjfign;
return;
}
}
// Token: 0x060004B8 RID: 1208 RVA: 0x000194B4 File Offset: 0x000176B4
[Token(Token = "0x60004B8")]
[Address(RVA = "0x1507780", Offset = "0x1506780", VA = "0x181507780")]
private bool CPEKFKLDFMO(Tool NBHJPDBHDHB)
{
return !this.NNHGCACFLDL;
}
// Token: 0x060004B9 RID: 1209 RVA: 0x000194CC File Offset: 0x000176CC
[Token(Token = "0x60004B9")]
[Address(RVA = "0x1509130", Offset = "0x1508130", VA = "0x181509130")]
public void SetBreakable(bool KNALMBLFFKA, object ELOCPIFFCAA)
{
AOLMGGAPKEH fcdkdfpadme = this.FCDKDFPADME;
if (!KNALMBLFFKA)
{
fcdkdfpadme.BPAJKKAGPKB(ELOCPIFFCAA);
return;
}
fcdkdfpadme.BIHKNNPGGKP(ELOCPIFFCAA);
}
// Token: 0x060004BA RID: 1210 RVA: 0x000194FC File Offset: 0x000176FC
[Token(Token = "0x60004BA")]
[Address(RVA = "0x1507FE0", Offset = "0x1506FE0", VA = "0x181507FE0")]
private bool LKNKPCBECJD()
{
return this.KCMCLDEPDAH.IAHDANBDAAM() != null;
}
// Token: 0x060004BB RID: 1211 RVA: 0x0001951C File Offset: 0x0001771C
[Token(Token = "0x60004BB")]
[Address(RVA = "0x1506FA0", Offset = "0x1505FA0", VA = "0x181506FA0")]
private void AGBFJLFOHDA(bool KNALMBLFFKA)
{
CreationObject creationObject = this.<MBFGOCOFHHM>k__BackingField.creationObject;
int num = 0;
if (creationObject != num)
{
KLLMCPFPIIE<bool> kcmcldepdah = this.KCMCLDEPDAH;
}
}
// Token: 0x060004BC RID: 1212 RVA: 0x00019550 File Offset: 0x00017750
[Token(Token = "0x60004BC")]
[Address(RVA = "0x1507690", Offset = "0x1506690", VA = "0x181507690")]
private void BNGKNNHAKAP(Weapon GDIGKHINJCG, Enemy HMEIODIHDCL, GHMDIDJLFMC KNLMJBAKCGF, bool MJJOHHLGOGK)
{
float y = KNLMJBAKCGF.NKKJICPFILJ.y;
float z = KNLMJBAKCGF.FEDGOFKEGEF.z;
float z2 = KNLMJBAKCGF.EGJBGIIHEEL.z;
}
// Token: 0x060004BD RID: 1213 RVA: 0x00019584 File Offset: 0x00017784
[Token(Token = "0x60004BD")]
[Address(RVA = "0x1508970", Offset = "0x1507970", VA = "0x181508970")]
private void PLNIMJMBHID(Weapon GDIGKHINJCG, Player IEKDDPPNFPF, Player.GAHEJKDCLLE NMKAKHOEMGB, GHMDIDJLFMC KNLMJBAKCGF, bool MJJOHHLGOGK)
{
if (NetworkedSingletonMonoBehaviour.FFNIFALJLDD)
{
GameCombatManager combatManager = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.combatManager;
AGAJMBPABDL photonPlayer = IEKDDPPNFPF.DBAJDHGDPOL;
if (combatManager.PlayerIsAlive(photonPlayer))
{
GameCombatManager combatManager2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.combatManager;
AGAJMBPABDL photonPlayer2 = IEKDDPPNFPF.DBAJDHGDPOL;
bool flag = combatManager2.PlayerIsInvincible(photonPlayer2);
throw new NullReferenceException();
}
}
}
// Token: 0x060004BE RID: 1214 RVA: 0x000195D8 File Offset: 0x000177D8
[Token(Token = "0x60004BE")]
[Address(RVA = "0x1507690", Offset = "0x1506690", VA = "0x181507690")]
private void BEFAIONLJPD(Weapon GDIGKHINJCG, Tool BKKNJFFJBKN, GHMDIDJLFMC KNLMJBAKCGF, bool MJJOHHLGOGK)
{
float y = KNLMJBAKCGF.NKKJICPFILJ.y;
float z = KNLMJBAKCGF.FEDGOFKEGEF.z;
float z2 = KNLMJBAKCGF.EGJBGIIHEEL.z;
}
// Token: 0x060004BF RID: 1215 RVA: 0x0001960C File Offset: 0x0001780C
[Token(Token = "0x60004BF")]
[Address(RVA = "0x1507DE0", Offset = "0x1506DE0", VA = "0x181507DE0")]
private void IPKDFBMOMFB(Weapon GDIGKHINJCG, GHMDIDJLFMC KNLMJBAKCGF, bool MJJOHHLGOGK)
{
if (!this.<MBFGOCOFHHM>k__BackingField.FNFNLDBILFE)
{
float y = KNLMJBAKCGF.NKKJICPFILJ.y;
float z = KNLMJBAKCGF.FEDGOFKEGEF.z;
float z2 = KNLMJBAKCGF.EGJBGIIHEEL.z;
}
}
// Token: 0x060004C0 RID: 1216 RVA: 0x00019654 File Offset: 0x00017854
[Token(Token = "0x60004C0")]
[Address(RVA = "0x1507D40", Offset = "0x1506D40", VA = "0x181507D40")]
private void HLKIJKAOOFJ(Player EDIBICHIJJH)
{
if (base.OGIBLNIIHDK)
{
GHMDIDJLFMC neoflneplpj = this.NEOFLNEPLPJ;
float y = this.NEOFLNEPLPJ.NKKJICPFILJ.y;
float z = this.NEOFLNEPLPJ.FEDGOFKEGEF.z;
float z2 = this.NEOFLNEPLPJ.EGJBGIIHEEL.z;
this.MBDDMCAPFLM(neoflneplpj);
}
}
// Token: 0x060004C1 RID: 1217 RVA: 0x000196AC File Offset: 0x000178AC
[Token(Token = "0x60004C1")]
[Address(RVA = "0x1507E70", Offset = "0x1506E70", VA = "0x181507E70")]
private void JFBIDBOOICE(GHMDIDJLFMC KNLMJBAKCGF, bool MJJOHHLGOGK)
{
if (base.OGIBLNIIHDK && (MJJOHHLGOGK || this.shatterOnAnyImpact != MJJOHHLGOGK))
{
MeleeWeapon meleeWeapon = this.thisWeapon;
int num = 0;
if (meleeWeapon != num)
{
float y = KNLMJBAKCGF.NKKJICPFILJ.y;
float z = KNLMJBAKCGF.FEDGOFKEGEF.z;
float z2 = KNLMJBAKCGF.EGJBGIIHEEL.z;
}
}
float y2 = KNLMJBAKCGF.NKKJICPFILJ.y;
float z3 = KNLMJBAKCGF.FEDGOFKEGEF.z;
this.NEOFLNEPLPJ.NKKJICPFILJ.y = y2;
float z4 = KNLMJBAKCGF.EGJBGIIHEEL.z;
this.NEOFLNEPLPJ.FEDGOFKEGEF.z = z3;
this.NEOFLNEPLPJ.EGJBGIIHEEL.z = z4;
}
// Token: 0x060004C2 RID: 1218 RVA: 0x00019764 File Offset: 0x00017964
[Token(Token = "0x60004C2")]
[Address(RVA = "0x1508130", Offset = "0x1507130", VA = "0x181508130")]
private void MBDDMCAPFLM(GHMDIDJLFMC KNLMJBAKCGF)
{
float y = KNLMJBAKCGF.NKKJICPFILJ.y;
float y2 = KNLMJBAKCGF.NKKJICPFILJ.y;
Vector3 vector;
float z = vector.z;
if (base.OGIBLNIIHDK)
{
}
}
// Token: 0x060004C3 RID: 1219 RVA: 0x0001979C File Offset: 0x0001799C
[Token(Token = "0x60004C3")]
[Address(RVA = "0x1508290", Offset = "0x1507290", VA = "0x181508290")]
private void MBDDMCAPFLM(Vector3 KPLDEODOJID, Vector3 NHAOMEMANJA)
{
if (base.OGIBLNIIHDK)
{
float z = NHAOMEMANJA.z;
float z2 = KPLDEODOJID.z;
}
}
// Token: 0x060004C4 RID: 1220 RVA: 0x000197C0 File Offset: 0x000179C0
[Token(Token = "0x60004C4")]
[Address(RVA = "0x1508320", Offset = "0x1507320", VA = "0x181508320")]
private void MEAOOANLNHB()
{
RagdollPiece[] lcmljhdfcoj = this.LCMLJHDFCOJ;
this.NNHGCACFLDL = false;
if (lcmljhdfcoj != 0)
{
int num = 0;
int num2 = 0;
int length = lcmljhdfcoj.Length;
if (num2 < length)
{
lcmljhdfcoj[num].StopRagdoll();
num++;
}
}
Coroutine ljgnfmlilfa = this.LJGNFMLILFA;
if (ljgnfmlilfa != 0)
{
base.StopCoroutine(ljgnfmlilfa);
this.LJGNFMLILFA = (ulong)0L;
}
this.<MBFGOCOFHHM>k__BackingField.rigidbodyEx.VelocityProvider = (ulong)0L;
}
// Token: 0x060004C5 RID: 1221 RVA: 0x00019838 File Offset: 0x00017A38
[Token(Token = "0x60004C5")]
[Address(RVA = "0x1507050", Offset = "0x1506050", VA = "0x181507050", Slot = "20")]
protected virtual void APBEFBBOMDJ(Tool EGFEJGHDNAI, Vector3 DDHPAFKBMON, Quaternion IGPENJBJADK, Vector3 GMMJHABHDHE, bool CDKDOENOHIL)
{
this.MEAOOANLNHB();
if (base.OGIBLNIIHDK)
{
this.MMNFJJDMFNP = 1;
}
this.<MBFGOCOFHHM>k__BackingField.rigidbodyEx.RemoveKinematic(this);
this.<MBFGOCOFHHM>k__BackingField.EnablePickup(this);
GameObject gameObject = this.wholeObject;
int num = 0;
if (gameObject != num)
{
this.wholeObject.SetActive(true);
}
GameObject gameObject2 = this.fracturedObject;
int num2 = 0;
if (gameObject2 != num2)
{
GameObject gameObject3 = this.fracturedObject;
int num3 = 0;
gameObject3.SetActive(num3 != 0);
}
ToolPlayerAttractor toolPlayerAttractor = this.attractor;
int num4 = 0;
if (toolPlayerAttractor != num4)
{
ToolPlayerAttractor toolPlayerAttractor2 = this.attractor;
int num5 = 0;
toolPlayerAttractor2.DHFOGELFLFC = num5 != 0;
}
}
// Token: 0x060004C6 RID: 1222 RVA: 0x000198F0 File Offset: 0x00017AF0
[Token(Token = "0x60004C6")]
[Address(RVA = "0x1507B10", Offset = "0x1506B10", VA = "0x181507B10", Slot = "21")]
protected virtual void FCAOMHKOJOH(Tool NBHJPDBHDHB, Weapon GDIGKHINJCG, FJDJKDOJKDO GMPCPLNNMGD, Vector3 KPLDEODOJID, Vector3 CDFHDACBFKN)
{
if (base.OGIBLNIIHDK && this.PAMCNCJAJDE.IAHDANBDAAM() > 0 && !this.FCDKDFPADME.CFLJGNJLBFG)
{
int num = 0;
this.MMNFJJDMFNP = num;
int num2 = this.PAMCNCJAJDE.IAHDANBDAAM();
if (base.OGIBLNIIHDK && !this.NNHGCACFLDL)
{
int num3 = this.PAMCNCJAJDE.IAHDANBDAAM();
Vector3 vector;
float z = vector.z;
PhotonView photonView = base.JDHMIOJKLCK;
DGLOJCGDOGG.LFLFMIMNCON<Vector3> lflfmimncon = new DGLOJCGDOGG.LFLFMIMNCON(this.RpcShatter);
}
}
}
// Token: 0x060004C7 RID: 1223 RVA: 0x0001997C File Offset: 0x00017B7C
[Token(Token = "0x60004C7")]
[Address(RVA = "0x15084A0", Offset = "0x15074A0", VA = "0x1815084A0")]
private void OKPMKONDMPH(Vector3 NHAOMEMANJA)
{
int num = this.PAMCNCJAJDE.IAHDANBDAAM();
if (base.OGIBLNIIHDK && !this.NNHGCACFLDL)
{
int num2 = this.PAMCNCJAJDE.IAHDANBDAAM();
float z = NHAOMEMANJA.z;
Vector3 vector;
float z2 = vector.z;
NHAOMEMANJA.z = z2;
PhotonView photonView = base.JDHMIOJKLCK;
DGLOJCGDOGG.LFLFMIMNCON<Vector3> lflfmimncon = new DGLOJCGDOGG.LFLFMIMNCON(this.RpcShatter);
float z3 = NHAOMEMANJA.z;
}
}
// Token: 0x060004C8 RID: 1224 RVA: 0x000199F0 File Offset: 0x00017BF0
[Token(Token = "0x60004C8")]
[Address(RVA = "0x1508B00", Offset = "0x1507B00", VA = "0x181508B00")]
[NFOMENMAOIA]
protected void RpcShatter(Vector3 POMGIDPAKLH)
{
if (this.<MBFGOCOFHHM>k__BackingField.FNFNLDBILFE && this.<MBFGOCOFHHM>k__BackingField.OGIBLNIIHDK)
{
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
OKIMOMGKKDH ekjclgjfign = OKIMOMGKKDH.EKJCLGJFIGN;
tool.IKEGONLJBPP = ekjclgjfign;
}
RigidbodyEx rigidbodyEx = this.<MBFGOCOFHHM>k__BackingField.rigidbodyEx;
JAKMIGBBBOM.BAFPMPJFBEM bafpmpjfbem = JAKMIGBBBOM.FMDJFHMFJLO;
rigidbodyEx.VelocityProvider = bafpmpjfbem;
Tool tool2 = this.<MBFGOCOFHHM>k__BackingField;
this.NNHGCACFLDL = true;
tool2.rigidbodyEx.AddKinematic(this);
this.<MBFGOCOFHHM>k__BackingField.DisablePickup(this);
GameObject gameObject = this.wholeObject;
int num = 0;
if (gameObject != num)
{
GameObject gameObject2 = this.wholeObject;
int num2 = 0;
gameObject2.SetActive(num2 != 0);
}
GameObject gameObject3 = this.fracturedObject;
int num3 = 0;
bool flag = gameObject3 != num3;
int num4 = 0;
if (flag)
{
this.fracturedObject.SetActive(true);
RagdollPiece[] lcmljhdfcoj = this.LCMLJHDFCOJ;
if (lcmljhdfcoj != 0)
{
int length = lcmljhdfcoj.Length;
if (num4 < length)
{
RagdollPiece ragdollPiece = lcmljhdfcoj[num4];
Transform transform = base.transform;
Vector3 vector;
float z = vector.z;
float z2 = POMGIDPAKLH.z;
num4++;
}
}
}
ToolPlayerAttractor toolPlayerAttractor = this.attractor;
int num5 = 0;
if (toolPlayerAttractor != num5)
{
this.attractor.DHFOGELFLFC = true;
}
RecRoomAudioClip[] array = this.smashSounds;
if (array != 0)
{
Transform transform2 = base.transform;
int num6 = 0;
int num7 = 0;
SFXAudioSource sfxaudioSource = AudioManager.PlayRandom3DSFX(array, transform2, num7, num6 != 0, num4);
}
PooledParticle pooledParticle = this.smashParticlePrefab;
int num8 = 0;
if (pooledParticle != num8)
{
GlobalPool instance = GlobalPool.ONCPNMDGGKG;
PooledParticle pooledParticle2 = this.smashParticlePrefab;
PooledParticle pooledParticle3 = instance.Acquire<PooledParticle>(pooledParticle2);
int num9 = 0;
if (pooledParticle3 != num9)
{
Transform transform3 = base.transform;
Vector3 vector2;
float z3 = vector2.z;
Transform transform4 = base.transform;
}
}
Action onShatterEvent = this.OnShatterEvent;
if (onShatterEvent != 0)
{
onShatterEvent();
}
}
// Token: 0x170000B6 RID: 182
// (get) Token: 0x060004C9 RID: 1225 RVA: 0x00019BD4 File Offset: 0x00017DD4
[Token(Token = "0x170000B6")]
private bool DFPHKKDMMNF
{
[Token(Token = "0x60004C9")]
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "15")]
get
{
}
}
// Token: 0x060004CA RID: 1226 RVA: 0x00019BE4 File Offset: 0x00017DE4
[Token(Token = "0x60004CA")]
[Address(RVA = "0x1507870", Offset = "0x1506870", VA = "0x181507870", Slot = "16")]
public void DeserializeFrom(KPNDFONGDGF HFBJGCHOANH)
{
KLLMCPFPIIE<bool> kcmcldepdah = this.KCMCLDEPDAH;
}
// Token: 0x060004CB RID: 1227 RVA: 0x00019C28 File Offset: 0x00017E28
[Token(Token = "0x60004CB")]
[Address(RVA = "0x1508FD0", Offset = "0x1507FD0", VA = "0x181508FD0", Slot = "17")]
public void SerializeTo(ref PDEKIHFJKHJ IABNDBNHMKF, ref MKNCHKCCIHK NHFINJNIPGK, StringBuilder BIPOIFGEMGB)
{
GHCNGEDCLHA ghcngedclha = new GHCNGEDCLHA();
bool flag = this.KCMCLDEPDAH.IAHDANBDAAM() != null;
ghcngedclha.HFOEABMJHON = flag;
}
// Token: 0x060004CC RID: 1228 RVA: 0x00019C7C File Offset: 0x00017E7C
[Token(Token = "0x60004CC")]
[Address(RVA = "0x1507F80", Offset = "0x1506F80", VA = "0x181507F80", Slot = "18")]
private void LBLKKLJMGMM(DDOCLDALHON KDMGDPJLIBN)
{
global::UnityEngine.Object.DestroyImmediate(this.fracturedObject);
}
// Token: 0x060004CD RID: 1229 RVA: 0x00019C94 File Offset: 0x00017E94
[Token(Token = "0x60004CD")]
[Address(RVA = "0x15095E0", Offset = "0x15085E0", VA = "0x1815095E0")]
public BreakableObject()
{
AOLMGGAPKEH aolmggapkeh = new AOLMGGAPKEH();
this.FCDKDFPADME = aolmggapkeh;
GHMDIDJLFMC edlikgjfhap = GHMDIDJLFMC.EDLIKGJFHAP;
this.NEOFLNEPLPJ = edlikgjfhap;
this.NEOFLNEPLPJ.FEDGOFKEGEF.z = edlikgjfhap;
base..ctor();
}
// Token: 0x060004CE RID: 1230 RVA: 0x00019CE8 File Offset: 0x00017EE8
[Token(Token = "0x60004CE")]
[Address(RVA = "0x15083E0", Offset = "0x15073E0", VA = "0x1815083E0")]
[CompilerGenerated]
private void MPPNPFFPEKC(CreationObjectSettingBooleanUIControl GCCLEJOGCCE)
{
PLDMAFINLJO.FANDNIHFMNM(GCCLEJOGCCE.PropertyDescription, "Is Breakable");
Func<bool> func = new Func(this.LKNKPCBECJD);
Action<bool> action = new Action(this.AGBFJLFOHDA);
}
// Token: 0x040003F4 RID: 1012
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x40003F4")]
[SerializeField]
[OAGJHJAIMMP(FHBJCBPFODN.Self, false, false, false)]
private MeleeWeapon thisWeapon;
// Token: 0x040003F5 RID: 1013
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x40003F5")]
[SerializeField]
[OAGJHJAIMMP(FHBJCBPFODN.Self, false, false, false)]
private ToolPlayerAttractor attractor;
// Token: 0x040003F6 RID: 1014
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x40003F6")]
[SerializeField]
[Header("Meshes")]
private GameObject wholeObject;
// Token: 0x040003F7 RID: 1015
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x40003F7")]
[SerializeField]
private GameObject fracturedObject;
// Token: 0x040003F8 RID: 1016
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x40003F8")]
[SerializeField]
[Header("Destruction")]
private bool shatterOnAnyImpact;
// Token: 0x040003F9 RID: 1017
[FieldOffset(Offset = "0x64")]
[Token(Token = "0x40003F9")]
[SerializeField]
private float shatterSpeed = 2f;
// Token: 0x040003FA RID: 1018
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x40003FA")]
[SerializeField]
private float brokenLifetime = 5f;
// Token: 0x040003FB RID: 1019
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x40003FB")]
[SerializeField]
[Header("Feedback")]
private PooledParticle smashParticlePrefab;
// Token: 0x040003FC RID: 1020
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x40003FC")]
[SerializeField]
private RecRoomAudioClip[] smashSounds;
// Token: 0x040003FD RID: 1021
[FieldOffset(Offset = "0x80")]
[Token(Token = "0x40003FD")]
private KLLMCPFPIIE<int> PAMCNCJAJDE;
// Token: 0x040003FE RID: 1022
[FieldOffset(Offset = "0x88")]
[Token(Token = "0x40003FE")]
private KLLMCPFPIIE<bool> KCMCLDEPDAH;
// Token: 0x040003FF RID: 1023
[FieldOffset(Offset = "0x90")]
[Token(Token = "0x40003FF")]
private AOLMGGAPKEH FCDKDFPADME;
// Token: 0x04000400 RID: 1024
[FieldOffset(Offset = "0x98")]
[Token(Token = "0x4000400")]
private RagdollPiece[] LCMLJHDFCOJ;
// Token: 0x04000401 RID: 1025
[FieldOffset(Offset = "0xA0")]
[Token(Token = "0x4000401")]
private bool NNHGCACFLDL;
// Token: 0x04000402 RID: 1026
[FieldOffset(Offset = "0xA8")]
[Token(Token = "0x4000402")]
private Coroutine LJGNFMLILFA;
// Token: 0x04000403 RID: 1027
[FieldOffset(Offset = "0xB0")]
[Token(Token = "0x4000403")]
private GHMDIDJLFMC NEOFLNEPLPJ;
// Token: 0x04000404 RID: 1028
[FieldOffset(Offset = "0xF8")]
[Token(Token = "0x4000404")]
public Action OnShatterEvent;
}