using System; using System.Collections.Generic; using Cpp2IlInjected; using UnityEngine; // Token: 0x0200005C RID: 92 [Token(Token = "0x200005C")] public class MicrophoneTool : MonoBehaviour { // Token: 0x06000297 RID: 663 RVA: 0x0000DCE4 File Offset: 0x0000BEE4 [Token(Token = "0x6000297")] [Address(RVA = "0x175C9B0", Offset = "0x175B9B0", VA = "0x18175C9B0")] private void Awake() { MicrophoneTool.NHEKGEIOMEF.Add(this); Tool component = base.GetComponent(); this.EGFEJGHDNAI = component; int num = 0; if (component != num) { Tool egfejghdnai = this.EGFEJGHDNAI; MFBGLIHGCGO postPickupEvent = egfejghdnai.PostPickupEvent; Action action = new Action(this.GIJJGPLCDCH); MFBGLIHGCGO mfbglihgcgo = MFBGLIHGCGO.BPJDFPACLMK(postPickupEvent, action); egfejghdnai.PostPickupEvent = mfbglihgcgo; } } // Token: 0x06000298 RID: 664 RVA: 0x0000DD4C File Offset: 0x0000BF4C [Token(Token = "0x6000298")] [Address(RVA = "0x175D950", Offset = "0x175C950", VA = "0x18175D950")] private void Start() { MicrophoneToolManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; int num = 0; if (!(instance == num)) { MicrophoneToolManager instance2 = SingletonMonoBehaviour.ONCPNMDGGKG; Coroutine mbndolgfcma = instance2.MBNDOLGFCMA; if (mbndolgfcma != 0) { instance2.StopCoroutine(mbndolgfcma); } instance2.MBNDOLGFCMA = (ulong)0L; return; } MicrophoneToolManager microphoneToolManager = global::UnityEngine.Object.Instantiate(this.microphoneManagerPrefab); } // Token: 0x06000299 RID: 665 RVA: 0x0000DDA0 File Offset: 0x0000BFA0 [Token(Token = "0x6000299")] [Address(RVA = "0x175D110", Offset = "0x175C110", VA = "0x18175D110")] private void OnDestroy() { for (;;) { int num = 0; Tool egfejghdnai = this.EGFEJGHDNAI; int num2 = 0; if (egfejghdnai != num2) { Tool egfejghdnai2 = this.EGFEJGHDNAI; MFBGLIHGCGO postPickupEvent = egfejghdnai2.PostPickupEvent; Action action = new Action(this.GIJJGPLCDCH); MFBGLIHGCGO mfbglihgcgo = MFBGLIHGCGO.GMNMHGMFGOL(postPickupEvent, action); egfejghdnai2.PostPickupEvent = mfbglihgcgo; } bool flag = MicrophoneTool.NHEKGEIOMEF.Remove(this); List nhekgeiomef = MicrophoneTool.NHEKGEIOMEF; MicrophoneToolManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; int num3 = 0; if (!(instance != num3)) { goto IL_BB; } MicrophoneToolManager instance2 = SingletonMonoBehaviour.ONCPNMDGGKG; if (!instance2.gameObject.activeInHierarchy) { goto IL_D5; } MicrophoneToolManager.GPLAPOKKGAO gplapokkgao; if (instance2.MBNDOLGFCMA == num) { gplapokkgao.System.IDisposable.Dispose(); gplapokkgao.<>1__state = num; gplapokkgao.<>4__this = instance2; Coroutine coroutine = instance2.StartCoroutine(gplapokkgao); instance2.MBNDOLGFCMA = coroutine; goto IL_BB; } goto IL_BB; IL_E1: if (num == 0) { break; } continue; IL_BB: Dictionary.ValueCollection values = MicrophoneTool.KGMJKCCLEGE.Values; bool flag2; if (!flag2) { goto IL_E1; } int <>1__state = gplapokkgao.<>1__state; IL_D5: global::UnityEngine.Object.Destroy(instance2.gameObject); goto IL_E1; } } // Token: 0x0600029A RID: 666 RVA: 0x0000DE9C File Offset: 0x0000C09C [Token(Token = "0x600029A")] [Address(RVA = "0x175D530", Offset = "0x175C530", VA = "0x18175D530")] public void OnHeadOverlapChanged(Player player, Player.GAHEJKDCLLE bodyPart, bool isIn) { int num = 0; if (player != num) { int k__BackingField = player.k__BackingField; MicrophoneTool.KGDINCIMJPN kgdincimjpn = this.IKKFOCGCMLP(k__BackingField); if (!isIn) { bool flag = kgdincimjpn.FCCHLJKFDKD.Remove(this); } if (kgdincimjpn.FCCHLJKFDKD.Contains(this)) { object[] array = new object[1]; string name = base.gameObject.name; if (name != 0) { } array[0] = name; Debug.LogWarningFormat("Already in range of {0}!", array); } kgdincimjpn.FCCHLJKFDKD.Add(this); int k__BackingField2 = player.k__BackingField; List fcchljkfdkd = this.IKKFOCGCMLP(k__BackingField2).FCCHLJKFDKD; if (this.applyAudioFX) { player.AddVoiceHighPassFilterEnabled(this); player.AddVoiceReverbFilterEnabled(this); } float num2 = this.micVolumeAdjustment; player.AddVoiceVolumeMultiplier(num2, this); int num3 = 0; player.AddVoiceSpatialBlendMultiplier((float)num3, this); player.RemoveVoiceVolumeMultiplier(this); player.RemoveVoiceSpatialBlendMultiplier(this); player.RemoveVoiceHighPassFilterEnabled(this); player.RemoveVoiceReverbFilterEnabled(this); MicrophoneToolManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; int num4 = 0; if (instance != num4) { MicrophoneToolManager instance2 = SingletonMonoBehaviour.ONCPNMDGGKG; List ecopckkgmdc = instance2.ECOPCKKGMDC; if (!isIn) { bool flag2; while (!flag2) { } throw new NullReferenceException(); } if (!ecopckkgmdc.Contains(player)) { instance2.ECOPCKKGMDC.Add(player); } } } } // Token: 0x0600029B RID: 667 RVA: 0x0000DFD8 File Offset: 0x0000C1D8 [Token(Token = "0x600029B")] [Address(RVA = "0x175CDD0", Offset = "0x175BDD0", VA = "0x18175CDD0")] private void GIJJGPLCDCH(Tool NBHJPDBHDHB) { Tool egfejghdnai = this.EGFEJGHDNAI; DAJFOCGPHGP defaultCollisionLayer = egfejghdnai.DefaultCollisionLayer; egfejghdnai.SetCollisionLayer(defaultCollisionLayer); } // Token: 0x0600029C RID: 668 RVA: 0x0000E000 File Offset: 0x0000C200 [Token(Token = "0x600029C")] [Address(RVA = "0x175D940", Offset = "0x175C940", VA = "0x18175D940")] public void OnMicHit(Collider GLPOLGOBLAA) { this.EKHDMHOLNLO(GLPOLGOBLAA); } // Token: 0x0600029D RID: 669 RVA: 0x0000E014 File Offset: 0x0000C214 [Token(Token = "0x600029D")] [Address(RVA = "0x175CAE0", Offset = "0x175BAE0", VA = "0x18175CAE0")] private void EKHDMHOLNLO(Collider GLPOLGOBLAA) { PlayerHand componentInParent = GLPOLGOBLAA.GetComponentInParent(); Tool egfejghdnai = this.EGFEJGHDNAI; if (egfejghdnai != 0 && egfejghdnai.FNFNLDBILFE && GLPOLGOBLAA.GetComponentInParent()) { int num = 0; if (componentInParent == num) { return; } PlayerHand k__BackingField = this.EGFEJGHDNAI.k__BackingField; if (componentInParent == k__BackingField) { return; } Tool febapkcnndc = componentInParent.FEBAPKCNNDC; int num2 = 0; if (febapkcnndc != num2) { return; } } if (Time.time > this.LAGBBBGGOGF) { float time = Time.time; RecRoomAudioClip[] array = this.micHeadHitAudio; this.CGBOCIFDCPB = time; int length = array.Length; int num3 = global::UnityEngine.Random.Range(0, length); RecRoomAudioClip recRoomAudioClip = array[num3]; int num4 = 0; SFXAudioSource sfxaudioSource = AudioManager.Play2DSFX(recRoomAudioClip, num4); MicrophoneToolManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; int num5 = 0; if (instance != num5) { MicrophoneToolManager instance2 = SingletonMonoBehaviour.ONCPNMDGGKG; MicrophoneToolManager.KGMOAFBFDAK kgmoafbfdak = this.micHitSpeakerLineLevel; float num6 = this.micHitSpeakerLinesDuration; instance2.OnMicSpeakerLinesEvent(num6, kgmoafbfdak); } int num7 = 0; if (componentInParent != num7) { componentInParent.Vibrate(30, 1f); } } } // Token: 0x0600029E RID: 670 RVA: 0x0000E140 File Offset: 0x0000C340 [Token(Token = "0x600029E")] [Address(RVA = "0x175CF60", Offset = "0x175BF60", VA = "0x18175CF60")] private void OnCollisionEnter(Collision GBJHLKOJGPB) { Collider collider = GBJHLKOJGPB.collider; this.EKHDMHOLNLO(collider); Vector3 vector; float z = vector.z; float num; if (num > this.DBAHDLJIKHG) { float value = global::UnityEngine.Random.value; if (this.KCHCLGDDFGK > value && Time.time > this.IJODABDCKFJ) { float time = Time.time; RecRoomAudioClip recRoomAudioClip = this.micFeedbackAudio; this.JBHOEPLMAPO = time; int num2 = 0; SFXAudioSource sfxaudioSource = AudioManager.Play2DSFX(recRoomAudioClip, num2); MicrophoneToolManager instance = SingletonMonoBehaviour.ONCPNMDGGKG; int num3 = 0; if (instance != num3) { MicrophoneToolManager instance2 = SingletonMonoBehaviour.ONCPNMDGGKG; MicrophoneToolManager.KGMOAFBFDAK kgmoafbfdak = this.micFeedbackSpeakerLineLevel; float num4 = this.micFeedbackSpeakerLinesDuration; instance2.OnMicSpeakerLinesEvent(num4, kgmoafbfdak); } } } } // Token: 0x0600029F RID: 671 RVA: 0x0000E1FC File Offset: 0x0000C3FC [Token(Token = "0x600029F")] [Address(RVA = "0x175CE00", Offset = "0x175BE00", VA = "0x18175CE00")] private MicrophoneTool.KGDINCIMJPN IKKFOCGCMLP(int CJFGEMGOJHB) { Dictionary kgmjkcclege = MicrophoneTool.KGMJKCCLEGE; bool flag; if (!flag) { MicrophoneTool.KGDINCIMJPN kgdincimjpn = new MicrophoneTool.KGDINCIMJPN(); List list = new List(); kgdincimjpn.FCCHLJKFDKD = list; MicrophoneTool.KGMJKCCLEGE[CJFGEMGOJHB] = kgdincimjpn; } throw new NullReferenceException(); } // Token: 0x060002A0 RID: 672 RVA: 0x0000E23C File Offset: 0x0000C43C [Token(Token = "0x60002A0")] [Address(RVA = "0x175DB00", Offset = "0x175CB00", VA = "0x18175DB00")] public MicrophoneTool() { } // Token: 0x04000226 RID: 550 [Token(Token = "0x4000226")] private static List NHEKGEIOMEF = new List(); // Token: 0x04000227 RID: 551 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4000227")] [SerializeField] private MicrophoneToolManager microphoneManagerPrefab; // Token: 0x04000228 RID: 552 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4000228")] [SerializeField] private float micVolumeAdjustment = 0.75f; // Token: 0x04000229 RID: 553 [FieldOffset(Offset = "0x24")] [Token(Token = "0x4000229")] [SerializeField] private bool applyAudioFX = true; // Token: 0x0400022A RID: 554 [FieldOffset(Offset = "0x28")] [Token(Token = "0x400022A")] [SerializeField] private RecRoomAudioClip[] micHeadHitAudio; // Token: 0x0400022B RID: 555 [FieldOffset(Offset = "0x30")] [Token(Token = "0x400022B")] [SerializeField] private float micHitSpeakerLinesDuration = 0.2f; // Token: 0x0400022C RID: 556 [FieldOffset(Offset = "0x34")] [Token(Token = "0x400022C")] [SerializeField] private MicrophoneToolManager.KGMOAFBFDAK micHitSpeakerLineLevel = (MicrophoneToolManager.KGMOAFBFDAK)((ulong)3L); // Token: 0x0400022D RID: 557 [FieldOffset(Offset = "0x38")] [Token(Token = "0x400022D")] [SerializeField] private RecRoomAudioClip micFeedbackAudio; // Token: 0x0400022E RID: 558 [FieldOffset(Offset = "0x40")] [Token(Token = "0x400022E")] [SerializeField] private float micFeedbackSpeakerLinesDuration = 1.3f; // Token: 0x0400022F RID: 559 [FieldOffset(Offset = "0x44")] [Token(Token = "0x400022F")] [SerializeField] private MicrophoneToolManager.KGMOAFBFDAK micFeedbackSpeakerLineLevel = (MicrophoneToolManager.KGMOAFBFDAK)((ulong)4L); // Token: 0x04000230 RID: 560 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4000230")] private Tool EGFEJGHDNAI; // Token: 0x04000231 RID: 561 [FieldOffset(Offset = "0x50")] [Token(Token = "0x4000231")] private float LAGBBBGGOGF = 0.2f; // Token: 0x04000232 RID: 562 [FieldOffset(Offset = "0x54")] [Token(Token = "0x4000232")] private float CGBOCIFDCPB; // Token: 0x04000233 RID: 563 [FieldOffset(Offset = "0x58")] [Token(Token = "0x4000233")] private float DBAHDLJIKHG = 7f; // Token: 0x04000234 RID: 564 [FieldOffset(Offset = "0x5C")] [Token(Token = "0x4000234")] private float KCHCLGDDFGK = 0.8f; // Token: 0x04000235 RID: 565 [FieldOffset(Offset = "0x60")] [Token(Token = "0x4000235")] private float IJODABDCKFJ = 2f; // Token: 0x04000236 RID: 566 [FieldOffset(Offset = "0x64")] [Token(Token = "0x4000236")] private float JBHOEPLMAPO; // Token: 0x04000237 RID: 567 [Token(Token = "0x4000237")] private static Dictionary KGMJKCCLEGE = new Dictionary(); // Token: 0x0200005D RID: 93 [Token(Token = "0x200005D")] private class KGDINCIMJPN { // Token: 0x17000071 RID: 113 // (get) Token: 0x060002A2 RID: 674 RVA: 0x0000E2DC File Offset: 0x0000C4DC [Token(Token = "0x17000071")] public bool KJHHBBBPFPM { [Token(Token = "0x60002A2")] [Address(RVA = "0x1757160", Offset = "0x1756160", VA = "0x181757160")] get { List fcchljkfdkd = this.FCCHLJKFDKD; bool flag; return flag; } } // Token: 0x060002A3 RID: 675 RVA: 0x0000E2F8 File Offset: 0x0000C4F8 [Token(Token = "0x60002A3")] [Address(RVA = "0x17571A0", Offset = "0x17561A0", VA = "0x1817571A0")] public void LMHKKFJKNAD(MicrophoneTool JEOOHDHMOEC) { if (this.FCCHLJKFDKD.Contains(JEOOHDHMOEC)) { object[] array = new object[1]; string name = JEOOHDHMOEC.gameObject.name; if (name != 0) { } array[0] = name; Debug.LogWarningFormat("Already in range of {0}!", array); return; } this.FCCHLJKFDKD.Add(JEOOHDHMOEC); } // Token: 0x060002A4 RID: 676 RVA: 0x0000E354 File Offset: 0x0000C554 [Token(Token = "0x60002A4")] [Address(RVA = "0x1757100", Offset = "0x1756100", VA = "0x181757100")] public void DJAHAHIHEJL(MicrophoneTool JEOOHDHMOEC) { bool flag = this.FCCHLJKFDKD.Remove(JEOOHDHMOEC); } // Token: 0x060002A5 RID: 677 RVA: 0x0000E374 File Offset: 0x0000C574 [Token(Token = "0x60002A5")] [Address(RVA = "0x17572E0", Offset = "0x17562E0", VA = "0x1817572E0")] public KGDINCIMJPN() { List list = new List(); this.FCCHLJKFDKD = list; base..ctor(); } // Token: 0x04000238 RID: 568 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4000238")] private List FCCHLJKFDKD; } }