This commit is contained in:
niko
2026-04-08 23:40:05 +02:00
parent d6894bcbc7
commit 18dc73f922
7750 changed files with 1795369 additions and 0 deletions
@@ -0,0 +1,205 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using Photon.Voice;
using Photon.Voice.Unity;
using UnityEngine;
namespace RecRoom.Audio
{
// Token: 0x02002409 RID: 9225
[Token(Token = "0x2002409")]
[RequireComponent(typeof(Recorder))]
[StructLayout(3)]
public class AgPhotonAmplifier : MonoBehaviour
{
// Token: 0x17002BA0 RID: 11168
// (get) Token: 0x0600FFD3 RID: 65491 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x17002BA0")]
private float OIHNBOIIPLG
{
[Token(Token = "0x600FFD3")]
[Address(RVA = "0x56E590", Offset = "0x56CF90", VA = "0x18056E590")]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x17002BA1 RID: 11169
// (get) Token: 0x0600FFD4 RID: 65492 RVA: 0x003BE4D8 File Offset: 0x003BC6D8
[Token(Token = "0x17002BA1")]
public float OPNBBAMPMNO
{
[Token(Token = "0x600FFD4")]
[Address(RVA = "0x12979A0", Offset = "0x12963A0", VA = "0x1812979A0")]
get
{
AudioManager instance = SingletonMonoBehaviour.Instance;
int num = 0;
if (instance != num)
{
float localMicTransmissionVolumeMultiplier = SingletonMonoBehaviour.Instance.OLADBNGBGAJ;
}
throw new NullReferenceException();
}
}
// Token: 0x0600FFD5 RID: 65493 RVA: 0x003BE508 File Offset: 0x003BC708
[Token(Token = "0x600FFD5")]
[Address(RVA = "0x1297680", Offset = "0x1296080", VA = "0x181297680")]
private void PhotonVoiceCreated(PhotonVoiceCreatedParams p)
{
LocalVoice <Voice>k__BackingField = p.<Voice>k__BackingField;
if (<Voice>k__BackingField != 0)
{
if (<Voice>k__BackingField == 0)
{
while (<Voice>k__BackingField == 0)
{
}
while (<Voice>k__BackingField == 0)
{
}
AgPhotonAmplifier.KOINDFJMJKK koindfjmjkk;
koindfjmjkk.Dispose();
koindfjmjkk.APNKFHFGAJF = 0;
IProcessor<short>[] array = new IProcessor<short>[1];
if ("{il2cpp array field local14->}" == typeof(LocalVoiceAudioShort).TypeHandle)
{
}
throw new NullReferenceException();
}
AgPhotonAmplifier.NGHBHFPKMIK nghbhfpkmik;
nghbhfpkmik.Dispose();
nghbhfpkmik.APNKFHFGAJF = this;
this.DOHGKAHPPOL = nghbhfpkmik;
IProcessor<float>[] array2 = new IProcessor<float>[1];
AgPhotonAmplifier.NGHBHFPKMIK dohgkahppol = this.DOHGKAHPPOL;
if (dohgkahppol != 0)
{
}
array2[0] = dohgkahppol;
if ("{il2cpp array field local7->}" == typeof(LocalVoiceAudioFloat).TypeHandle)
{
}
}
}
// Token: 0x0600FFD6 RID: 65494 RVA: 0x003BE5A8 File Offset: 0x003BC7A8
[Token(Token = "0x600FFD6")]
[Address(RVA = "0x3C1210", Offset = "0x3BFC10", VA = "0x1803C1210")]
public AgPhotonAmplifier()
{
}
// Token: 0x0400A9CC RID: 43468
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400A9CC")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)]
private Recorder voiceRecorder;
// Token: 0x0400A9CD RID: 43469
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400A9CD")]
private AgPhotonAmplifier.NGHBHFPKMIK DOHGKAHPPOL;
// Token: 0x0400A9CE RID: 43470
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400A9CE")]
private AgPhotonAmplifier.KOINDFJMJKK BMAHKGINHDO;
// Token: 0x0200240A RID: 9226
[Token(Token = "0x200240A")]
public class NGHBHFPKMIK : IProcessor<float>, IDisposable
{
// Token: 0x0600FFD7 RID: 65495 RVA: 0x003BE5BC File Offset: 0x003BC7BC
[Token(Token = "0x600FFD7")]
[Address(RVA = "0x3C3A30", Offset = "0x3C2430", VA = "0x1803C3A30")]
public NGHBHFPKMIK(AgPhotonAmplifier amplifier)
{
this.Dispose();
this.APNKFHFGAJF = amplifier;
}
// Token: 0x0600FFD8 RID: 65496 RVA: 0x003BE5D8 File Offset: 0x003BC7D8
[Token(Token = "0x600FFD8")]
[Address(RVA = "0x12A7B80", Offset = "0x12A6580", VA = "0x1812A7B80", Slot = "4")]
public float[] Process(float[] HBNNGJJHOLE)
{
float amplificationFactor = this.APNKFHFGAJF.OPNBBAMPMNO;
if (!Mathf.Approximately(1f, amplificationFactor))
{
int num = 0;
int length = HBNNGJJHOLE.Length;
if (num < length)
{
num++;
HBNNGJJHOLE[0] = amplificationFactor;
}
}
return HBNNGJJHOLE;
}
// Token: 0x0600FFD9 RID: 65497 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600FFD9")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "5")]
public void Dispose()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0400A9CF RID: 43471
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x400A9CF")]
private AgPhotonAmplifier APNKFHFGAJF;
}
// Token: 0x0200240B RID: 9227
[Token(Token = "0x200240B")]
public class KOINDFJMJKK : IProcessor<short>, IDisposable
{
// Token: 0x0600FFDA RID: 65498 RVA: 0x003BE620 File Offset: 0x003BC820
[Token(Token = "0x600FFDA")]
[Address(RVA = "0x3C3A30", Offset = "0x3C2430", VA = "0x1803C3A30")]
public KOINDFJMJKK(AgPhotonAmplifier amplifier)
{
this.Dispose();
this.APNKFHFGAJF = amplifier;
}
// Token: 0x0600FFDB RID: 65499 RVA: 0x003BE63C File Offset: 0x003BC83C
[Token(Token = "0x600FFDB")]
[Address(RVA = "0x12A4F30", Offset = "0x12A3930", VA = "0x1812A4F30", Slot = "4")]
public short[] Process(short[] HBNNGJJHOLE)
{
float amplificationFactor = this.APNKFHFGAJF.OPNBBAMPMNO;
if (!Mathf.Approximately(1f, amplificationFactor))
{
int num = 0;
int length = HBNNGJJHOLE.Length;
if (num < length)
{
num++;
HBNNGJJHOLE[0] = (short)length;
}
}
return HBNNGJJHOLE;
}
// Token: 0x0600FFDC RID: 65500 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600FFDC")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "5")]
public void Dispose()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0400A9D0 RID: 43472
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x400A9D0")]
private AgPhotonAmplifier APNKFHFGAJF;
}
}
}
@@ -0,0 +1,338 @@
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using System.Threading;
using Cpp2IlInjected;
using Photon.Voice;
using Photon.Voice.Unity;
using UnityEngine;
namespace RecRoom.Audio
{
// Token: 0x0200240E RID: 9230
[Token(Token = "0x200240E")]
[RequireComponent(typeof(Recorder))]
[StructLayout(3)]
public class AgPhotonMicListener : MonoBehaviour
{
// Token: 0x17002BA2 RID: 11170
// (get) Token: 0x0600FFDD RID: 65501 RVA: 0x003BE684 File Offset: 0x003BC884
[Token(Token = "0x17002BA2")]
public bool BCKBKNLAFBB
{
[Token(Token = "0x600FFDD")]
[Address(RVA = "0x1298330", Offset = "0x1296D30", VA = "0x181298330")]
get
{
return this.OBABLEFNEON.Count > 0 || this.HJBCJKDOOMM.Count > 0;
}
}
// Token: 0x17002BA3 RID: 11171
// (get) Token: 0x0600FFDE RID: 65502 RVA: 0x003BE6B8 File Offset: 0x003BC8B8
// (set) Token: 0x0600FFDF RID: 65503 RVA: 0x003BE6CC File Offset: 0x003BC8CC
[Token(Token = "0x17002BA3")]
public AgPhotonMicListener.EFDGHACPGBK MHNOIPFCHGA
{
[Token(Token = "0x600FFDE")]
[Address(RVA = "0x3D30B0", Offset = "0x3D1AB0", VA = "0x1803D30B0")]
get;
[Token(Token = "0x600FFDF")]
[Address(RVA = "0x3D3330", Offset = "0x3D1D30", VA = "0x1803D3330")]
private set;
}
// Token: 0x0600FFE0 RID: 65504 RVA: 0x003BE6E0 File Offset: 0x003BC8E0
[Token(Token = "0x600FFE0")]
[Address(RVA = "0x1298180", Offset = "0x1296B80", VA = "0x181298180")]
public void StartListening(object PIHIPPPPEBI, Action<EADLCDCFLMF> AFLPGGJMPOE)
{
bool flag = this.OBABLEFNEON.Remove(PIHIPPPPEBI);
bool flag2 = this.HJBCJKDOOMM.Remove(PIHIPPPPEBI);
this.OBABLEFNEON.Add(PIHIPPPPEBI, AFLPGGJMPOE);
}
// Token: 0x0600FFE1 RID: 65505 RVA: 0x003BE71C File Offset: 0x003BC91C
[Token(Token = "0x600FFE1")]
[Address(RVA = "0x12980D0", Offset = "0x1296AD0", VA = "0x1812980D0")]
public void StartListening(object PIHIPPPPEBI, Action<FMKJHBFFEOM> AFLPGGJMPOE)
{
bool flag = this.OBABLEFNEON.Remove(PIHIPPPPEBI);
bool flag2 = this.HJBCJKDOOMM.Remove(PIHIPPPPEBI);
this.HJBCJKDOOMM.Add(PIHIPPPPEBI, AFLPGGJMPOE);
}
// Token: 0x0600FFE2 RID: 65506 RVA: 0x003BE758 File Offset: 0x003BC958
[Token(Token = "0x600FFE2")]
[Address(RVA = "0x1298230", Offset = "0x1296C30", VA = "0x181298230")]
public void StopListening(object PIHIPPPPEBI)
{
bool flag = this.OBABLEFNEON.Remove(PIHIPPPPEBI);
bool flag2 = this.HJBCJKDOOMM.Remove(PIHIPPPPEBI);
}
// Token: 0x0600FFE3 RID: 65507 RVA: 0x003BE788 File Offset: 0x003BC988
[Token(Token = "0x600FFE3")]
[Address(RVA = "0x1297A80", Offset = "0x1296480", VA = "0x181297A80")]
private void GGOPBLEKHHC(EADLCDCFLMF CNOGINOPPCH)
{
int num;
do
{
num = 0;
Dictionary<object, Action<EADLCDCFLMF>> obablefneon = this.OBABLEFNEON;
Dictionary.Enumerator enumerator;
if (enumerator != 0)
{
}
if (num != -1)
{
}
}
while (num != 0);
}
// Token: 0x0600FFE4 RID: 65508 RVA: 0x003BE7B0 File Offset: 0x003BC9B0
[Token(Token = "0x600FFE4")]
[Address(RVA = "0x1297BF0", Offset = "0x12965F0", VA = "0x181297BF0")]
private void KPIJDJPCHCO(FMKJHBFFEOM CNOGINOPPCH)
{
int num;
do
{
num = 0;
Dictionary<object, Action<FMKJHBFFEOM>> hjbcjkdoomm = this.HJBCJKDOOMM;
Dictionary.Enumerator enumerator;
if (enumerator != 0)
{
}
if (num != -1)
{
}
}
while (num != 0);
}
// Token: 0x0600FFE5 RID: 65509 RVA: 0x003BE7D8 File Offset: 0x003BC9D8
[Token(Token = "0x600FFE5")]
[Address(RVA = "0x1297D60", Offset = "0x1296760", VA = "0x181297D60")]
private void PhotonVoiceCreated(PhotonVoiceCreatedParams p)
{
IAudioDesc <AudioDesc>k__BackingField = p.<AudioDesc>k__BackingField;
IAudioDesc <AudioDesc>k__BackingField2 = p.<AudioDesc>k__BackingField;
int num = 0;
LocalVoice <Voice>k__BackingField = p.<Voice>k__BackingField;
if (<Voice>k__BackingField != 0)
{
if (<Voice>k__BackingField == 0)
{
while (<Voice>k__BackingField == 0)
{
}
while (<Voice>k__BackingField == 0)
{
}
this.<DELFJPLNLMJ>k__BackingField = (AgPhotonMicListener.EFDGHACPGBK)((ulong)1L);
AgPhotonMicListener.DNOFNNPMPHM dnofnnpmphm;
dnofnnpmphm.Dispose();
dnofnnpmphm.EHPMODCEHLB = this;
this.BMAHKGINHDO = dnofnnpmphm;
IProcessor<short>[] array = new IProcessor<short>[1];
AgPhotonMicListener.DNOFNNPMPHM bmahkginhdo = this.BMAHKGINHDO;
if (bmahkginhdo != 0)
{
}
array[0] = bmahkginhdo;
if ("{il2cpp array field local18->}" == typeof(LocalVoiceAudioShort).TypeHandle)
{
}
throw new NullReferenceException();
}
this.<DELFJPLNLMJ>k__BackingField = (AgPhotonMicListener.EFDGHACPGBK)num;
LocalVoice <Voice>k__BackingField2 = p.<Voice>k__BackingField;
AgPhotonMicListener.BLNMAPHFFDN blnmaphffdn;
blnmaphffdn.Dispose();
blnmaphffdn.EHPMODCEHLB = this;
this.DOHGKAHPPOL = blnmaphffdn;
IProcessor<float>[] array2 = new IProcessor<float>[1];
AgPhotonMicListener.BLNMAPHFFDN dohgkahppol = this.DOHGKAHPPOL;
if (dohgkahppol != 0)
{
}
array2[0] = dohgkahppol;
if ("{il2cpp array field local11->}" == typeof(LocalVoiceAudioFloat).TypeHandle)
{
}
}
}
// Token: 0x0600FFE6 RID: 65510 RVA: 0x003BE8C8 File Offset: 0x003BCAC8
[Token(Token = "0x600FFE6")]
[Address(RVA = "0x12982A0", Offset = "0x1296CA0", VA = "0x1812982A0")]
public AgPhotonMicListener()
{
Dictionary<object, Action<EADLCDCFLMF>> dictionary = new Dictionary();
this.OBABLEFNEON = dictionary;
Dictionary<object, Action<FMKJHBFFEOM>> dictionary2 = new Dictionary();
this.HJBCJKDOOMM = dictionary2;
this.MHNOIPFCHGA = (AgPhotonMicListener.EFDGHACPGBK)((ulong)4294967295L);
base..ctor();
}
// Token: 0x0400A9D7 RID: 43479
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400A9D7")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)]
private Recorder voiceRecorder;
// Token: 0x0400A9D8 RID: 43480
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400A9D8")]
private AgPhotonMicListener.BLNMAPHFFDN DOHGKAHPPOL;
// Token: 0x0400A9D9 RID: 43481
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400A9D9")]
private AgPhotonMicListener.DNOFNNPMPHM BMAHKGINHDO;
// Token: 0x0400A9DA RID: 43482
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x400A9DA")]
private int LIAPBMEGELN;
// Token: 0x0400A9DB RID: 43483
[global::Cpp2IlInjected.FieldOffset(Offset = "0x34")]
[Token(Token = "0x400A9DB")]
private int GMIAOBOKCBA;
// Token: 0x0400A9DC RID: 43484
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x400A9DC")]
private readonly Dictionary<object, Action<EADLCDCFLMF>> OBABLEFNEON;
// Token: 0x0400A9DD RID: 43485
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x400A9DD")]
private readonly Dictionary<object, Action<FMKJHBFFEOM>> HJBCJKDOOMM;
// Token: 0x0200240F RID: 9231
[Token(Token = "0x200240F")]
public enum EFDGHACPGBK
{
// Token: 0x0400A9E0 RID: 43488
[Token(Token = "0x400A9E0")]
INVALID = -1,
// Token: 0x0400A9E1 RID: 43489
[Token(Token = "0x400A9E1")]
FLOAT,
// Token: 0x0400A9E2 RID: 43490
[Token(Token = "0x400A9E2")]
SHORT
}
// Token: 0x02002410 RID: 9232
[Token(Token = "0x2002410")]
public class BLNMAPHFFDN : IProcessor<float>, IDisposable
{
// Token: 0x0600FFE7 RID: 65511 RVA: 0x003BE908 File Offset: 0x003BCB08
[Token(Token = "0x600FFE7")]
[Address(RVA = "0x3C3A30", Offset = "0x3C2430", VA = "0x1803C3A30")]
public BLNMAPHFFDN(AgPhotonMicListener micEvents)
{
this.Dispose();
this.EHPMODCEHLB = micEvents;
}
// Token: 0x0600FFE8 RID: 65512 RVA: 0x003BE924 File Offset: 0x003BCB24
[Token(Token = "0x600FFE8")]
[Address(RVA = "0x12A0420", Offset = "0x129EE20", VA = "0x1812A0420", Slot = "4")]
public float[] Process(float[] HBNNGJJHOLE)
{
int num;
do
{
num = 0;
AgPhotonMicListener ehpmodcehlb = this.EHPMODCEHLB;
AgPhotonMicListener ehpmodcehlb2 = this.EHPMODCEHLB;
int count = ehpmodcehlb2.OBABLEFNEON.Count;
if (ehpmodcehlb2.HJBCJKDOOMM.Count > 0)
{
AgPhotonMicListener ehpmodcehlb3 = this.EHPMODCEHLB;
}
Monitor.Exit(ehpmodcehlb);
if (num != -1)
{
}
}
while (num != 0);
return HBNNGJJHOLE;
}
// Token: 0x0600FFE9 RID: 65513 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600FFE9")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "5")]
public void Dispose()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0400A9E3 RID: 43491
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x400A9E3")]
private AgPhotonMicListener EHPMODCEHLB;
}
// Token: 0x02002411 RID: 9233
[Token(Token = "0x2002411")]
public class DNOFNNPMPHM : IProcessor<short>, IDisposable
{
// Token: 0x0600FFEA RID: 65514 RVA: 0x003BE98C File Offset: 0x003BCB8C
[Token(Token = "0x600FFEA")]
[Address(RVA = "0x3C3A30", Offset = "0x3C2430", VA = "0x1803C3A30")]
public DNOFNNPMPHM(AgPhotonMicListener micEvents)
{
this.Dispose();
this.EHPMODCEHLB = micEvents;
}
// Token: 0x0600FFEB RID: 65515 RVA: 0x003BE9A8 File Offset: 0x003BCBA8
[Token(Token = "0x600FFEB")]
[Address(RVA = "0x12A0D50", Offset = "0x129F750", VA = "0x1812A0D50", Slot = "4")]
public short[] Process(short[] HBNNGJJHOLE)
{
int num;
do
{
num = 0;
AgPhotonMicListener ehpmodcehlb = this.EHPMODCEHLB;
AgPhotonMicListener ehpmodcehlb2 = this.EHPMODCEHLB;
int count = ehpmodcehlb2.OBABLEFNEON.Count;
if (ehpmodcehlb2.HJBCJKDOOMM.Count > 0)
{
AgPhotonMicListener ehpmodcehlb3 = this.EHPMODCEHLB;
}
Monitor.Exit(ehpmodcehlb);
if (num != -1)
{
}
}
while (num != 0);
return HBNNGJJHOLE;
}
// Token: 0x0600FFEC RID: 65516 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600FFEC")]
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60", Slot = "5")]
public void Dispose()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0400A9E4 RID: 43492
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x400A9E4")]
private AgPhotonMicListener EHPMODCEHLB;
}
}
}
@@ -0,0 +1,141 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;
namespace RecRoom.Audio
{
// Token: 0x02002401 RID: 9217
[Token(Token = "0x2002401")]
[StructLayout(3)]
public class AudioSourceSimpleLevelMeter : MonoBehaviour
{
// Token: 0x17002B9A RID: 11162
// (get) Token: 0x0600FFAB RID: 65451 RVA: 0x003BDDD8 File Offset: 0x003BBFD8
[Token(Token = "0x17002B9A")]
public float PBEBNMHDNND
{
[Token(Token = "0x600FFAB")]
[Address(RVA = "0x129B540", Offset = "0x1299F40", VA = "0x18129B540")]
get
{
if (!this.BHMBADGOMGD)
{
}
CircularBuffer<float> jolhmlimhlk = this.JOLHMLIMHLK;
int num = jolhmlimhlk.Count - 1;
return jolhmlimhlk[num];
}
}
// Token: 0x17002B9B RID: 11163
// (get) Token: 0x0600FFAC RID: 65452 RVA: 0x003BDE10 File Offset: 0x003BC010
// (set) Token: 0x0600FFAD RID: 65453 RVA: 0x003BDE30 File Offset: 0x003BC030
[Token(Token = "0x17002B9B")]
public float DHOJEBFIIEG
{
[Token(Token = "0x600FFAC")]
[Address(RVA = "0x129B510", Offset = "0x1299F10", VA = "0x18129B510")]
get
{
if (!this.BHMBADGOMGD)
{
}
return this.EIMEOEICJJL;
}
[Token(Token = "0x600FFAD")]
[Address(RVA = "0x468510", Offset = "0x466F10", VA = "0x180468510")]
private set
{
this.EIMEOEICJJL = value;
}
}
// Token: 0x17002B9C RID: 11164
// (get) Token: 0x0600FFAE RID: 65454 RVA: 0x003BDE44 File Offset: 0x003BC044
[Token(Token = "0x17002B9C")]
private bool BHMBADGOMGD
{
[Token(Token = "0x600FFAE")]
[Address(RVA = "0x129B210", Offset = "0x1299C10", VA = "0x18129B210")]
get
{
if (this.source.isActiveAndEnabled && this.source.isPlaying)
{
return this.JOLHMLIMHLK.Count > 0;
}
throw new NullReferenceException();
}
}
// Token: 0x0600FFAF RID: 65455 RVA: 0x003BDE84 File Offset: 0x003BC084
[Token(Token = "0x600FFAF")]
[Address(RVA = "0x129B290", Offset = "0x1299C90", VA = "0x18129B290")]
private void OnAudioFilterRead(float[] ABADFLCBFIJ, int GMIAOBOKCBA)
{
int num;
int num2;
do
{
num = 0;
num2 = 0;
int num3 = 0;
int length = ABADFLCBFIJ.Length;
if (num < length)
{
float num4 = ABADFLCBFIJ[num];
if (num2 > (int)num4)
{
}
if (num4 > (float)num3)
{
}
num++;
}
CircularBuffer<float> jolhmlimhlk = this.JOLHMLIMHLK;
jolhmlimhlk.Add(length);
CircularBuffer<float> jolhmlimhlk2 = this.JOLHMLIMHLK;
if (jolhmlimhlk.GetEnumerator() != 0)
{
}
if (num != -1)
{
}
}
while (num != 0);
int count = this.JOLHMLIMHLK.Count;
this.EIMEOEICJJL = (float)num2;
}
// Token: 0x0600FFB0 RID: 65456 RVA: 0x003BDF00 File Offset: 0x003BC100
[Token(Token = "0x600FFB0")]
[Address(RVA = "0x129B4A0", Offset = "0x1299EA0", VA = "0x18129B4A0")]
public AudioSourceSimpleLevelMeter()
{
CircularBuffer<float> circularBuffer = new CircularBuffer(15);
this.JOLHMLIMHLK = circularBuffer;
base..ctor();
}
// Token: 0x0400A9AC RID: 43436
[Token(Token = "0x400A9AC")]
private const int NMLJLJDPGII = 15;
// Token: 0x0400A9AD RID: 43437
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400A9AD")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)]
private AudioSource source;
// Token: 0x0400A9AE RID: 43438
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400A9AE")]
private CircularBuffer<float> JOLHMLIMHLK;
// Token: 0x0400A9AF RID: 43439
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400A9AF")]
private float EIMEOEICJJL;
}
}
@@ -0,0 +1,208 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using RecRoom.Core;
using UnityEngine;
namespace RecRoom.Audio
{
// Token: 0x02002413 RID: 9235
[Token(Token = "0x2002413")]
[StructLayout(3)]
public class DirectionalAudioSource : MonoBehaviour
{
// Token: 0x17002BA4 RID: 11172
// (get) Token: 0x0600FFED RID: 65517 RVA: 0x003BEA10 File Offset: 0x003BCC10
[Token(Token = "0x17002BA4")]
private bool JGIFECCGBHE
{
[Token(Token = "0x600FFED")]
[Address(RVA = "0x12A0FC0", Offset = "0x129F9C0", VA = "0x1812A0FC0")]
get
{
Player player = this.player;
int num = 0;
return player != num;
}
}
// Token: 0x0600FFEE RID: 65518 RVA: 0x003BEA30 File Offset: 0x003BCC30
[Token(Token = "0x600FFEE")]
[Address(RVA = "0x12A0ED0", Offset = "0x129F8D0", VA = "0x1812A0ED0")]
private void Awake()
{
ActionEvent useDirectionalVoiceChatChangedEvent = SceneAudioSettings.UseDirectionalVoiceChatChangedEvent;
Action action = new Action(this.GEPMCHFPPKF);
SceneAudioSettings.UseDirectionalVoiceChatChangedEvent = useDirectionalVoiceChatChangedEvent + action;
Action<float> action2 = new Action(this.NIDICAHJFNC);
IDisposable disposable = ScheduledUpdateMonoBehaviourExtensions.Update5hz(this, action2);
}
// Token: 0x0600FFEF RID: 65519 RVA: 0x003BEA74 File Offset: 0x003BCC74
[Token(Token = "0x600FFEF")]
[Address(RVA = "0x12A1680", Offset = "0x12A0080", VA = "0x1812A1680")]
private void Start()
{
if (!RecRoomSceneManager.FFNIFALJLDD)
{
}
bool useDirectionalVoiceChat = RecRoomSceneManager.<OCDLBPHJMOP>k__BackingField.audioSettings.UseDirectionalVoiceChat;
this.OFKIHGPJHJI(useDirectionalVoiceChat);
AudioLowPassFilter audioLowPassFilter = this.lowPassFilter;
int num = 0;
if (audioLowPassFilter != num)
{
AudioLowPassFilter audioLowPassFilter2 = this.lowPassFilter;
AnimationCurve animationCurve = FNGJPHBOCLD.MCMFGIIHNJP;
audioLowPassFilter2.customCutoffCurve = animationCurve;
return;
}
}
// Token: 0x0600FFF0 RID: 65520 RVA: 0x003BEAD8 File Offset: 0x003BCCD8
[Token(Token = "0x600FFF0")]
[Address(RVA = "0x12A1930", Offset = "0x12A0330", VA = "0x1812A1930")]
private void OnDestroy()
{
ActionEvent useDirectionalVoiceChatChangedEvent = SceneAudioSettings.UseDirectionalVoiceChatChangedEvent;
Action action = new Action(this.GEPMCHFPPKF);
SceneAudioSettings.UseDirectionalVoiceChatChangedEvent = useDirectionalVoiceChatChangedEvent - action;
}
// Token: 0x0600FFF1 RID: 65521 RVA: 0x003BEB04 File Offset: 0x003BCD04
[Token(Token = "0x600FFF1")]
[Address(RVA = "0x12A1680", Offset = "0x12A0080", VA = "0x1812A1680")]
private void OFFLOPLJBBG()
{
if (!RecRoomSceneManager.FFNIFALJLDD)
{
}
bool useDirectionalVoiceChat = RecRoomSceneManager.<OCDLBPHJMOP>k__BackingField.audioSettings.UseDirectionalVoiceChat;
this.OFKIHGPJHJI(useDirectionalVoiceChat);
AudioLowPassFilter audioLowPassFilter = this.lowPassFilter;
int num = 0;
if (audioLowPassFilter != num)
{
AudioLowPassFilter audioLowPassFilter2 = this.lowPassFilter;
AnimationCurve animationCurve = FNGJPHBOCLD.MCMFGIIHNJP;
audioLowPassFilter2.customCutoffCurve = animationCurve;
return;
}
}
// Token: 0x0600FFF2 RID: 65522 RVA: 0x003BEB68 File Offset: 0x003BCD68
[Token(Token = "0x600FFF2")]
[Address(RVA = "0x12A1250", Offset = "0x129FC50", VA = "0x1812A1250")]
private void NIDICAHJFNC(float POGAEJIEPIM)
{
float num = this.audioSource.spatialBlend;
Transform transform = base.transform;
Transform transform2 = SingletonMonoBehaviour.Instance.CHLMFLCFGFL.transform;
Vector3 vector;
float z = vector.z;
Transform transform3 = base.transform;
num = FNGJPHBOCLD.FGEPDEHMOOI.Evaluate(POGAEJIEPIM);
Transform transform4 = SingletonMonoBehaviour.Instance.CHLMFLCFGFL.transform;
float num2 = FNGJPHBOCLD.PGIFJPBPIHE.Evaluate(POGAEJIEPIM);
this.COOFEOEONKA(1f);
AudioLowPassFilter audioLowPassFilter = this.lowPassFilter;
int num3 = 0;
if (audioLowPassFilter != num3)
{
this.lowPassFilter.enabled = num3 != 0;
}
}
// Token: 0x0600FFF3 RID: 65523 RVA: 0x003BEC14 File Offset: 0x003BCE14
[Token(Token = "0x600FFF3")]
[Address(RVA = "0x12A1150", Offset = "0x129FB50", VA = "0x1812A1150")]
private void GEPMCHFPPKF()
{
if (RecRoomSceneManager.FFNIFALJLDD)
{
bool useDirectionalVoiceChat = RecRoomSceneManager.<OCDLBPHJMOP>k__BackingField.audioSettings.UseDirectionalVoiceChat;
this.OFKIHGPJHJI(useDirectionalVoiceChat);
return;
}
}
// Token: 0x0600FFF4 RID: 65524 RVA: 0x003BEC4C File Offset: 0x003BCE4C
[Token(Token = "0x600FFF4")]
[Address(RVA = "0x12A1020", Offset = "0x129FA20", VA = "0x1812A1020")]
private void COOFEOEONKA(float BANKGLOHKOJ)
{
Player player = this.player;
int num = 0;
if (!(player != num))
{
AudioSource audioSource = this.audioSource;
float num2 = Mathf.Clamp01(BANKGLOHKOJ);
audioSource.volume = BANKGLOHKOJ;
return;
}
Player player2 = this.player;
string directional_AUDIO_TOKEN = DirectionalAudioSource.DIRECTIONAL_AUDIO_TOKEN;
player2.AddVoiceVolumeMultiplier(BANKGLOHKOJ, directional_AUDIO_TOKEN);
}
// Token: 0x0600FFF5 RID: 65525 RVA: 0x003BECA4 File Offset: 0x003BCEA4
[Token(Token = "0x600FFF5")]
[Address(RVA = "0x12A1800", Offset = "0x12A0200", VA = "0x1812A1800")]
private void OFKIHGPJHJI(bool CFICOGKHLAE)
{
Player player = this.player;
int num = 0;
if (player != num)
{
Player player2 = this.player;
}
AudioLowPassFilter audioLowPassFilter = this.lowPassFilter;
int num2 = 0;
if (audioLowPassFilter != num2)
{
this.lowPassFilter.enabled = CFICOGKHLAE;
}
base.enabled = CFICOGKHLAE;
if (!CFICOGKHLAE)
{
this.COOFEOEONKA(1f);
}
}
// Token: 0x0600FFF6 RID: 65526 RVA: 0x003BED08 File Offset: 0x003BCF08
[Token(Token = "0x600FFF6")]
[Address(RVA = "0x3C1210", Offset = "0x3BFC10", VA = "0x1803C1210")]
public DirectionalAudioSource()
{
}
// Token: 0x0400A9ED RID: 43501
[Token(Token = "0x400A9ED")]
public static readonly string DIRECTIONAL_AUDIO_TOKEN = "Directional";
// Token: 0x0400A9EE RID: 43502
[Token(Token = "0x400A9EE")]
public static readonly float SPATIAL_AUDIO_THRESHOLD;
// Token: 0x0400A9EF RID: 43503
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400A9EF")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)]
private AudioSource audioSource;
// Token: 0x0400A9F0 RID: 43504
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400A9F0")]
[SerializeField]
[OCIDFHDICIP(JIBDPHMGEGO.Self, false, false)]
private AudioLowPassFilter lowPassFilter;
// Token: 0x0400A9F1 RID: 43505
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400A9F1")]
[SerializeField]
[OCIDFHDICIP(JIBDPHMGEGO.Parent, false, false)]
private Player player;
}
}
@@ -0,0 +1,528 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Threading;
using Cpp2IlInjected;
using POpusCodec;
using POpusCodec.Enums;
using RecRoom.Async;
using RecRoom.Core;
using UnityEngine;
namespace RecRoom.Audio
{
// Token: 0x02002402 RID: 9218
[Token(Token = "0x2002402")]
[StructLayout(3)]
public class MicAudioRecorder : MonoBehaviour
{
// Token: 0x17002B9D RID: 11165
// (get) Token: 0x0600FFB1 RID: 65457 RVA: 0x003BDF24 File Offset: 0x003BC124
// (set) Token: 0x0600FFB2 RID: 65458 RVA: 0x003BDF38 File Offset: 0x003BC138
[Token(Token = "0x17002B9D")]
public bool OHDCIAPFBBA
{
[Token(Token = "0x600FFB1")]
[Address(RVA = "0x52F470", Offset = "0x52DE70", VA = "0x18052F470")]
get;
[Token(Token = "0x600FFB2")]
[Address(RVA = "0x52F720", Offset = "0x52E120", VA = "0x18052F720")]
private set;
}
// Token: 0x0600FFB3 RID: 65459 RVA: 0x003BDF4C File Offset: 0x003BC14C
[Token(Token = "0x600FFB3")]
[Address(RVA = "0x12A73D0", Offset = "0x12A5DD0", VA = "0x1812A73D0")]
private void OnDestroy()
{
MicAudioRecorder.PBMAIKBBFGL caokfibjfak = this.CAOKFIBJFAK;
if (caokfibjfak != 0)
{
caokfibjfak.Dispose();
this.CAOKFIBJFAK = (ulong)0L;
}
MicAudioRecorder.LHNGJGJPOEK oncenancnfo = this.ONCENANCNFO;
if (oncenancnfo != 0)
{
oncenancnfo.Dispose();
this.ONCENANCNFO = (ulong)0L;
}
this.OMDEHIEFHBD();
}
// Token: 0x0600FFB4 RID: 65460 RVA: 0x003BDF94 File Offset: 0x003BC194
[Token(Token = "0x600FFB4")]
[Address(RVA = "0x12A7440", Offset = "0x12A5E40", VA = "0x1812A7440")]
public void StartRecording(float JPOFKMCIEKB)
{
if (this.<MCKEEDGJJFN>k__BackingField)
{
Debug.LogWarning("MicAudioRecorder.StartRecording() called while IsRecording is true");
return;
}
bool flag = KGGMGKJJLCL.FDIMKCJMNNL();
if (!flag)
{
Debug.LogWarning("MicAudioRecorder.StartRecording() called without permission to use the microphone.");
return;
}
SamplingRate samplingRate = this.preferredSamplingRate;
if (!flag)
{
KHJKOGJKJNA.IKGODIKAICE.LHCDHNICKNE lhcdhnickne = this.format;
int num = this.compressedBitrate;
MicAudioRecorder.PBMAIKBBFGL pbmaikbbfgl;
this.CAOKFIBJFAK = pbmaikbbfgl;
Action<EADLCDCFLMF> action = new Action(this.MPNGHKPNEBK);
}
if (flag)
{
KHJKOGJKJNA.IKGODIKAICE.LHCDHNICKNE lhcdhnickne2 = this.format;
int num2 = this.compressedBitrate;
MicAudioRecorder.LHNGJGJPOEK lhngjgjpoek;
this.ONCENANCNFO = lhngjgjpoek;
Action<FMKJHBFFEOM> action2 = new Action(this.ABPHLPEJKMC);
this.<MCKEEDGJJFN>k__BackingField = true;
return;
}
throw new NullReferenceException();
}
// Token: 0x0600FFB5 RID: 65461 RVA: 0x003BE058 File Offset: 0x003BC258
[Token(Token = "0x600FFB5")]
[Address(RVA = "0x12A6F30", Offset = "0x12A5930", VA = "0x1812A6F30")]
public void CancelRecording()
{
if (this.<MCKEEDGJJFN>k__BackingField)
{
this.<MCKEEDGJJFN>k__BackingField = false;
MicAudioRecorder.PBMAIKBBFGL caokfibjfak = this.CAOKFIBJFAK;
if (caokfibjfak != 0)
{
caokfibjfak.Dispose();
this.CAOKFIBJFAK = (ulong)0L;
}
MicAudioRecorder.LHNGJGJPOEK oncenancnfo = this.ONCENANCNFO;
if (oncenancnfo != 0)
{
oncenancnfo.Dispose();
this.ONCENANCNFO = (ulong)0L;
}
this.OMDEHIEFHBD();
return;
}
Debug.LogWarning("MicAudioRecorder.StopRecording() called while IsRecording is false.");
}
// Token: 0x0600FFB6 RID: 65462 RVA: 0x003BE0BC File Offset: 0x003BC2BC
[Token(Token = "0x600FFB6")]
[Address(RVA = "0x12A7000", Offset = "0x12A5A00", VA = "0x1812A7000")]
public IPromise<KHJKOGJKJNA> FinishRecording()
{
/*
An exception occurred when decompiling this method (0600FFB6)
ICSharpCode.Decompiler.DecompilerException: Error decompiling RecRoom.Async.IPromise`1<KHJKOGJKJNA> RecRoom.Audio.MicAudioRecorder::FinishRecording()
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_5C:
stloc:InvalidOperationException(var_3_66, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("MicAudioRecorder.FinishRecording() called with no active encoder.")))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
*/;
}
// Token: 0x0600FFB7 RID: 65463 RVA: 0x003BE130 File Offset: 0x003BC330
[Token(Token = "0x600FFB7")]
[Address(RVA = "0x12A7170", Offset = "0x12A5B70", VA = "0x1812A7170")]
private void MPNGHKPNEBK(EADLCDCFLMF CNOGINOPPCH)
{
int num;
do
{
num = 0;
MicAudioRecorder.PBMAIKBBFGL caokfibjfak = this.CAOKFIBJFAK;
MicAudioRecorder.PBMAIKBBFGL caokfibjfak2 = this.CAOKFIBJFAK;
Monitor.Exit(caokfibjfak);
if (num != -1)
{
}
}
while (num != 0);
}
// Token: 0x0600FFB8 RID: 65464 RVA: 0x003BE164 File Offset: 0x003BC364
[Token(Token = "0x600FFB8")]
[Address(RVA = "0x12A6D90", Offset = "0x12A5790", VA = "0x1812A6D90")]
private void ABPHLPEJKMC(FMKJHBFFEOM CNOGINOPPCH)
{
int num;
do
{
num = 0;
MicAudioRecorder.LHNGJGJPOEK oncenancnfo = this.ONCENANCNFO;
MicAudioRecorder.LHNGJGJPOEK oncenancnfo2 = this.ONCENANCNFO;
Monitor.Exit(oncenancnfo);
if (num != -1)
{
}
}
while (num != 0);
}
// Token: 0x0600FFB9 RID: 65465 RVA: 0x003BE198 File Offset: 0x003BC398
[Token(Token = "0x600FFB9")]
[Address(RVA = "0x12A6EC0", Offset = "0x12A58C0", VA = "0x1812A6EC0")]
private void ANOIPBMIIMJ()
{
MicAudioRecorder.PBMAIKBBFGL caokfibjfak = this.CAOKFIBJFAK;
if (caokfibjfak != 0)
{
caokfibjfak.Dispose();
this.CAOKFIBJFAK = (ulong)0L;
}
MicAudioRecorder.LHNGJGJPOEK oncenancnfo = this.ONCENANCNFO;
if (oncenancnfo != 0)
{
oncenancnfo.Dispose();
this.ONCENANCNFO = (ulong)0L;
}
}
// Token: 0x0600FFBA RID: 65466 RVA: 0x003BE1DC File Offset: 0x003BC3DC
[Token(Token = "0x600FFBA")]
[Address(RVA = "0x12A72A0", Offset = "0x12A5CA0", VA = "0x1812A72A0")]
private void OMDEHIEFHBD()
{
Player.<EGKJPJKLEAI>k__BackingField.photonMicEvents.StopListening(this);
}
// Token: 0x0600FFBB RID: 65467 RVA: 0x003BE200 File Offset: 0x003BC400
[Token(Token = "0x600FFBB")]
[Address(RVA = "0x12A78E0", Offset = "0x12A62E0", VA = "0x1812A78E0")]
public MicAudioRecorder()
{
}
// Token: 0x0400A9B0 RID: 43440
[Token(Token = "0x400A9B0")]
private const int DKHDKMEOKHA = 5000;
// Token: 0x0400A9B1 RID: 43441
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400A9B1")]
[SerializeField]
private KHJKOGJKJNA.IKGODIKAICE.LHCDHNICKNE format = (KHJKOGJKJNA.IKGODIKAICE.LHCDHNICKNE)((ulong)1L);
// Token: 0x0400A9B2 RID: 43442
[global::Cpp2IlInjected.FieldOffset(Offset = "0x1C")]
[Token(Token = "0x400A9B2")]
[SerializeField]
private SamplingRate preferredSamplingRate = (SamplingRate)((ulong)24000L);
// Token: 0x0400A9B3 RID: 43443
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400A9B3")]
[SerializeField]
private int compressedBitrate = (int)((ulong)96000L);
// Token: 0x0400A9B4 RID: 43444
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400A9B4")]
private MicAudioRecorder.PBMAIKBBFGL CAOKFIBJFAK;
// Token: 0x0400A9B5 RID: 43445
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x400A9B5")]
private MicAudioRecorder.LHNGJGJPOEK ONCENANCNFO;
// Token: 0x02002403 RID: 9219
[Token(Token = "0x2002403")]
private interface JGGHBCDDGKB : IDisposable
{
// Token: 0x0600FFBC RID: 65468
[Token(Token = "0x600FFBC")]
[Address(Slot = "0")]
IPromise<KHJKOGJKJNA> BFHKDGFEKPH();
}
// Token: 0x02002404 RID: 9220
[Token(Token = "0x2002404")]
private abstract class AGCKECPBHIF<T> : MicAudioRecorder.JGGHBCDDGKB, IDisposable
{
// Token: 0x0600FFBD RID: 65469 RVA: 0x003BE238 File Offset: 0x003BC438
[Token(Token = "0x600FFBD")]
[Address(RVA = "0x1DAF4E0", Offset = "0x1DADEE0", VA = "0x181DAF4E0")]
private static int EJJEKLGAHDE(int CABCLOIDBOJ)
{
int num;
do
{
num = 0;
IEnumerator enumerator = Enum.GetValues(typeof(SamplingRate)).GetEnumerator();
if (enumerator != 0)
{
IEnumerator enumerator2 = enumerator;
enumerator2 -= CABCLOIDBOJ;
enumerator2 -= typeof(int).TypeHandle;
uint num2;
while (enumerator2 >= num2)
{
}
}
if (num != -1)
{
}
}
while (num != 0);
throw new NullReferenceException();
}
// Token: 0x0600FFBE RID: 65470 RVA: 0x003BE290 File Offset: 0x003BC490
[Token(Token = "0x600FFBE")]
[Address(RVA = "0x1DAFE20", Offset = "0x1DAE820", VA = "0x181DAFE20")]
public AGCKECPBHIF(KHJKOGJKJNA.IKGODIKAICE.LHCDHNICKNE format, float maxDuration, int recordingFrequency, int compressedBitrate)
{
KHJKOGJKJNA khjkogjkjna = new KHJKOGJKJNA();
khjkogjkjna.HLIPADMPPNI = format;
if (khjkogjkjna.HLIPADMPPNI == KHJKOGJKJNA.IKGODIKAICE.LHCDHNICKNE.Opus)
{
}
khjkogjkjna.JLPNPNIOPEG = recordingFrequency;
khjkogjkjna.AKDBFNKALJM = (int)((ulong)1L);
int num = khjkogjkjna.JLPNPNIOPEG;
int num3;
int num2 = (int)(format * (KHJKOGJKJNA.IKGODIKAICE.LHCDHNICKNE)num3);
this.OPAGMEGKDOB = num2;
num = num3;
this.JEKOINNGHHM = num;
}
// Token: 0x0600FFBF RID: 65471 RVA: 0x003BE300 File Offset: 0x003BC500
[Token(Token = "0x600FFBF")]
[Address(RVA = "0x1DAFBD0", Offset = "0x1DAE5D0", VA = "0x181DAFBD0")]
public void JPDEFIDLMNL(T[] PDACILKHJJG, int GMIAOBOKCBA, int NANJEHFBLNK)
{
if (this.JEKOINNGHHM != 0)
{
T t = PDACILKHJJG[0];
if (GMIAOBOKCBA != 1)
{
int num = 0;
int length = PDACILKHJJG.Length;
if (num >= length)
{
return;
}
List jekoinnghhm = this.JEKOINNGHHM;
num += GMIAOBOKCBA;
}
List jekoinnghhm2 = this.JEKOINNGHHM;
return;
}
Debug.LogWarning("AddSamples() - uncompressedSamples is null");
}
// Token: 0x0600FFC0 RID: 65472 RVA: 0x003BE364 File Offset: 0x003BC564
[Token(Token = "0x600FFC0")]
[Address(RVA = "0x1DAEAE0", Offset = "0x1DAD4E0", VA = "0x181DAEAE0", Slot = "4")]
public IPromise<KHJKOGJKJNA> BFHKDGFEKPH()
{
/*
An exception occurred when decompiling this method (0600FFC0)
ICSharpCode.Decompiler.DecompilerException: Error decompiling RecRoom.Async.IPromise`1<KHJKOGJKJNA> RecRoom.Audio.MicAudioRecorder/AGCKECPBHIF::BFHKDGFEKPH()
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_3D:
stloc:InvalidOperationException(var_8_4E, newobj:InvalidOperationException(InvalidOperationException::.ctor, call:string(string::Concat, ldstr:string[exp:object]("MicAudioRecorder doesn't support format "), ldloc:class [RecRoom.Promises.Runtime]RecRoom.Async.Promise`1<class KHJKOGJKJNA>[exp:object](var_5))))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
*/;
}
// Token: 0x0600FFC1 RID: 65473 RVA: 0x003BE3C0 File Offset: 0x003BC5C0
[Token(Token = "0x600FFC1")]
[Address(RVA = "0x1DAEF50", Offset = "0x1DAD950", VA = "0x181DAEF50", Slot = "5")]
public void Dispose()
{
int num = 0;
this.JEKOINNGHHM = num;
}
// Token: 0x0600FFC2 RID: 65474 RVA: 0x003BE3D8 File Offset: 0x003BC5D8
[Token(Token = "0x600FFC2")]
[Address(RVA = "0x1DAEEA0", Offset = "0x1DAD8A0", VA = "0x181DAEEA0")]
private IEnumerator<ISchedule> DNFGHLBGEOC(List<T> NKMLDPGPNOL, KHJKOGJKJNA NGAKMPBLLHK, Promise<KHJKOGJKJNA> MCINMMCGJML)
{
throw new NullReferenceException();
}
// Token: 0x0600FFC3 RID: 65475
[Token(Token = "0x600FFC3")]
[Address(Slot = "6")]
protected abstract void HFMOBAJEAKK(KHJKOGJKJNA JKMHAHNGMCN, IReadOnlyList<T> FMOMKBJLHLP);
// Token: 0x0600FFC4 RID: 65476
[Token(Token = "0x600FFC4")]
[Address(Slot = "7")]
protected abstract ArraySegment<byte> MLMKJINMBEG(OpusEncoder NMCDOCDMHPB, T[] FMOMKBJLHLP);
// Token: 0x0400A9B7 RID: 43447
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400A9B7")]
private List<T> JEKOINNGHHM;
// Token: 0x0400A9B8 RID: 43448
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400A9B8")]
private int OPAGMEGKDOB;
// Token: 0x0400A9B9 RID: 43449
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400A9B9")]
private KHJKOGJKJNA POFFKBFJJKK;
// Token: 0x0400A9BA RID: 43450
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400A9BA")]
private KHJKOGJKJNA.IKGODIKAICE.LHCDHNICKNE HFMBAGMDCOB;
// Token: 0x0400A9BB RID: 43451
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400A9BB")]
private int CDKLOEONJIL = (int)format;
// Token: 0x0400A9BC RID: 43452
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400A9BC")]
private int ILDHJPNKMIE;
// Token: 0x0400A9BD RID: 43453
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400A9BD")]
private IDisposable JHHOFOMKPHJ = 0;
}
// Token: 0x02002406 RID: 9222
[Token(Token = "0x2002406")]
private class PBMAIKBBFGL : MicAudioRecorder.AGCKECPBHIF<float>
{
// Token: 0x0600FFCB RID: 65483 RVA: 0x003BE404 File Offset: 0x003BC604
[Token(Token = "0x600FFCB")]
[Address(RVA = "0x12AC740", Offset = "0x12AB140", VA = "0x1812AC740")]
public PBMAIKBBFGL(KHJKOGJKJNA.IKGODIKAICE.LHCDHNICKNE format, float maxDuration, int recordingFrequency, int compressedBitrate)
{
}
// Token: 0x0600FFCC RID: 65484 RVA: 0x003BE414 File Offset: 0x003BC614
[Token(Token = "0x600FFCC")]
[Address(RVA = "0x12AC6A0", Offset = "0x12AB0A0", VA = "0x1812AC6A0", Slot = "6")]
protected override void HFMOBAJEAKK(KHJKOGJKJNA JKMHAHNGMCN, IReadOnlyList<float> JEKOINNGHHM)
{
JKMHAHNGMCN.PMIHLIMJPDL.AddRange(JEKOINNGHHM);
}
// Token: 0x0600FFCD RID: 65485 RVA: 0x003BE434 File Offset: 0x003BC634
[Token(Token = "0x600FFCD")]
[Address(RVA = "0x12AC700", Offset = "0x12AB100", VA = "0x1812AC700", Slot = "7")]
protected override ArraySegment<byte> MLMKJINMBEG(OpusEncoder NMCDOCDMHPB, float[] FMOMKBJLHLP)
{
throw new NullReferenceException();
}
}
// Token: 0x02002407 RID: 9223
[Token(Token = "0x2002407")]
private class LHNGJGJPOEK : MicAudioRecorder.AGCKECPBHIF<short>
{
// Token: 0x0600FFCE RID: 65486 RVA: 0x003BE448 File Offset: 0x003BC648
[Token(Token = "0x600FFCE")]
[Address(RVA = "0x12A5250", Offset = "0x12A3C50", VA = "0x1812A5250")]
public LHNGJGJPOEK(KHJKOGJKJNA.IKGODIKAICE.LHCDHNICKNE format, float maxDuration, int recordingFrequency, int compressedBitrate)
{
}
// Token: 0x0600FFCF RID: 65487 RVA: 0x003BE458 File Offset: 0x003BC658
[Token(Token = "0x600FFCF")]
[Address(RVA = "0x12A50A0", Offset = "0x12A3AA0", VA = "0x1812A50A0", Slot = "6")]
protected override void HFMOBAJEAKK(KHJKOGJKJNA JKMHAHNGMCN, IReadOnlyList<short> JEKOINNGHHM)
{
int num = 0;
if (num < JEKOINNGHHM)
{
num += num;
if (num == JEKOINNGHHM)
{
goto IL_24;
}
num++;
}
int num2 = 0;
JKMHAHNGMCN.PMIHLIMJPDL.Add(num2);
num++;
IL_24:
num2 += num2;
}
// Token: 0x0600FFD0 RID: 65488 RVA: 0x003BE494 File Offset: 0x003BC694
[Token(Token = "0x600FFD0")]
[Address(RVA = "0x12A5210", Offset = "0x12A3C10", VA = "0x1812A5210", Slot = "7")]
protected override ArraySegment<byte> MLMKJINMBEG(OpusEncoder NMCDOCDMHPB, short[] FMOMKBJLHLP)
{
throw new NullReferenceException();
}
}
// Token: 0x02002408 RID: 9224
[Token(Token = "0x2002408")]
[CompilerGenerated]
private sealed class JBOOBIGKAFL
{
// Token: 0x0600FFD1 RID: 65489 RVA: 0x003BE4A8 File Offset: 0x003BC6A8
[Token(Token = "0x600FFD1")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public JBOOBIGKAFL()
{
}
// Token: 0x0600FFD2 RID: 65490 RVA: 0x003BE4BC File Offset: 0x003BC6BC
[Token(Token = "0x600FFD2")]
[Address(RVA = "0x12A4EA0", Offset = "0x12A38A0", VA = "0x1812A4EA0")]
internal void <FinishRecording>b__0()
{
MicAudioRecorder.JGGHBCDDGKB jgghbcddgkb = this.activeEncoder;
throw new NullReferenceException();
}
// Token: 0x0400A9CB RID: 43467
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x400A9CB")]
public MicAudioRecorder.JGGHBCDDGKB activeEncoder;
}
}
}
@@ -0,0 +1,97 @@
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using Photon.Voice.Unity;
using RecRoom.Async;
using RecRoom.Core;
using UnityEngine;
namespace RecRoom.Audio
{
// Token: 0x02002414 RID: 9236
[Token(Token = "0x2002414")]
[StructLayout(3)]
public class MicrophoneInputDetector : MonoBehaviour
{
// Token: 0x17002BA5 RID: 11173
// (get) Token: 0x0600FFF8 RID: 65528 RVA: 0x003BED34 File Offset: 0x003BCF34
// (set) Token: 0x0600FFF9 RID: 65529 RVA: 0x003BED48 File Offset: 0x003BCF48
[Token(Token = "0x17002BA5")]
public static bool DFIHNLNLPOL
{
[Token(Token = "0x600FFF8")]
[Address(RVA = "0x12A7A90", Offset = "0x12A6490", VA = "0x1812A7A90")]
get;
[Token(Token = "0x600FFF9")]
[Address(RVA = "0x12A7AD0", Offset = "0x12A64D0", VA = "0x1812A7AD0")]
set;
}
// Token: 0x0600FFFA RID: 65530 RVA: 0x003BED5C File Offset: 0x003BCF5C
[Token(Token = "0x600FFFA")]
[Address(RVA = "0x12A7970", Offset = "0x12A6370", VA = "0x1812A7970")]
public ICancelablePromise StartListening(Recorder OMPPDLLFOLK)
{
if (this.CILGOCKBPCG != 0)
{
ISchedulerPromise cilgockbpcg = this.CILGOCKBPCG;
this.CILGOCKBPCG = (ulong)0L;
}
Scheduler instance = SingletonMonoBehaviour.Instance;
MicrophoneInputDetector.MGELIHEKPIB mgelihekpib;
mgelihekpib.System.IDisposable.Dispose();
mgelihekpib.<>1__state = (int)((ulong)0L);
mgelihekpib.<>4__this = this;
mgelihekpib.recorder = OMPPDLLFOLK;
ISchedulerPromise schedulerPromise = instance.Run(this, mgelihekpib);
this.CILGOCKBPCG = schedulerPromise;
throw new NullReferenceException();
}
// Token: 0x0600FFFB RID: 65531 RVA: 0x003BEDBC File Offset: 0x003BCFBC
[Token(Token = "0x600FFFB")]
[Address(RVA = "0x12A7900", Offset = "0x12A6300", VA = "0x1812A7900")]
private IEnumerator<ISchedule> PANJGGGEBKA(Recorder LPAMLOIIBHO)
{
/*
An exception occurred when decompiling this method (0600FFFB)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1<RecRoom.Core.ISchedule> RecRoom.Audio.MicrophoneInputDetector::PANJGGGEBKA(Photon.Voice.Unity.Recorder)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
call:void(MGELIHEKPIB::System.IDisposable.Dispose, ldloc:MGELIHEKPIB(var_0))
stfld:MicrophoneInputDetector(MGELIHEKPIB::<>4__this, ldloc:MGELIHEKPIB(var_0), ldloc:MicrophoneInputDetector(this))
stfld:int32(MGELIHEKPIB::<>1__state, ldloc:MGELIHEKPIB(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0)))
stfld:Recorder(MGELIHEKPIB::recorder, ldloc:MGELIHEKPIB(var_0), ldloc:Recorder(LPAMLOIIBHO))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
*/;
}
// Token: 0x0600FFFC RID: 65532 RVA: 0x003BEDE8 File Offset: 0x003BCFE8
[Token(Token = "0x600FFFC")]
[Address(RVA = "0x3C1210", Offset = "0x3BFC10", VA = "0x1803C1210")]
public MicrophoneInputDetector()
{
}
// Token: 0x0400A9F2 RID: 43506
[Token(Token = "0x400A9F2")]
private const float PBPLKACEIJA = 1E-05f;
// Token: 0x0400A9F3 RID: 43507
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400A9F3")]
private ISchedulerPromise CILGOCKBPCG;
}
}
@@ -0,0 +1,46 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;
namespace RecRoom.Audio
{
// Token: 0x02002419 RID: 9241
[Token(Token = "0x2002419")]
[CreateAssetMenu]
[Serializable]
[StructLayout(3)]
public class PlayerAudioConfig : ScriptableObject
{
// Token: 0x0601001C RID: 65564 RVA: 0x003BF4A8 File Offset: 0x003BD6A8
[Token(Token = "0x601001C")]
[Address(RVA = "0x3C6D30", Offset = "0x3C5730", VA = "0x1803C6D30")]
public PlayerAudioConfig()
{
}
// Token: 0x0400AA04 RID: 43524
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400AA04")]
[Tooltip("Default voice rolloff to be used when the SceneAudioSettings aren't overriding it")]
public AudioRolloff defaultVoiceRolloff;
// Token: 0x0400AA05 RID: 43525
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400AA05")]
[Tooltip("Frequency cutoff curve over distance of the current voice audio rolloff for remote Players' Low Pass filter. 1 = 22KHz, 0 = 10Hz")]
public AnimationCurve defaultVoiceLowPassRolloff;
// Token: 0x0400AA06 RID: 43526
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400AA06")]
[Tooltip("How much voice audio sources attenuate as they turn away from the listener. X-axis: [0, 180] degrees, Y-axis: [0, 1] volume multiplier")]
public AnimationCurve directionalVoiceSourceAngleRolloff;
// Token: 0x0400AA07 RID: 43527
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x400AA07")]
[Tooltip("How much voice audio sources attenuate as the listener turns away from them. X-axis: [0, 180] degrees, Y-axis: [0, 1] volume multiplier")]
public AnimationCurve directionalVoiceListenerAngleRolloff;
}
}
@@ -0,0 +1,85 @@
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using RecRoom.Core;
using UnityEngine;
namespace RecRoom.Audio
{
// Token: 0x0200241B RID: 9243
[Token(Token = "0x200241B")]
[StructLayout(3)]
public class VoiceAudioRolloffZone : MonoBehaviour
{
// Token: 0x06010022 RID: 65570 RVA: 0x003BF520 File Offset: 0x003BD720
[Token(Token = "0x6010022")]
[Address(RVA = "0x12B1680", Offset = "0x12B0080", VA = "0x1812B1680")]
private void Start()
{
Action<float> action = new Action(this.IONJHHDNPEB);
IDisposable disposable = ScheduledUpdateMonoBehaviourExtensions.Update1hz(this, action);
}
// Token: 0x06010023 RID: 65571 RVA: 0x003BF544 File Offset: 0x003BD744
[Token(Token = "0x6010023")]
[Address(RVA = "0x12B13E0", Offset = "0x12AFDE0", VA = "0x1812B13E0")]
private void IONJHHDNPEB(float POGAEJIEPIM)
{
this.OBPJJDOEGAJ();
}
// Token: 0x06010024 RID: 65572 RVA: 0x003BF558 File Offset: 0x003BD758
[Token(Token = "0x6010024")]
[Address(RVA = "0x12B13F0", Offset = "0x12AFDF0", VA = "0x1812B13F0")]
private void OBPJJDOEGAJ()
{
int num;
do
{
num = 0;
if (!SingletonMonoBehaviour.IsInitialized)
{
break;
}
List<Player> all = Player.All;
List.Enumerator enumerator;
if (enumerator != 0)
{
bool flag;
while (flag)
{
}
if (this.zoneVolume.DOMABBDEAKJ == 0)
{
}
AudioRolloff audioRolloff = this.rolloff;
}
if (num != -1)
{
}
}
while (num != 0);
}
// Token: 0x06010025 RID: 65573 RVA: 0x003BF5C0 File Offset: 0x003BD7C0
[Token(Token = "0x6010025")]
[Address(RVA = "0x3C1210", Offset = "0x3BFC10", VA = "0x1803C1210")]
public VoiceAudioRolloffZone()
{
}
// Token: 0x0400AA09 RID: 43529
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400AA09")]
[SerializeField]
private AudioRolloff rolloff;
// Token: 0x0400AA0A RID: 43530
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400AA0A")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)]
private SimpleVolume zoneVolume;
}
}