263 lines
7.9 KiB
C#
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;
|
|
}
|
|
}
|