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: 0x060004A8 RID: 1192 RVA: 0x00018D9C File Offset: 0x00016F9C // (set) Token: 0x060004A9 RID: 1193 RVA: 0x00018DBC File Offset: 0x00016FBC [Token(Token = "0x170000B3")] public int MMNFJJDMFNP { [Token(Token = "0x60004A8")] [Address(RVA = "0xA0CA90", Offset = "0xA0B890", VA = "0x180A0CA90")] get { return this.PAMCNCJAJDE.IAHDANBDAAM(); } [Token(Token = "0x60004A9")] [Address(RVA = "0xA0CAE0", Offset = "0xA0B8E0", VA = "0x180A0CAE0")] set { KLLMCPFPIIE pamcncjajde = this.PAMCNCJAJDE; int num = 0; int num2 = Mathf.Clamp(value, num, 1); } } // Token: 0x170000B4 RID: 180 // (get) Token: 0x060004AA RID: 1194 RVA: 0x00018DE4 File Offset: 0x00016FE4 // (set) Token: 0x060004AB RID: 1195 RVA: 0x00018DF8 File Offset: 0x00016FF8 [Token(Token = "0x170000B4")] public Tool PBBJCLJPFMI { [Token(Token = "0x60004AA")] [Address(RVA = "0x60CF40", Offset = "0x60BD40", VA = "0x18060CF40")] get; [Token(Token = "0x60004AB")] [Address(RVA = "0x7B58A0", Offset = "0x7B46A0", VA = "0x1807B58A0")] private set; } // Token: 0x170000B5 RID: 181 // (get) Token: 0x060004AC RID: 1196 RVA: 0x00018E0C File Offset: 0x0001700C [Token(Token = "0x170000B5")] public bool MGPIPKGDLIO { [Token(Token = "0x60004AC")] [Address(RVA = "0xA0CA60", Offset = "0xA0B860", VA = "0x180A0CA60")] get { return !this.FCDKDFPADME.CFLJGNJLBFG; } } // Token: 0x060004AD RID: 1197 RVA: 0x00018E30 File Offset: 0x00017030 [Token(Token = "0x60004AD")] [Address(RVA = "0xA0A580", Offset = "0xA09380", VA = "0x180A0A580", Slot = "13")] protected override void Awake() { base..ctor(); Tool component = base.GetComponent(); this.k__BackingField = component; int num = 0; if (!(component == num)) { Tool tool = this.k__BackingField; Action action; EAHPNACBLDD eahpnacbldd = EAHPNACBLDD.BPJDFPACLMK(tool.AttackAppliedEvent, action); tool.AttackAppliedEvent = eahpnacbldd; Tool tool2 = this.k__BackingField; MFBGLIHGCGO postPickupEvent = tool2.PostPickupEvent; Action action2 = new Action(this.EOEEJHHPNNO); EAHPNACBLDD eahpnacbldd2; tool2.PostPickupEvent = eahpnacbldd2; Tool tool3 = this.k__BackingField; Action action3; EAHPNACBLDD eahpnacbldd3 = EAHPNACBLDD.BPJDFPACLMK(tool3.PostResetEvent, action3); tool3.PostResetEvent = eahpnacbldd3; } Debug.LogError(base.name + " is missing Tool component."); int num2; Action action4; KLLMCPFPIIE kllmcpfpiie = new KLLMCPFPIIE(this, "HP", 1, (OHOEENCHJJE)num2, action4, num2); num2 = 0; this.PAMCNCJAJDE = kllmcpfpiie; Action action5 = new Action(this.DPCBANINOLH); KLLMCPFPIIE kllmcpfpiie2; this.KCMCLDEPDAH = kllmcpfpiie2; GameObject gameObject = this.fracturedObject; int num3 = 0; if (gameObject != num3) { RagdollPiece[] componentsInChildren = this.fracturedObject.GetComponentsInChildren(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: 0x060004AE RID: 1198 RVA: 0x00019014 File Offset: 0x00017214 [Token(Token = "0x60004AE")] [Address(RVA = "0xA0C520", Offset = "0xA0B320", VA = "0x180A0C520")] private void Start() { Tool tool = this.k__BackingField; int num = 0; tool.NFNOHGFMPEA = num != 0; CreationObject creationObject = this.k__BackingField.creationObject; int num2 = 0; if (creationObject != num2) { CreationObject creationObject2 = this.k__BackingField.creationObject; OMKPHDBNLKH.DEDABHKCIBG <>9__27_ = BreakableObject.<>c.<>9__27_0; if (<>9__27_ == 0) { BreakableObject.<>c.<>9__27_0 = (MakerPenPaletteConfigScreen editableUiFlow) => editableUiFlow.DefaultBoolUIControlPrefab; } OMKPHDBNLKH.OHINDOLFNMP ohindolfnmp = new OMKPHDBNLKH.OHINDOLFNMP(this.MPPNPFFPEKC); CPNMFOKDBKM cpnmfokdbkm = new CPNMFOKDBKM(<>9__27_, ohindolfnmp, 100); ILINODKFHEO ilinodkfheo = creationObject2.AddConfigurableSetting(cpnmfokdbkm); CreationObject creationObject3 = this.k__BackingField.creationObject; DOPNALIMPNA[] array = new DOPNALIMPNA[1]; Func func = new Func(this.LKNKPCBECJD); Action action = new Action(this.AGBFJLFOHDA); int num3 = 0; int num4 = 0; string text; string text2; DHCINNFLBBA dhcinnflbba = ONOKJPIMIIP.LBJPOFMMGGP(func, action, num4, num3, text, text2); if (dhcinnflbba != 0) { } array[0] = dhcinnflbba; ECJBHJOCKHL ecjbhjockhl = creationObject3.AddFoldoutMenu("Breakable Settings", 100, array); } GameObject gameObject = this.wholeObject; int num5 = 0; if (gameObject != num5) { this.wholeObject.SetActive(true); } GameObject gameObject2 = this.fracturedObject; int num6 = 0; if (gameObject2 != num6) { GameObject gameObject3 = this.fracturedObject; int num7 = 0; gameObject3.SetActive(num7 != 0); } CreationObject creationObject4 = this.k__BackingField.creationObject; int num8 = 0; if (creationObject4 != num8) { bool flag = this.KCMCLDEPDAH.IAHDANBDAAM() != null; CreationObject creationObject5 = this.k__BackingField.creationObject; AOLMGGAPKEH fcdkdfpadme = this.FCDKDFPADME; if (flag) { fcdkdfpadme.BIHKNNPGGKP(creationObject5); throw new NullReferenceException(); } fcdkdfpadme.BPAJKKAGPKB(creationObject5); } } // Token: 0x060004AF RID: 1199 RVA: 0x000191B4 File Offset: 0x000173B4 [Token(Token = "0x60004AF")] [Address(RVA = "0xA0BD10", Offset = "0xA0AB10", VA = "0x180A0BD10")] private void OnDisable() { this.MEAOOANLNHB(); } // Token: 0x060004B0 RID: 1200 RVA: 0x000191C8 File Offset: 0x000173C8 [Token(Token = "0x60004B0")] [Address(RVA = "0xA0BA00", Offset = "0xA0A800", VA = "0x180A0BA00", Slot = "14")] protected override void OnDestroy() { base.OnDestroy(); Tool tool = this.k__BackingField; int num = 0; if (tool != num) { Tool tool2 = this.k__BackingField; Action action; EAHPNACBLDD eahpnacbldd = EAHPNACBLDD.GMNMHGMFGOL(tool2.AttackAppliedEvent, action); tool2.AttackAppliedEvent = eahpnacbldd; Tool tool3 = this.k__BackingField; MFBGLIHGCGO postPickupEvent = tool3.PostPickupEvent; Action action2 = new Action(this.EOEEJHHPNNO); EAHPNACBLDD eahpnacbldd2; tool3.PostPickupEvent = eahpnacbldd2; Tool tool4 = this.k__BackingField; Action action3; EAHPNACBLDD 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: 0x060004B1 RID: 1201 RVA: 0x00019310 File Offset: 0x00017510 [Token(Token = "0x60004B1")] [Address(RVA = "0xA0B3E0", Offset = "0xA0A1E0", VA = "0x180A0B3E0", 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: 0x060004B2 RID: 1202 RVA: 0x00019380 File Offset: 0x00017580 [Token(Token = "0x60004B2")] [Address(RVA = "0xA0AB40", Offset = "0xA09940", VA = "0x180A0AB40")] private void DPCBANINOLH() { CreationObject creationObject = this.k__BackingField.creationObject; int num = 0; if (!(creationObject != num)) { return; } bool flag = this.KCMCLDEPDAH.IAHDANBDAAM() != null; CreationObject creationObject2 = this.k__BackingField.creationObject; AOLMGGAPKEH fcdkdfpadme = this.FCDKDFPADME; if (!flag) { fcdkdfpadme.BPAJKKAGPKB(creationObject2); return; } } // Token: 0x060004B3 RID: 1203 RVA: 0x000193DC File Offset: 0x000175DC [Token(Token = "0x60004B3")] [Address(RVA = "0xA0AAA0", Offset = "0xA098A0", VA = "0x180A0AAA0")] 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: 0x060004B4 RID: 1204 RVA: 0x0001942C File Offset: 0x0001762C [Token(Token = "0x60004B4")] [Address(RVA = "0xA0B160", Offset = "0xA09F60", VA = "0x180A0B160")] private void IHMECKOBEIH() { Coroutine ljgnfmlilfa = this.LJGNFMLILFA; if (ljgnfmlilfa != 0) { base.StopCoroutine(ljgnfmlilfa); this.LJGNFMLILFA = (ulong)0L; } } // Token: 0x060004B5 RID: 1205 RVA: 0x00019454 File Offset: 0x00017654 [Token(Token = "0x60004B5")] [Address(RVA = "0xA0AD80", Offset = "0xA09B80", VA = "0x180A0AD80")] private IEnumerator EHMAGCGCKFC() { /* An exception occurred when decompiling this method (060004B5) 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 1660 */; } // Token: 0x060004B6 RID: 1206 RVA: 0x00019478 File Offset: 0x00017678 [Token(Token = "0x60004B6")] [Address(RVA = "0xA0ADE0", Offset = "0xA09BE0", VA = "0x180A0ADE0")] private void EOEEJHHPNNO(Tool EGFEJGHDNAI) { if (this.NNHGCACFLDL && this.k__BackingField.FNFNLDBILFE && this.k__BackingField.BHNPNHMILIF != 0) { Tool tool = this.k__BackingField; OKIMOMGKKDH ekjclgjfign = OKIMOMGKKDH.EKJCLGJFIGN; tool.IKEGONLJBPP = ekjclgjfign; return; } } // Token: 0x060004B7 RID: 1207 RVA: 0x000194C8 File Offset: 0x000176C8 [Token(Token = "0x60004B7")] [Address(RVA = "0xA0AB30", Offset = "0xA09930", VA = "0x180A0AB30")] private bool CPEKFKLDFMO(Tool NBHJPDBHDHB) { return !this.NNHGCACFLDL; } // Token: 0x060004B8 RID: 1208 RVA: 0x000194E0 File Offset: 0x000176E0 [Token(Token = "0x60004B8")] [Address(RVA = "0xA0C4E0", Offset = "0xA0B2E0", VA = "0x180A0C4E0")] public void SetBreakable(bool KNALMBLFFKA, object ELOCPIFFCAA) { AOLMGGAPKEH fcdkdfpadme = this.FCDKDFPADME; if (!KNALMBLFFKA) { fcdkdfpadme.BPAJKKAGPKB(ELOCPIFFCAA); return; } fcdkdfpadme.BIHKNNPGGKP(ELOCPIFFCAA); } // Token: 0x060004B9 RID: 1209 RVA: 0x00019510 File Offset: 0x00017710 [Token(Token = "0x60004B9")] [Address(RVA = "0xA0B390", Offset = "0xA0A190", VA = "0x180A0B390")] private bool LKNKPCBECJD() { return this.KCMCLDEPDAH.IAHDANBDAAM() != null; } // Token: 0x060004BA RID: 1210 RVA: 0x00019530 File Offset: 0x00017730 [Token(Token = "0x60004BA")] [Address(RVA = "0xA0A350", Offset = "0xA09150", VA = "0x180A0A350")] private void AGBFJLFOHDA(bool KNALMBLFFKA) { CreationObject creationObject = this.k__BackingField.creationObject; int num = 0; if (creationObject != num) { KLLMCPFPIIE kcmcldepdah = this.KCMCLDEPDAH; } } // Token: 0x060004BB RID: 1211 RVA: 0x00019564 File Offset: 0x00017764 [Token(Token = "0x60004BB")] [Address(RVA = "0xA0AA40", Offset = "0xA09840", VA = "0x180A0AA40")] 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: 0x060004BC RID: 1212 RVA: 0x00019598 File Offset: 0x00017798 [Token(Token = "0x60004BC")] [Address(RVA = "0xA0BD20", Offset = "0xA0AB20", VA = "0x180A0BD20")] 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: 0x060004BD RID: 1213 RVA: 0x000195EC File Offset: 0x000177EC [Token(Token = "0x60004BD")] [Address(RVA = "0xA0AA40", Offset = "0xA09840", VA = "0x180A0AA40")] 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: 0x060004BE RID: 1214 RVA: 0x00019620 File Offset: 0x00017820 [Token(Token = "0x60004BE")] [Address(RVA = "0xA0B190", Offset = "0xA09F90", VA = "0x180A0B190")] private void IPKDFBMOMFB(Weapon GDIGKHINJCG, GHMDIDJLFMC KNLMJBAKCGF, bool MJJOHHLGOGK) { if (!this.k__BackingField.FNFNLDBILFE) { float y = KNLMJBAKCGF.NKKJICPFILJ.y; float z = KNLMJBAKCGF.FEDGOFKEGEF.z; float z2 = KNLMJBAKCGF.EGJBGIIHEEL.z; } } // Token: 0x060004BF RID: 1215 RVA: 0x00019668 File Offset: 0x00017868 [Token(Token = "0x60004BF")] [Address(RVA = "0xA0B0F0", Offset = "0xA09EF0", VA = "0x180A0B0F0")] 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: 0x060004C0 RID: 1216 RVA: 0x000196C0 File Offset: 0x000178C0 [Token(Token = "0x60004C0")] [Address(RVA = "0xA0B220", Offset = "0xA0A020", VA = "0x180A0B220")] 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: 0x060004C1 RID: 1217 RVA: 0x00019778 File Offset: 0x00017978 [Token(Token = "0x60004C1")] [Address(RVA = "0xA0B4E0", Offset = "0xA0A2E0", VA = "0x180A0B4E0")] 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: 0x060004C2 RID: 1218 RVA: 0x000197B0 File Offset: 0x000179B0 [Token(Token = "0x60004C2")] [Address(RVA = "0xA0B640", Offset = "0xA0A440", VA = "0x180A0B640")] private void MBDDMCAPFLM(Vector3 KPLDEODOJID, Vector3 NHAOMEMANJA) { if (base.OGIBLNIIHDK) { float z = NHAOMEMANJA.z; float z2 = KPLDEODOJID.z; } } // Token: 0x060004C3 RID: 1219 RVA: 0x000197D4 File Offset: 0x000179D4 [Token(Token = "0x60004C3")] [Address(RVA = "0xA0B6D0", Offset = "0xA0A4D0", VA = "0x180A0B6D0")] 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.k__BackingField.rigidbodyEx.VelocityProvider = (ulong)0L; } // Token: 0x060004C4 RID: 1220 RVA: 0x0001984C File Offset: 0x00017A4C [Token(Token = "0x60004C4")] [Address(RVA = "0xA0A400", Offset = "0xA09200", VA = "0x180A0A400", 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.k__BackingField.rigidbodyEx.RemoveKinematic(this); this.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: 0x060004C5 RID: 1221 RVA: 0x00019904 File Offset: 0x00017B04 [Token(Token = "0x60004C5")] [Address(RVA = "0xA0AEC0", Offset = "0xA09CC0", VA = "0x180A0AEC0", 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 lflfmimncon = new DGLOJCGDOGG.LFLFMIMNCON(this.RpcShatter); } } } // Token: 0x060004C6 RID: 1222 RVA: 0x00019990 File Offset: 0x00017B90 [Token(Token = "0x60004C6")] [Address(RVA = "0xA0B850", Offset = "0xA0A650", VA = "0x180A0B850")] 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 lflfmimncon = new DGLOJCGDOGG.LFLFMIMNCON(this.RpcShatter); float z3 = NHAOMEMANJA.z; } } // Token: 0x060004C7 RID: 1223 RVA: 0x00019A04 File Offset: 0x00017C04 [Token(Token = "0x60004C7")] [Address(RVA = "0xA0BEB0", Offset = "0xA0ACB0", VA = "0x180A0BEB0")] [NFOMENMAOIA] protected void RpcShatter(Vector3 POMGIDPAKLH) { if (this.k__BackingField.FNFNLDBILFE && this.k__BackingField.OGIBLNIIHDK) { Tool tool = this.k__BackingField; OKIMOMGKKDH ekjclgjfign = OKIMOMGKKDH.EKJCLGJFIGN; tool.IKEGONLJBPP = ekjclgjfign; } RigidbodyEx rigidbodyEx = this.k__BackingField.rigidbodyEx; JAKMIGBBBOM.BAFPMPJFBEM bafpmpjfbem = JAKMIGBBBOM.FMDJFHMFJLO; rigidbodyEx.VelocityProvider = bafpmpjfbem; Tool tool2 = this.k__BackingField; this.NNHGCACFLDL = true; tool2.rigidbodyEx.AddKinematic(this); this.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(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: 0x060004C8 RID: 1224 RVA: 0x00019BE8 File Offset: 0x00017DE8 [Token(Token = "0x170000B6")] private bool DFPHKKDMMNF { [Token(Token = "0x60004C8")] [Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "15")] get { } } // Token: 0x060004C9 RID: 1225 RVA: 0x00019BF8 File Offset: 0x00017DF8 [Token(Token = "0x60004C9")] [Address(RVA = "0xA0AC20", Offset = "0xA09A20", VA = "0x180A0AC20", Slot = "16")] public void DeserializeFrom(KPNDFONGDGF HFBJGCHOANH) { KLLMCPFPIIE kcmcldepdah = this.KCMCLDEPDAH; } // Token: 0x060004CA RID: 1226 RVA: 0x00019C3C File Offset: 0x00017E3C [Token(Token = "0x60004CA")] [Address(RVA = "0xA0C380", Offset = "0xA0B180", VA = "0x180A0C380", 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: 0x060004CB RID: 1227 RVA: 0x00019C90 File Offset: 0x00017E90 [Token(Token = "0x60004CB")] [Address(RVA = "0xA0B330", Offset = "0xA0A130", VA = "0x180A0B330", Slot = "18")] private void LBLKKLJMGMM(DDOCLDALHON KDMGDPJLIBN) { global::UnityEngine.Object.DestroyImmediate(this.fracturedObject); } // Token: 0x060004CC RID: 1228 RVA: 0x00019CA8 File Offset: 0x00017EA8 [Token(Token = "0x60004CC")] [Address(RVA = "0xA0C980", Offset = "0xA0B780", VA = "0x180A0C980")] public BreakableObject() { AOLMGGAPKEH aolmggapkeh = new AOLMGGAPKEH(); this.FCDKDFPADME = aolmggapkeh; GHMDIDJLFMC edlikgjfhap = GHMDIDJLFMC.EDLIKGJFHAP; this.NEOFLNEPLPJ = edlikgjfhap; this.NEOFLNEPLPJ.FEDGOFKEGEF.z = edlikgjfhap; base..ctor(); } // Token: 0x060004CD RID: 1229 RVA: 0x00019CFC File Offset: 0x00017EFC [Token(Token = "0x60004CD")] [Address(RVA = "0xA0B790", Offset = "0xA0A590", VA = "0x180A0B790")] [CompilerGenerated] private void MPPNPFFPEKC(CreationObjectSettingBooleanUIControl GCCLEJOGCCE) { PLDMAFINLJO.FANDNIHFMNM(GCCLEJOGCCE.PropertyDescription, "Is Breakable"); Func func = new Func(this.LKNKPCBECJD); Action action = new Action(this.AGBFJLFOHDA); } // Token: 0x040003F3 RID: 1011 [FieldOffset(Offset = "0x40")] [Token(Token = "0x40003F3")] [SerializeField] [OCIDFHDICIP(JIBDPHMGEGO.Self, false, false, false)] private MeleeWeapon thisWeapon; // Token: 0x040003F4 RID: 1012 [FieldOffset(Offset = "0x48")] [Token(Token = "0x40003F4")] [SerializeField] [OCIDFHDICIP(JIBDPHMGEGO.Self, false, false, false)] private ToolPlayerAttractor attractor; // Token: 0x040003F5 RID: 1013 [FieldOffset(Offset = "0x50")] [Token(Token = "0x40003F5")] [SerializeField] [Header("Meshes")] private GameObject wholeObject; // Token: 0x040003F6 RID: 1014 [FieldOffset(Offset = "0x58")] [Token(Token = "0x40003F6")] [SerializeField] private GameObject fracturedObject; // Token: 0x040003F7 RID: 1015 [FieldOffset(Offset = "0x60")] [Token(Token = "0x40003F7")] [SerializeField] [Header("Destruction")] private bool shatterOnAnyImpact; // Token: 0x040003F8 RID: 1016 [FieldOffset(Offset = "0x64")] [Token(Token = "0x40003F8")] [SerializeField] private float shatterSpeed = 2f; // Token: 0x040003F9 RID: 1017 [FieldOffset(Offset = "0x68")] [Token(Token = "0x40003F9")] [SerializeField] private float brokenLifetime = 5f; // Token: 0x040003FA RID: 1018 [FieldOffset(Offset = "0x70")] [Token(Token = "0x40003FA")] [SerializeField] [Header("Feedback")] private PooledParticle smashParticlePrefab; // Token: 0x040003FB RID: 1019 [FieldOffset(Offset = "0x78")] [Token(Token = "0x40003FB")] [SerializeField] private RecRoomAudioClip[] smashSounds; // Token: 0x040003FC RID: 1020 [FieldOffset(Offset = "0x80")] [Token(Token = "0x40003FC")] private KLLMCPFPIIE PAMCNCJAJDE; // Token: 0x040003FD RID: 1021 [FieldOffset(Offset = "0x88")] [Token(Token = "0x40003FD")] private KLLMCPFPIIE KCMCLDEPDAH; // Token: 0x040003FE RID: 1022 [FieldOffset(Offset = "0x90")] [Token(Token = "0x40003FE")] private AOLMGGAPKEH FCDKDFPADME; // Token: 0x040003FF RID: 1023 [FieldOffset(Offset = "0x98")] [Token(Token = "0x40003FF")] private RagdollPiece[] LCMLJHDFCOJ; // Token: 0x04000400 RID: 1024 [FieldOffset(Offset = "0xA0")] [Token(Token = "0x4000400")] private bool NNHGCACFLDL; // Token: 0x04000401 RID: 1025 [FieldOffset(Offset = "0xA8")] [Token(Token = "0x4000401")] private Coroutine LJGNFMLILFA; // Token: 0x04000402 RID: 1026 [FieldOffset(Offset = "0xB0")] [Token(Token = "0x4000402")] private GHMDIDJLFMC NEOFLNEPLPJ; // Token: 0x04000403 RID: 1027 [FieldOffset(Offset = "0xF8")] [Token(Token = "0x4000403")] public Action OnShatterEvent; }