448 lines
14 KiB
C#
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
|
|
}
|
|
}
|
|
}
|