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