118 lines
3.2 KiB
C#
118 lines
3.2 KiB
C#
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<RigidbodyEx>();
|
|
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;
|
|
}
|
|
}
|