Files
2026-04-10 22:50:51 +02:00

448 lines
14 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;
// Token: 0x020001EA RID: 490
[Token(Token = "0x20001EA")]
public class CollisionAudio : MonoBehaviour
{
// Token: 0x1700024B RID: 587
// (get) Token: 0x06000F6E RID: 3950 RVA: 0x000437E8 File Offset: 0x000419E8
// (set) Token: 0x06000F6F RID: 3951 RVA: 0x000437FC File Offset: 0x000419FC
[Token(Token = "0x1700024B")]
public bool KHMAFBIKIMA
{
[Token(Token = "0x6000F6E")]
[Address(RVA = "0xAF8AC0", Offset = "0xAF78C0", VA = "0x180AF8AC0")]
get;
[Token(Token = "0x6000F6F")]
[Address(RVA = "0xAF8100", Offset = "0xAF6F00", VA = "0x180AF8100")]
set;
}
// Token: 0x06000F70 RID: 3952 RVA: 0x00043810 File Offset: 0x00041A10
[Token(Token = "0x6000F70")]
[Address(RVA = "0x146C300", Offset = "0x146B100", VA = "0x18146C300")]
private IEnumerator Start()
{
/*
An exception occurred when decompiling this method (06000F70)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator CollisionAudio::Start()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
call:void(EADCNFKALAA::System.IDisposable.Dispose, ldloc:EADCNFKALAA(var_0))
stfld:int32(EADCNFKALAA::<>1__state, ldloc:EADCNFKALAA(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0)))
stfld:CollisionAudio(EADCNFKALAA::<>4__this, ldloc:EADCNFKALAA(var_0), ldloc:CollisionAudio(this))
}
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: 0x06000F71 RID: 3953 RVA: 0x00043834 File Offset: 0x00041A34
[Token(Token = "0x6000F71")]
[Address(RVA = "0x146C230", Offset = "0x146B030", VA = "0x18146C230")]
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: 0x06000F72 RID: 3954 RVA: 0x00043880 File Offset: 0x00041A80
[Token(Token = "0x6000F72")]
[Address(RVA = "0x146C150", Offset = "0x146AF50", VA = "0x18146C150")]
private void OnDisable()
{
MeleeWeaponCollider[] array = this.meleeWeaponColliders;
int num = 0;
this.ELCODMMONJB = true;
int length = array.Length;
if (num < length)
{
MeleeWeaponCollider meleeWeaponCollider = array[num];
MeleeWeaponCollider.MMFFGBGIAAD mmffgbgiaad = new MeleeWeaponCollider.MMFFGBGIAAD(this.DHOMIDPOPJB);
meleeWeaponCollider.HJKPKBBLGOJ -= mmffgbgiaad;
num++;
}
}
// Token: 0x06000F73 RID: 3955 RVA: 0x000438D0 File Offset: 0x00041AD0
[Token(Token = "0x6000F73")]
[Address(RVA = "0x146BFA0", Offset = "0x146ADA0", VA = "0x18146BFA0")]
private void OnCollisionEnter(Collision GBJHLKOJGPB)
{
if (this.ELCODMMONJB && GBJHLKOJGPB.contacts.Length != 0)
{
GameObject gameObject = GBJHLKOJGPB.collider.gameObject;
ContactPoint[] contacts = GBJHLKOJGPB.contacts;
ContactPoint[] contacts2 = GBJHLKOJGPB.contacts;
Vector3 vector;
float z = vector.z;
}
}
// Token: 0x06000F74 RID: 3956 RVA: 0x0004391C File Offset: 0x00041B1C
[Token(Token = "0x6000F74")]
[Address(RVA = "0x146B7E0", Offset = "0x146A5E0", VA = "0x18146B7E0")]
private void DHOMIDPOPJB(MeleeWeaponCollider BCFFGDFHJMK, GHMDIDJLFMC KNLMJBAKCGF)
{
}
// Token: 0x06000F75 RID: 3957 RVA: 0x0004392C File Offset: 0x00041B2C
[Token(Token = "0x6000F75")]
[Address(RVA = "0x146B880", Offset = "0x146A680", VA = "0x18146B880")]
private void JJALMFBIPKL(GameObject PGPKHKFMPLD, Vector3 BEOPNIAIJOM, Vector3 CPINMDMJAMO, Vector3 GJFAEGPLDAB)
{
int i;
CollisionAudio.AudioClipsToLayer audioClipsToLayer;
float num3;
float num5;
for (;;)
{
i = 0;
if ((this.ELCODMMONJB ? 1 : 0) == i || (this.<KLDEOGDLANE>k__BackingField ? 1 : 0) != i)
{
break;
}
List<CollisionAudio.PGCONDHMCGB> jlgaahnomjm = this.JLGAAHNOMJM;
bool flag;
if (flag)
{
bool flag2;
while (!flag2)
{
}
}
int num = 0;
if (i == 0)
{
if (i != 0)
{
float time = Time.time;
float time2 = Time.time;
if (num == 0)
{
break;
}
}
else
{
CollisionAudio.PGCONDHMCGB pgcondhmcgb = new CollisionAudio.PGCONDHMCGB();
pgcondhmcgb.FKJEIHGOADP = PGPKHKFMPLD;
float time3 = Time.time;
pgcondhmcgb.IGJBBOHEJHL = time3;
this.JLGAAHNOMJM.Add(pgcondhmcgb);
}
CollisionAudio.AudioClipsToLayer[] array = this.audioMappings;
int length = array.Length;
while (i >= length)
{
}
audioClipsToLayer = array[i];
int layer = PGPKHKFMPLD.layer;
if (audioClipsToLayer.<LastInstanceTime>k__BackingField == 0)
{
goto IL_C6;
}
int num2 = 0;
num3 = Time.time;
if (audioClipsToLayer.<LastInstanceTime>k__BackingField != 0)
{
}
if (i != num2)
{
goto IL_C6;
}
goto IL_EC;
IL_F0:
AnimationCurve velocityToVolumeCurve = audioClipsToLayer.velocityToVolumeCurve;
float num4;
if (velocityToVolumeCurve != 0 && velocityToVolumeCurve.length > 0)
{
AnimationCurve velocityToVolumeCurve2 = audioClipsToLayer.velocityToVolumeCurve;
num3 = Mathf.Clamp01(num3);
num4 = velocityToVolumeCurve2.Evaluate(num3);
}
num4 = num5;
num5 = Mathf.Clamp01(num4);
CollisionAudio.AudioClipsToLayer.OBGJJILEJMI type = audioClipsToLayer.Type;
if (type == CollisionAudio.AudioClipsToLayer.OBGJJILEJMI.SFX3D)
{
goto IL_1B8;
}
if (type == CollisionAudio.AudioClipsToLayer.OBGJJILEJMI.SFX3D)
{
goto IL_19A;
}
while (type != CollisionAudio.AudioClipsToLayer.OBGJJILEJMI.SFX2D)
{
}
if (SingletonMonoBehaviour.FFNIFALJLDD)
{
goto Block_12;
}
continue;
IL_C6:
uint num6;
if (num6 != (uint)i)
{
string tag = audioClipsToLayer.Tag;
if (i != 0)
{
goto IL_F0;
}
string tag2 = audioClipsToLayer.Tag;
if (PGPKHKFMPLD.CompareTag(tag2))
{
goto IL_F0;
}
}
IL_EC:
i++;
goto IL_F0;
}
}
return;
Block_12:
bool isPlayingVO = SingletonMonoBehaviour.ONCPNMDGGKG.FMHMDIFGABF;
while (isPlayingVO)
{
}
if (isPlayingVO)
{
string name = audioClipsToLayer.Name;
float num7;
CollisionAudio.AudioClipsToLayer.OBGJJILEJMI obgjjilejmi;
Debug.LogWarning(string.Format("Ignoring volume scale {0:N3}, since clip \"{1}\" is marked as {2}.", num7, name, obgjjilejmi), this);
}
TutorialManager instance = SingletonMonoBehaviour.ONCPNMDGGKG;
throw new MissingMethodException();
IL_19A:
RecRoomAudioClip[] clips = audioClipsToLayer.Clips;
int num8 = 0;
int num9 = 0;
SFXAudioSource sfxaudioSource = AudioManager.PlayRandom2DSFX(clips, num9 != 0, num5, num8);
IL_1B8:
RecRoomAudioClip[] clips2 = audioClipsToLayer.Clips;
if (!this.useCustomRolloff)
{
}
AudioRolloff audioRolloff = this.customRolloff;
int num10 = 0;
SFXAudioSource sfxaudioSource2 = AudioManager.PlayRandom3DSFX(clips2, num9, audioRolloff, num10 != 0, num5, i);
num3 = Time.time;
audioClipsToLayer.<LastInstanceTime>k__BackingField = sfxaudioSource2;
throw new NullReferenceException();
}
// Token: 0x06000F76 RID: 3958 RVA: 0x00043B40 File Offset: 0x00041D40
[Token(Token = "0x6000F76")]
[Address(RVA = "0x146C360", Offset = "0x146B160", VA = "0x18146C360")]
public CollisionAudio()
{
List<CollisionAudio.PGCONDHMCGB> list = new List();
this.JLGAAHNOMJM = list;
base..ctor();
}
// Token: 0x04000C45 RID: 3141
[Token(Token = "0x4000C45")]
private const float CBPIPLAFEIK = 25f;
// Token: 0x04000C46 RID: 3142
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4000C46")]
private float KDHLFJAAMFJ = 0.1f;
// Token: 0x04000C47 RID: 3143
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4000C47")]
[SerializeField]
private CollisionAudio.AudioClipsToLayer[] audioMappings;
// Token: 0x04000C48 RID: 3144
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4000C48")]
[SerializeField]
private bool useCustomRolloff;
// Token: 0x04000C49 RID: 3145
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4000C49")]
[SerializeField]
private AudioRolloff customRolloff;
// Token: 0x04000C4A RID: 3146
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4000C4A")]
[SerializeField]
[Tooltip("MeleeWeaponColliders that can trigger the collision audio in addition to normal physics collisions.")]
private MeleeWeaponCollider[] meleeWeaponColliders;
// Token: 0x04000C4B RID: 3147
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4000C4B")]
private List<CollisionAudio.PGCONDHMCGB> JLGAAHNOMJM;
// Token: 0x04000C4C RID: 3148
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4000C4C")]
private bool ELCODMMONJB;
// Token: 0x020001EB RID: 491
[Token(Token = "0x20001EB")]
private class PGCONDHMCGB
{
// Token: 0x06000F77 RID: 3959 RVA: 0x00043B6C File Offset: 0x00041D6C
[Token(Token = "0x6000F77")]
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
public PGCONDHMCGB()
{
}
// Token: 0x04000C4E RID: 3150
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4000C4E")]
public GameObject FKJEIHGOADP;
// Token: 0x04000C4F RID: 3151
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4000C4F")]
public float IGJBBOHEJHL;
}
// Token: 0x020001EC RID: 492
[Token(Token = "0x20001EC")]
[Serializable]
public class AudioClipsToLayer
{
// Token: 0x1700024C RID: 588
// (get) Token: 0x06000F78 RID: 3960 RVA: 0x00043B80 File Offset: 0x00041D80
// (set) Token: 0x06000F79 RID: 3961 RVA: 0x00043B94 File Offset: 0x00041D94
[Token(Token = "0x1700024C")]
public float? LastInstanceTime
{
[Token(Token = "0x6000F78")]
[Address(RVA = "0x121CD90", Offset = "0x121BB90", VA = "0x18121CD90")]
get;
[Token(Token = "0x6000F79")]
[Address(RVA = "0x121CD70", Offset = "0x121BB70", VA = "0x18121CD70")]
set;
}
// Token: 0x06000F7A RID: 3962 RVA: 0x00043BA8 File Offset: 0x00041DA8
[Token(Token = "0x6000F7A")]
[Address(RVA = "0x145B6C0", Offset = "0x145A4C0", VA = "0x18145B6C0")]
public bool BOBJDACCBKO(GameObject NNNMGKGMIFG)
{
int layer = NNNMGKGMIFG.layer;
float? num = this.<LastInstanceTime>k__BackingField;
if (num != 0)
{
float time = Time.time;
float? num2 = this.<LastInstanceTime>k__BackingField;
int num3 = 0;
if (num2 != 0)
{
}
if (num3 == 0)
{
goto IL_57;
}
}
if ((uint)1 != num)
{
string tag = this.Tag;
if (num == 0)
{
string tag2 = this.Tag;
if (!NNNMGKGMIFG.CompareTag(tag2))
{
goto IL_57;
}
}
return true;
}
IL_57:
throw new NullReferenceException();
}
// Token: 0x06000F7B RID: 3963 RVA: 0x00043C14 File Offset: 0x00041E14
[Token(Token = "0x6000F7B")]
[Address(RVA = "0x145B7E0", Offset = "0x145A5E0", VA = "0x18145B7E0")]
public AudioClipsToLayer()
{
}
// Token: 0x04000C50 RID: 3152
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4000C50")]
public string Name;
// Token: 0x04000C51 RID: 3153
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4000C51")]
public CollisionAudio.AudioClipsToLayer.OBGJJILEJMI Type;
// Token: 0x04000C52 RID: 3154
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x4000C52")]
public LayerMask Layers;
// Token: 0x04000C53 RID: 3155
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4000C53")]
public string Tag = "";
// Token: 0x04000C54 RID: 3156
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4000C54")]
public AnimationCurve velocityToVolumeCurve;
// Token: 0x04000C55 RID: 3157
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4000C55")]
public RecRoomAudioClip[] Clips;
// Token: 0x04000C56 RID: 3158
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4000C56")]
[Tooltip("Per clip cooldown to limit the number of consecutive audios. Set it to 0 for most clips")]
public float InstanceLimitDuration;
// Token: 0x020001ED RID: 493
[Token(Token = "0x20001ED")]
public enum OBGJJILEJMI
{
// Token: 0x04000C59 RID: 3161
[Token(Token = "0x4000C59")]
SFX3D,
// Token: 0x04000C5A RID: 3162
[Token(Token = "0x4000C5A")]
SFX2D,
// Token: 0x04000C5B RID: 3163
[Token(Token = "0x4000C5B")]
TutorialVoiceOver
}
}
}