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