using System; using System.Runtime.InteropServices; using Cpp2IlInjected; using UnityEngine; namespace RecRoom.Core.Combat { // Token: 0x02002DED RID: 11757 [Token(Token = "0x2002DED")] [RequireComponent(typeof(BreakableObject))] [StructLayout(3)] public class BreakAndWake : MonoBehaviour { // Token: 0x06014F9B RID: 85915 RVA: 0x00508818 File Offset: 0x00506A18 [Token(Token = "0x6014F9B")] [Address(RVA = "0x1852940", Offset = "0x1851340", VA = "0x181852940")] private void Awake() { BreakableObject breakableObject; Delegate @delegate; for (;;) { breakableObject = this.breakableObject; Action onShatterEvent = breakableObject.OnShatterEvent; Action action = new Action(this.LKMGBIHMJKD); @delegate = Delegate.Combine(onShatterEvent, action); if (@delegate == 0) { break; } if (@delegate != 0) { goto Block_1; } } breakableObject.OnShatterEvent = @delegate; return; Block_1: breakableObject.OnShatterEvent = @delegate; } // Token: 0x06014F9C RID: 85916 RVA: 0x00508868 File Offset: 0x00506A68 [Token(Token = "0x6014F9C")] [Address(RVA = "0x1852B80", Offset = "0x1851580", VA = "0x181852B80")] private void OnDestroy() { while (this.breakableObject) { BreakableObject breakableObject = this.breakableObject; Action onShatterEvent = breakableObject.OnShatterEvent; Action action = new Action(this.LKMGBIHMJKD); Delegate @delegate = Delegate.Remove(onShatterEvent, action); if (@delegate == 0 || @delegate != 0) { breakableObject.OnShatterEvent = @delegate; break; } } } // Token: 0x06014F9D RID: 85917 RVA: 0x005088BC File Offset: 0x00506ABC [Token(Token = "0x6014F9D")] [Address(RVA = "0x1852A10", Offset = "0x1851410", VA = "0x181852A10")] private void LKMGBIHMJKD() { RigidbodyEx[] array = this.rigidbodiesToWake; int num = 0; int length = array.Length; if (num < length) { RigidbodyEx rigidbodyEx = array[num]; int num2 = 0; if (rigidbodyEx != num2) { rigidbodyEx.WakeUp(); float z = this.PHMMKNJHDJO.z; } num++; } } // Token: 0x06014F9E RID: 85918 RVA: 0x00508910 File Offset: 0x00506B10 [Token(Token = "0x6014F9E")] [Address(RVA = "0x1852B10", Offset = "0x1851510", VA = "0x181852B10")] private void ODMPPAKICMJ() { RigidbodyEx[] componentsInChildren = base.transform.parent.GetComponentsInChildren(); this.rigidbodiesToWake = componentsInChildren; } // Token: 0x06014F9F RID: 85919 RVA: 0x0050893C File Offset: 0x00506B3C [Token(Token = "0x6014F9F")] [Address(RVA = "0x1852C70", Offset = "0x1851670", VA = "0x181852C70")] public BreakAndWake() { float z = Vector3.up.z; this.PHMMKNJHDJO.z = z; base..ctor(); } // Token: 0x0400DF87 RID: 57223 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x400DF87")] private Vector3 PHMMKNJHDJO; // Token: 0x0400DF88 RID: 57224 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x400DF88")] [SerializeField] private RigidbodyEx[] rigidbodiesToWake; // Token: 0x0400DF89 RID: 57225 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x400DF89")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)] private BreakableObject breakableObject; } }