Files
Jan2021-Cpp2Il-Dump/Assembly-CSharp/RecRoom/Core/Combat/BreakAndWake.cs
T
2026-04-08 23:40:05 +02:00

120 lines
3.3 KiB
C#

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<RigidbodyEx>();
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;
}
}