using System; using Cpp2IlInjected; using UnityEngine; namespace RecRoom.Core.Combat { // Token: 0x020034A3 RID: 13475 [Token(Token = "0x20034A3")] [RequireComponent(typeof(BreakableObject))] public class BreakAndWake : MonoBehaviour { // Token: 0x06017599 RID: 95641 RVA: 0x0056E6EC File Offset: 0x0056C8EC [Token(Token = "0x6017599")] [Address(RVA = "0x1F0ABF0", Offset = "0x1F09BF0", VA = "0x181F0ABF0")] 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: 0x0601759A RID: 95642 RVA: 0x0056E73C File Offset: 0x0056C93C [Token(Token = "0x601759A")] [Address(RVA = "0x1F0AE30", Offset = "0x1F09E30", VA = "0x181F0AE30")] 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: 0x0601759B RID: 95643 RVA: 0x0056E790 File Offset: 0x0056C990 [Token(Token = "0x601759B")] [Address(RVA = "0x1F0ACC0", Offset = "0x1F09CC0", VA = "0x181F0ACC0")] 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: 0x0601759C RID: 95644 RVA: 0x0056E7E4 File Offset: 0x0056C9E4 [Token(Token = "0x601759C")] [Address(RVA = "0x1F0ADC0", Offset = "0x1F09DC0", VA = "0x181F0ADC0")] private void ODMPPAKICMJ() { RigidbodyEx[] componentsInChildren = base.transform.parent.GetComponentsInChildren(); this.rigidbodiesToWake = componentsInChildren; } // Token: 0x0601759D RID: 95645 RVA: 0x0056E810 File Offset: 0x0056CA10 [Token(Token = "0x601759D")] [Address(RVA = "0x1F0AF20", Offset = "0x1F09F20", VA = "0x181F0AF20")] public BreakAndWake() { float z = Vector3.up.z; this.PHMMKNJHDJO.z = z; base..ctor(); } // Token: 0x0400F264 RID: 62052 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400F264")] private Vector3 PHMMKNJHDJO; // Token: 0x0400F265 RID: 62053 [FieldOffset(Offset = "0x28")] [Token(Token = "0x400F265")] [SerializeField] private RigidbodyEx[] rigidbodiesToWake; // Token: 0x0400F266 RID: 62054 [FieldOffset(Offset = "0x30")] [Token(Token = "0x400F266")] [SerializeField] [NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)] private BreakableObject breakableObject; } }