using System; using Cpp2IlInjected; using UnityEngine; namespace RecRoom.Core.Combat { // Token: 0x020033B6 RID: 13238 [Token(Token = "0x20033B6")] [RequireComponent(typeof(BreakableObject))] public class BreakAndWake : MonoBehaviour { // Token: 0x0601710B RID: 94475 RVA: 0x00563604 File Offset: 0x00561804 [Token(Token = "0x601710B")] [Address(RVA = "0x142C3E0", Offset = "0x142B1E0", VA = "0x18142C3E0")] 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: 0x0601710C RID: 94476 RVA: 0x00563654 File Offset: 0x00561854 [Token(Token = "0x601710C")] [Address(RVA = "0x142C620", Offset = "0x142B420", VA = "0x18142C620")] 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: 0x0601710D RID: 94477 RVA: 0x005636A8 File Offset: 0x005618A8 [Token(Token = "0x601710D")] [Address(RVA = "0x142C4B0", Offset = "0x142B2B0", VA = "0x18142C4B0")] 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: 0x0601710E RID: 94478 RVA: 0x005636FC File Offset: 0x005618FC [Token(Token = "0x601710E")] [Address(RVA = "0x142C5B0", Offset = "0x142B3B0", VA = "0x18142C5B0")] private void ODMPPAKICMJ() { RigidbodyEx[] componentsInChildren = base.transform.parent.GetComponentsInChildren(); this.rigidbodiesToWake = componentsInChildren; } // Token: 0x0601710F RID: 94479 RVA: 0x00563728 File Offset: 0x00561928 [Token(Token = "0x601710F")] [Address(RVA = "0x142C710", Offset = "0x142B510", VA = "0x18142C710")] public BreakAndWake() { float z = Vector3.up.z; this.PHMMKNJHDJO.z = z; base..ctor(); } // Token: 0x0400F01D RID: 61469 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400F01D")] private Vector3 PHMMKNJHDJO; // Token: 0x0400F01E RID: 61470 [FieldOffset(Offset = "0x28")] [Token(Token = "0x400F01E")] [SerializeField] private RigidbodyEx[] rigidbodiesToWake; // Token: 0x0400F01F RID: 61471 [FieldOffset(Offset = "0x30")] [Token(Token = "0x400F01F")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.Self, false, false, false)] private BreakableObject breakableObject; } }