Files
2026-04-08 23:40:05 +02:00

263 lines
7.9 KiB
C#

using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;
// Token: 0x02000658 RID: 1624
[Token(Token = "0x2000658")]
[StructLayout(3)]
public class CollisionParticles : MonoBehaviour
{
// Token: 0x06002F0B RID: 12043 RVA: 0x000C3378 File Offset: 0x000C1578
[Token(Token = "0x6002F0B")]
[Address(RVA = "0x1B052A0", Offset = "0x1B03CA0", VA = "0x181B052A0")]
private void Awake()
{
Tool component = base.GetComponent<Tool>();
this.NBHJPDBHDHB = component;
}
// Token: 0x06002F0C RID: 12044 RVA: 0x000C3394 File Offset: 0x000C1594
[Token(Token = "0x6002F0C")]
[Address(RVA = "0x1B05580", Offset = "0x1B03F80", VA = "0x181B05580")]
private void OnDestroy()
{
CollisionParticles.ParticlesToLayer[] array = this.particleMappings;
int num = 0;
int length = array.Length;
if (num < length)
{
ParticleSystem particleSystem = array[num].NDIHCPHPFMK();
int num2 = 0;
if (particleSystem != num2)
{
particleSystem.Stop();
global::UnityEngine.Object.Destroy(particleSystem.gameObject);
}
num++;
}
}
// Token: 0x06002F0D RID: 12045 RVA: 0x000C33EC File Offset: 0x000C15EC
[Token(Token = "0x6002F0D")]
[Address(RVA = "0x1B05760", Offset = "0x1B04160", VA = "0x181B05760")]
private void OnEnable()
{
MeleeWeaponCollider[] array = this.meleeWeaponColliders;
int num = 0;
int length = array.Length;
if (num < length)
{
MeleeWeaponCollider meleeWeaponCollider = array[num];
MeleeWeaponCollider.MMFFGBGIAAD mmffgbgiaad = new MeleeWeaponCollider.MMFFGBGIAAD(this.DHOMIDPOPJB);
meleeWeaponCollider.HJKPKBBLGOJ += mmffgbgiaad;
num++;
}
}
// Token: 0x06002F0E RID: 12046 RVA: 0x000C3438 File Offset: 0x000C1638
[Token(Token = "0x6002F0E")]
[Address(RVA = "0x1B05690", Offset = "0x1B04090", VA = "0x181B05690")]
private void OnDisable()
{
MeleeWeaponCollider[] array = this.meleeWeaponColliders;
int num = 0;
int length = array.Length;
if (num < length)
{
MeleeWeaponCollider meleeWeaponCollider = array[num];
MeleeWeaponCollider.MMFFGBGIAAD mmffgbgiaad = new MeleeWeaponCollider.MMFFGBGIAAD(this.DHOMIDPOPJB);
meleeWeaponCollider.HJKPKBBLGOJ -= mmffgbgiaad;
num++;
}
}
// Token: 0x06002F0F RID: 12047 RVA: 0x000C3484 File Offset: 0x000C1684
[Token(Token = "0x6002F0F")]
[Address(RVA = "0x1B052E0", Offset = "0x1B03CE0", VA = "0x181B052E0")]
private void DHOMIDPOPJB(MeleeWeaponCollider BCFFGDFHJMK, GHMDIDJLFMC KNLMJBAKCGF)
{
}
// Token: 0x06002F10 RID: 12048 RVA: 0x000C3494 File Offset: 0x000C1694
[Token(Token = "0x6002F10")]
[Address(RVA = "0x1B054C0", Offset = "0x1B03EC0", VA = "0x181B054C0")]
private void OnCollisionEnter(Collision GBJHLKOJGPB)
{
Tool nbhjpdbhdhb = this.NBHJPDBHDHB;
int num = 0;
if (!(nbhjpdbhdhb != num) || !this.NBHJPDBHDHB.FNFNLDBILFE)
{
GameObject gameObject = GBJHLKOJGPB.collider.gameObject;
this.JJALMFBIPKL(gameObject);
}
}
// Token: 0x06002F11 RID: 12049 RVA: 0x000C34DC File Offset: 0x000C16DC
[Token(Token = "0x6002F11")]
[Address(RVA = "0x1B05300", Offset = "0x1B03D00", VA = "0x181B05300")]
private void JJALMFBIPKL(GameObject PGPKHKFMPLD)
{
CollisionParticles.ParticlesToLayer[] array = this.particleMappings;
int num = 0;
int length = array.Length;
if (num < length)
{
CollisionParticles.ParticlesToLayer particlesToLayer = array[num];
int layer = PGPKHKFMPLD.layer;
float time = Time.time;
if (time > particlesToLayer.InstanceLimitDuration && time < particlesToLayer.InstanceLimitDuration)
{
if (string.IsNullOrEmpty(particlesToLayer.Tag))
{
goto IL_6A;
}
string tag = particlesToLayer.Tag;
if (PGPKHKFMPLD.CompareTag(tag))
{
goto IL_6A;
}
}
num++;
IL_6A:
float time2 = Time.time;
particlesToLayer.<LastInstanceTime>k__BackingField = time2;
ParticleSystem particleSystem = particlesToLayer.NDIHCPHPFMK();
int num2 = 0;
if (particleSystem != num2)
{
particleSystem.Stop();
Transform transform = particleSystem.transform;
Transform transform2 = base.transform;
Vector3 vector;
float z = vector.z;
particleSystem.Play();
}
}
}
// Token: 0x06002F12 RID: 12050 RVA: 0x000C35AC File Offset: 0x000C17AC
[Token(Token = "0x6002F12")]
[Address(RVA = "0x3C1210", Offset = "0x3BFC10", VA = "0x1803C1210")]
public CollisionParticles()
{
}
// Token: 0x04002864 RID: 10340
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4002864")]
[SerializeField]
public CollisionParticles.ParticlesToLayer[] particleMappings;
// Token: 0x04002865 RID: 10341
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4002865")]
[SerializeField]
[Tooltip("MeleeWeaponColliders that can trigger the collision audio in addition to normal physics collisions.")]
private MeleeWeaponCollider[] meleeWeaponColliders;
// Token: 0x04002866 RID: 10342
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x4002866")]
private Tool NBHJPDBHDHB;
// Token: 0x02000659 RID: 1625
[Token(Token = "0x2000659")]
[Serializable]
public class ParticlesToLayer
{
// Token: 0x17000845 RID: 2117
// (get) Token: 0x06002F13 RID: 12051 RVA: 0x000C35C0 File Offset: 0x000C17C0
// (set) Token: 0x06002F14 RID: 12052 RVA: 0x000C35D4 File Offset: 0x000C17D4
[Token(Token = "0x17000845")]
public float LastInstanceTime
{
[Token(Token = "0x6002F13")]
[Address(RVA = "0x467D00", Offset = "0x466700", VA = "0x180467D00")]
get;
[Token(Token = "0x6002F14")]
[Address(RVA = "0x468430", Offset = "0x466E30", VA = "0x180468430")]
set;
}
// Token: 0x06002F15 RID: 12053 RVA: 0x000C35E8 File Offset: 0x000C17E8
[Token(Token = "0x6002F15")]
[Address(RVA = "0x1B17460", Offset = "0x1B15E60", VA = "0x181B17460")]
public ParticleSystem NDIHCPHPFMK()
{
ParticleSystem particleSystem = this.particleSystemInstance;
int num = 0;
if (particleSystem == num)
{
ParticleSystem particleSystem2 = global::UnityEngine.Object.Instantiate<ParticleSystem>(this.ParticleSystemPrefab);
this.particleSystemInstance = particleSystem2;
}
return this.particleSystemInstance;
}
// Token: 0x06002F16 RID: 12054 RVA: 0x000C3624 File Offset: 0x000C1824
[Token(Token = "0x6002F16")]
[Address(RVA = "0x1B173B0", Offset = "0x1B15DB0", VA = "0x181B173B0")]
public bool BOBJDACCBKO(GameObject NNNMGKGMIFG)
{
int layer = NNNMGKGMIFG.layer;
float time = Time.time;
if (time > this.InstanceLimitDuration && time < this.InstanceLimitDuration)
{
string tag = this.Tag;
if (layer == 0)
{
string tag2 = this.Tag;
if (!NNNMGKGMIFG.CompareTag(tag2))
{
goto IL_53;
}
}
float time2 = Time.time;
this.<LastInstanceTime>k__BackingField = time2;
return true;
}
IL_53:
throw new NullReferenceException();
}
// Token: 0x06002F17 RID: 12055 RVA: 0x000C368C File Offset: 0x000C188C
[Token(Token = "0x6002F17")]
[Address(RVA = "0x1B17500", Offset = "0x1B15F00", VA = "0x181B17500")]
public ParticlesToLayer()
{
}
// Token: 0x04002867 RID: 10343
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4002867")]
public string Name;
// Token: 0x04002868 RID: 10344
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4002868")]
public ParticleSystem ParticleSystemPrefab;
// Token: 0x04002869 RID: 10345
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4002869")]
public LayerMask Layers;
// Token: 0x0400286A RID: 10346
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400286A")]
public string Tag = "";
// Token: 0x0400286B RID: 10347
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x400286B")]
[Tooltip("Per particle cooldown to limit the number of consequtive plays. Set it to the particle duration")]
public float InstanceLimitDuration;
// Token: 0x0400286D RID: 10349
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x400286D")]
private ParticleSystem particleSystemInstance;
}
}