Decompiled source of GenshinImpactOverhaul v1.6.0

GenshinImpactOverhaul.dll

Decompiled 2 months ago
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using System.Text;
using BepInEx;
using BepInEx.Configuration;
using BepInEx.Logging;
using HarmonyLib;
using ModelReplacement.Monobehaviors.Enemies;
using UnityEngine;
using UnityEngine.VFX;
using UnityEngine.Video;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyTitle("GenshinImpactOverhaul")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("GenshinImpactOverhaul")]
[assembly: AssemblyCopyright("Copyright ©  2024")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("5695c7d4-518d-4a00-be27-60580d5b632c")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
[assembly: AssemblyVersion("1.0.0.0")]
namespace GenshinImpactOverhaul;

[BepInPlugin("GenshinImpactOverhaul", "GoblinKingShmeesGenshinOverhaul", "1.5.9")]
public class GenshinImpactOverhaul : BaseUnityPlugin
{
	public class FurinaWalkingIdle : MonoBehaviour
	{
		public SandSpiderAI spiderAI;

		public Vector3 prevPosition;

		public bool positionChanged = false;

		private Animator animator = ((Component)FurinaObject.transform).GetComponent<Animator>();

		private void Update()
		{
			//IL_000c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_0074: Unknown result type (might be due to invalid IL or missing references)
			//IL_0079: Unknown result type (might be due to invalid IL or missing references)
			if (((Component)spiderAI).transform.position != prevPosition)
			{
				positionChanged = true;
			}
			else
			{
				positionChanged = false;
			}
			if (positionChanged)
			{
				animator.SetBool("isMoving", true);
			}
			else
			{
				animator.SetBool("isMoving", false);
			}
			prevPosition = ((Component)spiderAI).transform.position;
		}
	}

	public class NilouFacingDirection : MonoBehaviour
	{
		public BlobAI blobAI;

		public Vector3 prevPosition;

		private void Update()
		{
			//IL_000c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_0017: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0029: Unknown result type (might be due to invalid IL or missing references)
			//IL_002a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0078: Unknown result type (might be due to invalid IL or missing references)
			//IL_007d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0039: Unknown result type (might be due to invalid IL or missing references)
			//IL_003a: Unknown result type (might be due to invalid IL or missing references)
			//IL_003f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0064: Unknown result type (might be due to invalid IL or missing references)
			Vector3 val = ((Component)blobAI).transform.position - prevPosition;
			val.y = 0f;
			if (val != Vector3.zero)
			{
				Quaternion rotation = Quaternion.LookRotation(val);
				((Component)((Component)blobAI).transform.Find("ScanNode (1)").Find("Nilou(Clone)")).transform.rotation = rotation;
			}
			prevPosition = ((Component)blobAI).transform.position;
		}
	}

	public class VentiFlyDirection : MonoBehaviour
	{
		public DoublewingAI doublewingAI;

		public Vector3 prevPosition;

		private void Update()
		{
			//IL_000c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_0017: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0029: Unknown result type (might be due to invalid IL or missing references)
			//IL_002a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0078: Unknown result type (might be due to invalid IL or missing references)
			//IL_007d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0039: Unknown result type (might be due to invalid IL or missing references)
			//IL_003a: Unknown result type (might be due to invalid IL or missing references)
			//IL_003f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0064: Unknown result type (might be due to invalid IL or missing references)
			Vector3 val = ((Component)doublewingAI).transform.position - prevPosition;
			val.y = 0f;
			if (val != Vector3.zero)
			{
				Quaternion rotation = Quaternion.LookRotation(val);
				((Component)((Component)doublewingAI).transform.Find("DoublewingModel").Find("Venti(Clone)")).transform.rotation = rotation;
			}
			prevPosition = ((Component)doublewingAI).transform.position;
		}
	}

	public class PenguinFacingDirection : MonoBehaviour
	{
		public ButlerBeesEnemyAI butlerBeesEnemyAI;

		public Vector3 prevPosition;

		private void Update()
		{
			//IL_000c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_0017: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0029: Unknown result type (might be due to invalid IL or missing references)
			//IL_002a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0078: Unknown result type (might be due to invalid IL or missing references)
			//IL_007d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0039: Unknown result type (might be due to invalid IL or missing references)
			//IL_003a: Unknown result type (might be due to invalid IL or missing references)
			//IL_003f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0064: Unknown result type (might be due to invalid IL or missing references)
			Vector3 val = ((Component)butlerBeesEnemyAI).transform.position - prevPosition;
			val.y = 0f;
			if (val != Vector3.zero)
			{
				Quaternion rotation = Quaternion.LookRotation(val);
				((Component)((Component)butlerBeesEnemyAI).transform.Find("ScanNode").Find("Penguin(Clone)")).transform.rotation = rotation;
			}
			prevPosition = ((Component)butlerBeesEnemyAI).transform.position;
		}
	}

	public class RadMechNestModifier : MonoBehaviour
	{
		private string targetObjectName = "RadMechNestSpawnObject(Clone)";

		private string targetObjectDeletion = "RuinEepy(Clone)";

		public GameObject ruinSpawnPrefab;

		private float updateInterval = 8f;

		private int roomLayer;

		private void Start()
		{
			roomLayer = LayerMask.NameToLayer("Room");
			((MonoBehaviour)this).StartCoroutine(UpdateAtIntervals());
		}

		private IEnumerator UpdateAtIntervals()
		{
			while (true)
			{
				ModifyRadMechNestObjects();
				yield return (object)new WaitForSeconds(updateInterval);
			}
		}

		private void ModifyRadMechNestObjects()
		{
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: Expected O, but got Unknown
			//IL_0118: Unknown result type (might be due to invalid IL or missing references)
			//IL_011f: Expected O, but got Unknown
			//IL_0234: Unknown result type (might be due to invalid IL or missing references)
			GameObject[] array = Object.FindObjectsOfType<GameObject>();
			GameObject[] array2 = array;
			foreach (GameObject val in array2)
			{
				if (val.layer == roomLayer && ((Object)val).name == targetObjectName)
				{
					bool flag = false;
					foreach (Transform item in val.transform)
					{
						Transform val2 = item;
						if (((Object)val2).name == "RuinEepy")
						{
							flag = true;
							break;
						}
					}
					if (!flag && (Object)(object)ruinSpawnPrefab != (Object)null)
					{
						GameObject val3 = Object.Instantiate<GameObject>(ruinSpawnPrefab, val.transform);
						((Object)val3).name = ((Object)ruinSpawnPrefab).name;
					}
					Transform val4 = val.transform.Find("MeshContainer/Colliders (1)");
					if ((Object)(object)val4 != (Object)null)
					{
						foreach (Transform item2 in val4)
						{
							Transform val5 = item2;
							BoxCollider component = ((Component)val5).GetComponent<BoxCollider>();
							if ((Object)(object)component != (Object)null)
							{
								((Collider)component).enabled = false;
							}
						}
					}
					Transform val6 = val.transform.Find("MeshContainer/Body");
					if ((Object)(object)val6 != (Object)null)
					{
						SkinnedMeshRenderer component2 = ((Component)val6).GetComponent<SkinnedMeshRenderer>();
						if ((Object)(object)component2 != (Object)null)
						{
							((Renderer)component2).enabled = false;
						}
					}
					Transform val7 = val.transform.Find("MeshContainer/ScanNode (1)");
					if ((Object)(object)val7 != (Object)null)
					{
						ScanNodeProperties component3 = ((Component)val7).GetComponent<ScanNodeProperties>();
						if ((Object)(object)component3 != (Object)null)
						{
							component3.headerText = "Ruin Guard";
							Transform val8 = val.transform.Find("RuinEepy/Armature.001/全ての親/Root");
							if ((Object)(object)val8 != (Object)null)
							{
								((Component)component3).transform.SetParent(val8);
								((Component)component3).transform.localPosition = new Vector3(0f, 0.1f, 0f);
							}
						}
					}
				}
				if (((Object)val).name == targetObjectDeletion)
				{
					Object.Destroy((Object)(object)val);
				}
			}
		}
	}

	public class RadMechNestHandler : MonoBehaviour
	{
		public GameObject ruinSpawnPrefab;

		private void Awake()
		{
			RadMechNestModifier radMechNestModifier = ((Component)this).gameObject.AddComponent<RadMechNestModifier>();
			radMechNestModifier.ruinSpawnPrefab = RuinSpawnPrefab;
		}
	}

	public class AndriusVehicleHandler : MonoBehaviour
	{
		public VehicleController vehicle;

		public Animator andriusAnimator;

		private Transform windWiper;

		private Quaternion previousRotation;

		private Vector3 previousPosition;

		private bool wagging;

		private void Start()
		{
			//IL_0041: Unknown result type (might be due to invalid IL or missing references)
			//IL_0046: Unknown result type (might be due to invalid IL or missing references)
			//IL_0057: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			windWiper = ((Component)vehicle).transform.Find("Meshes").Find("Windwipers").Find("WindwipersAnim")
				.Find("Cube.001");
			previousRotation = windWiper.rotation;
			previousPosition = ((Component)vehicle).transform.position;
		}

		private void Update()
		{
			//IL_0007: Unknown result type (might be due to invalid IL or missing references)
			//IL_000d: Unknown result type (might be due to invalid IL or missing references)
			//IL_006d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0072: Unknown result type (might be due to invalid IL or missing references)
			//IL_0082: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0096: Unknown result type (might be due to invalid IL or missing references)
			//IL_0097: Unknown result type (might be due to invalid IL or missing references)
			if (windWiper.rotation != previousRotation && !vehicle.carDestroyed)
			{
				wagging = true;
				andriusAnimator.SetBool("wagging", true);
			}
			else
			{
				wagging = false;
				andriusAnimator.SetBool("wagging", false);
			}
			previousRotation = windWiper.rotation;
			Vector3 position = ((Component)vehicle).transform.position;
			float num = Vector3.Distance(position, previousPosition);
			previousPosition = position;
			if (vehicle.gearStickAnimValue != 1f)
			{
				andriusAnimator.SetBool("moving", true);
			}
			if (vehicle.gearStickAnimValue == 1f)
			{
				andriusAnimator.SetBool("moving", false);
			}
			if (vehicle.ignitionStarted)
			{
				andriusAnimator.SetBool("poweredOn", true);
			}
			if (!vehicle.ignitionStarted)
			{
				andriusAnimator.SetBool("poweredOn", false);
			}
			if (vehicle.honkingHorn)
			{
				andriusAnimator.SetBool("howling", true);
			}
			if (!vehicle.honkingHorn)
			{
				andriusAnimator.SetBool("howling", false);
			}
			if (vehicle.carDestroyed)
			{
				andriusAnimator.SetBool("dead", true);
			}
			if (!vehicle.carDestroyed)
			{
				andriusAnimator.SetBool("dead", false);
			}
		}
	}

	public class HeadTracking : MonoBehaviour
	{
		public Transform headBone;

		private StartOfRound startOfRound;

		public Transform target;

		public float rotationSpeed = 2f;

		public Vector3 headOffset;

		public float maxDistance = 10f;

		public float fieldOfView = 90f;

		private GameObject[] allPlayers;

		private void Start()
		{
			startOfRound = Object.FindObjectOfType<StartOfRound>();
			allPlayers = startOfRound.allPlayerObjects;
		}

		private void Update()
		{
			//IL_0038: Unknown result type (might be due to invalid IL or missing references)
			//IL_003e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0043: Unknown result type (might be due to invalid IL or missing references)
			//IL_004e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0053: Unknown result type (might be due to invalid IL or missing references)
			//IL_0058: Unknown result type (might be due to invalid IL or missing references)
			//IL_0078: Unknown result type (might be due to invalid IL or missing references)
			//IL_007d: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c6: Unknown result type (might be due to invalid IL or missing references)
			target = FindClosestPlayer();
			if (!((Object)(object)target != (Object)null) || !((Object)(object)headBone != (Object)null))
			{
				return;
			}
			Vector3 val = target.position + headOffset - headBone.position;
			float magnitude = ((Vector3)(ref val)).magnitude;
			if (magnitude <= maxDistance)
			{
				float num = Vector3.Angle(headBone.forward, val);
				if (num <= fieldOfView / 2f)
				{
					Quaternion val2 = Quaternion.LookRotation(val);
					headBone.rotation = Quaternion.Slerp(headBone.rotation, val2, rotationSpeed * Time.deltaTime);
				}
			}
		}

		private Transform FindClosestPlayer()
		{
			//IL_0032: Unknown result type (might be due to invalid IL or missing references)
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			GameObject val = null;
			float num = maxDistance;
			GameObject[] array = allPlayers;
			foreach (GameObject val2 in array)
			{
				if ((Object)(object)val2 != (Object)null)
				{
					float num2 = Vector3.Distance(val2.transform.position, headBone.position);
					if (num2 < num)
					{
						num = num2;
						val = val2;
					}
				}
			}
			return ((Object)(object)val != (Object)null) ? val.transform : null;
		}
	}

	private static Dictionary<Turret, Transform> turretDictionary = new Dictionary<Turret, Transform>();

	private readonly Harmony harmony = new Harmony("GenshinOverhaul");

	private static GenshinImpactOverhaul Instance;

	public static ManualLogSource mls;

	public string targetSceneName = "HideAndDontSave";

	private static bool animationTriggered = false;

	private static AudioClip lastClip = null;

	public static Texture MikaTexture;

	public static GameObject Web1;

	public static GameObject Web2;

	public static GameObject Web3;

	public static GameObject PepperBush;

	public static GameObject MeteorPrefab;

	public static GameObject MeteorObject;

	public static GameObject[] webObjects;

	public static GameObject AlbedoPrefab;

	public static GameObject AlbedoObject;

	public static GameObject AmberPrefab;

	public static GameObject AmberObject;

	public static GameObject AndriusPrefab;

	public static GameObject AndriusObject;

	public static GameObject BaronBunnyPrefab;

	public static GameObject BaronBunnyObject;

	public static GameObject BennettPrefab;

	public static GameObject BennettObject;

	public static GameObject ChevPrefab;

	public static GameObject ChevObject;

	public static GameObject ChevGunPrefab;

	public static GameObject ChevGunObject;

	public static GameObject ChildePrefab;

	public static GameObject ChildeObject;

	public static GameObject ChildeSmoke;

	public static GameObject ChioriPrefab;

	public static GameObject ChioriObject;

	public static GameObject DoriPrefab;

	public static GameObject DoriObject;

	public static GameObject FanPrefab;

	public static GameObject FanObject;

	public static GameObject FurinaPrefab;

	public static GameObject FurinaObject;

	public static GameObject FremPrefab;

	public static GameObject FremObject;

	public static GameObject FungiPrefab;

	public static GameObject FungiObject;

	public static GameObject EGnosisPrefab;

	public static GameObject EGnosisObject;

	public static GameObject PenguinPrefab;

	public static GameObject PenguinObject;

	public static GameObject OzPrefab;

	public static GameObject OzObject;

	public static GameObject IttoPrefab;

	public static GameObject IttoObject;

	public static GameObject KazuhaPrefab;

	public static GameObject KazuhaObject;

	public static GameObject KleePrefab;

	public static GameObject KleeObject;

	public static GameObject MissHinaPrefab;

	public static GameObject MissHinaObject;

	public static GameObject MoraPrefab;

	public static GameObject MoraObject;

	public static GameObject NaviaPrefab;

	public static GameObject NaviaObject;

	public static GameObject NeuvPrefab;

	public static GameObject NeuvObject;

	public static GameObject NilouPrefab;

	public static GameObject NilouObject;

	public static GameObject OnikaPrefab;

	public static GameObject OnikaObject;

	public static GameObject PaimonPrefab;

	public static GameObject PaimonObject;

	public static GameObject QiqiPrefab;

	public static GameObject QiqiObject;

	public static GameObject RaidenPrefab;

	public static GameObject RaidenObject;

	public static GameObject RaidenDollPrefab;

	public static GameObject RaidenDollObject;

	public static GameObject RazorPrefab;

	public static GameObject RazorObject;

	public static GameObject RuinGuardPrefab;

	public static GameObject RuinGuardObject;

	public static GameObject ScaraPrefab;

	public static GameObject ScaraObject;

	public static GameObject StatuePrefab;

	public static GameObject StatueObject;

	public static GameObject VentiPrefab;

	public static GameObject VentiObject;

	public static GameObject WrisPrefab;

	public static GameObject WrisObject;

	public static GameObject XianglingPrefab;

	public static GameObject XianglingObject;

	public static GameObject GuobaPrefab;

	public static GameObject GuobaObject;

	public static GameObject XiaoObject;

	public static GameObject XiaoPrefab;

	public static GameObject YaoyaoPrefab;

	public static GameObject YaoyaoObject;

	public static GameObject ZhongliPrefab;

	public static GameObject ZhongliObject;

	public static GameObject RuinSpawnPrefab;

	public static GameObject RuinSpawnObject;

	public static GameObject HammerPrefab;

	public static GameObject HammerObject;

	public static GameObject ShieldPrefab;

	public static GameObject ShieldObject;

	public static GameObject GobletPrefab;

	public static GameObject GobletObject;

	public static GameObject SlimePrefab;

	public static GameObject SlimeObject;

	public static GameObject PipePrefab;

	public static GameObject PipeObject;

	public static GameObject PopsiclePrefab;

	public static GameObject PopsicleObject;

	public static GameObject BoxPrefab;

	public static GameObject BoxObject;

	public static GameObject CombPrefab;

	public static GameObject CombObject;

	public static GameObject GoheiPrefab;

	public static GameObject GoheiObject;

	public static GameObject KeychainPrefab;

	public static GameObject KeychainObject;

	public static GameObject ScalePrefab;

	public static GameObject ScaleObject;

	public static GameObject TeaPrefab;

	public static GameObject TeaObject;

	public static GameObject YueguiPrefab;

	public static GameObject YueguiObject;

	public static GameObject TerminalPrefab;

	public static GameObject TerminalObject;

	public static GameObject DicePrefab;

	public static GameObject DiceObject;

	public static GameObject ShirouPrefab;

	public static GameObject ShirouObject;

	public static GameObject MakeupPrefab;

	public static GameObject MakeupObject;

	public static GameObject HandPrefab;

	public static GameObject HandObject;

	public static GameObject LampPrefab;

	public static GameObject LampObject;

	public static GameObject DarumaPrefab;

	public static GameObject DarumaObject;

	public static GameObject BombPrefab;

	public static GameObject BombObject;

	public static GameObject AxePrefab;

	public static GameObject AxeObject;

	public static GameObject ClubPrefab;

	public static GameObject ClubObject;

	public static GameObject PillPrefab;

	public static GameObject PillObject;

	public static GameObject SnacksPrefab;

	public static GameObject SnacksObject;

	public static GameObject CameraPrefab;

	public static GameObject CameraObject;

	public static GameObject ToyPrefab;

	public static GameObject ToyObject;

	public static GameObject SnakePrefab;

	public static GameObject SnakeObject;

	public static GameObject LyrePrefab;

	public static GameObject LyreObject;

	public static GameObject ScrollPrefab;

	public static GameObject ScrollObject;

	public static GameObject KFanPrefab;

	public static GameObject KFanObject;

	public static GameObject IceCharmPrefab;

	public static GameObject IceCharmObject;

	public static GameObject TearPrefab;

	public static GameObject TearObject;

	public static GameObject CritterPrefab;

	public static GameObject CritterObject;

	public static GameObject SeeliePrefab;

	public static GameObject SeelieObject;

	public static GameObject CatPrefab;

	public static GameObject CatObject;

	public static GameObject RuinToy;

	public static GameObject DMaskPrefab;

	public static GameObject DMaskObject;

	public static GameObject CMaskPrefab;

	public static GameObject CMaskObject;

	public static Sprite DebateSprite;

	public static Sprite VerdictSprite;

	public static Sprite HammerSprite;

	public static Sprite Transparent;

	public static Sprite BaronBunny;

	public static AssetBundle GenshinOverhaulAssetBundle;

	public static AudioClip soundSilence;

	public static AudioClip soundAlbedoCry1;

	public static AudioClip soundAlbedoCry2;

	public static AudioClip soundAlbedoCry3;

	public static AudioClip soundAlbedoCry4;

	public static AudioClip soundAlbedoMaskFaceLightUp;

	public static AudioClip soundAlbedoLaugh1;

	public static AudioClip soundAlbedoLaugh2;

	public static AudioClip soundAlbedoLaugh3;

	public static AudioClip soundAlbedoMaskPuke;

	public static AudioClip soundAlbedoDeath;

	public static AudioClip soundAlbedoHit;

	public static AudioClip soundAlbedoMaskAttackPlayer;

	public static AudioClip soundAmberCry;

	public static AudioClip soundAmberCryFake;

	public static AudioClip soundAmberEatScrap;

	public static AudioClip soundAmberPuke;

	public static AudioClip soundAmberSquirm;

	public static AudioClip soundAmberTransformation;

	public static AudioClip soundAmberDeath;

	public static AudioClip soundAmberGrowl;

	public static AudioClip soundAmberClick1;

	public static AudioClip soundAmberClick2;

	public static AudioClip soundAmberCooldown;

	public static AudioClip soundAmberLeap;

	public static AudioClip soundAndriusHorn;

	public static AudioClip soundAndriusRadio1;

	public static AudioClip soundAndriusRadio2;

	public static AudioClip soundAndriusRadio3;

	public static AudioClip soundAndriusRadio4;

	public static AudioClip soundAndriusEngineRev;

	public static AudioClip soundAndriusEngineRun;

	public static AudioClip soundAndriusEngineRun2;

	public static AudioClip soundAndriusEngineStart;

	public static AudioClip soundAndriusHeadlights;

	public static AudioClip soundAndriusGrowl3;

	public static AudioClip soundAndriusMaxCollision1;

	public static AudioClip soundAndriusMaxCollision2;

	public static AudioClip soundAndriusMedCollision1;

	public static AudioClip soundAndriusMedCollision2;

	public static AudioClip soundAndriusMedCollision3;

	public static AudioClip soundAndriusMinCollision1;

	public static AudioClip soundAndriusMinCollision2;

	public static AudioClip soundAndriusHitObstacle1;

	public static AudioClip soundAndriusHitObstacle2;

	public static AudioClip soundAndriusHitObstacle3;

	public static AudioClip soundAndriusExhale;

	public static AudioClip soundAndriusPush;

	public static AudioClip soundAndriusTwistKey;

	public static AudioClip soundAndriusRevEngine;

	public static AudioClip soundAndriusRolling;

	public static AudioClip soundAndriusTireSkid;

	public static AudioClip soundAndriusShatter;

	public static AudioClip soundAndriusTurb;

	public static AudioClip soundBennettBeep;

	public static AudioClip soundBennettTrigger;

	public static AudioClip soundBennettPressLandmine;

	public static AudioClip BennetNoise;

	public static AudioClip soundOzHello;

	public static AudioClip soundChevShotgunReloadNutcracker;

	public static AudioClip soundChevNutcrackerHitEye;

	public static AudioClip soundChevNutcrackerAngry;

	public static AudioClip soundChevNutcrackerDie;

	public static AudioClip soundChevNutcrackerTurn;

	public static AudioClip soundChevKick;

	public static AudioClip soundChevStopTurning1;

	public static AudioClip soundChevStopTurning2;

	public static AudioClip soundChevStopTurning3;

	public static AudioClip soundChevAlert;

	public static AudioClip soundChevHitMetal;

	public static AudioClip soundChildeFrighten1;

	public static AudioClip soundChildeFrighten3;

	public static AudioClip soundChildeNervous;

	public static AudioClip soundChildeRattleTail;

	public static AudioClip soundChildePuffSFX;

	public static AudioClip soundChildeBite;

	public static AudioClip soundChildeStomp;

	public static AudioClip soundChildeAngry;

	public static AudioClip soundChioriHit;

	public static AudioClip soundChioriMarch1;

	public static AudioClip soundChioriMarch2;

	public static AudioClip soundChioriMarch3;

	public static AudioClip soundChioriMarch4;

	public static AudioClip soundChioriMarch5;

	public static AudioClip soundChioriSnareDrum;

	public static AudioClip soundChioriSnip;

	public static AudioClip soundDoriAngry1;

	public static AudioClip soundDoriAngry2;

	public static AudioClip soundDoriChitter1;

	public static AudioClip soundDoriChitter2;

	public static AudioClip soundDoriChitter3;

	public static AudioClip soundDoriCry;

	public static AudioClip soundDoriFly;

	public static AudioClip soundDoriDie;

	public static AudioClip soundFremBalloonsTowerDefenseSix;

	public static AudioClip soundFremBuzzingAmbience;

	public static AudioClip soundFremIdleAmbience;

	public static AudioClip soundFremMurderTheme;

	public static AudioClip soundFremPersWalking;

	public static AudioClip soundFremPullKnife;

	public static AudioClip soundFremHit;

	public static AudioClip soundFremSweep1;

	public static AudioClip soundFremSweep2;

	public static AudioClip soundFremSweep3;

	public static AudioClip soundFremSweep4;

	public static AudioClip soundFurinaStunSpider;

	public static AudioClip soundFurinaSpiderAttack;

	public static AudioClip soundFurinaSpiderDie;

	public static AudioClip soundFurinaSpiderHit;

	public static AudioClip soundFurinaWalk;

	public static AudioClip soundFurinaSpoolPlayerInWeb;

	public static AudioClip soundFurinaHang;

	public static AudioClip soundFurinaJaja;

	public static AudioClip soundRuinQuiet;

	public static AudioClip soundGenshinLoudhorn;

	public static AudioClip soundGenshinLoudhornDistant;

	public static AudioClip soundGenshinMenu;

	public static AudioClip soundGenshinHighAction1;

	public static AudioClip soundGenshinHighAction2;

	public static AudioClip soundGenshinLowAction;

	public static AudioClip soundGenshinCompanyBuildingMusic1;

	public static AudioClip soundGenshinAmbientMusic1;

	public static AudioClip soundGenshinAmbientMusic2;

	public static AudioClip soundGenshinAmbientMusic3;

	public static AudioClip soundGenshinAmbientMusic5;

	public static AudioClip soundGenshinAmbientMusic6;

	public static AudioClip soundGenshinLateDay;

	public static AudioClip soundGenshinIntroSpeech;

	public static AudioClip soundGenshinMidDay;

	public static AudioClip soundGenshinStartOfDay;

	public static AudioClip soundGenshinNight;

	public static AudioClip soundGenshinDroning1;

	public static AudioClip soundGenshinDroning2;

	public static AudioClip soundGenshinClassical1;

	public static AudioClip soundGenshinBackgroundAmbience;

	public static AudioClip soundGenshinJazz;

	public static AudioClip soundGenshinIcecreamTruckV2;

	public static AudioClip soundGenshinIcecreamTruckFar;

	public static AudioClip soundGenshinEclipseAmbience;

	public static AudioClip soundGenshinPiano1;

	public static AudioClip soundIttoBaboonEnterFight;

	public static AudioClip soundIttoBaboonKill;

	public static AudioClip soundIttoBaboonStab;

	public static AudioClip soundIttoBaboonTakeDamage;

	public static AudioClip soundIttoKillBaboon;

	public static AudioClip soundIttoSqueak1;

	public static AudioClip soundIttoSqueak2;

	public static AudioClip soundIttoCaw1;

	public static AudioClip soundIttoCawScream1;

	public static AudioClip soundIttoCawScream2;

	public static AudioClip soundIttoCawScream3;

	public static AudioClip soundIttoCawScream4;

	public static AudioClip soundIttoCawScream5;

	public static AudioClip soundKazuhaLocusts;

	public static AudioClip soundKazuhaEvade;

	public static AudioClip soundGiantEatPlayer;

	public static AudioClip soundStunGiant;

	public static AudioClip soundKleeBurning;

	public static AudioClip soundKleeDeath;

	public static AudioClip soundKleeDistantRumble1;

	public static AudioClip soundKleeDistantRumble2;

	public static AudioClip soundKleeDistantRumble3;

	public static AudioClip soundNaviaTurretActivate;

	public static AudioClip soundNaviaTurretBeserkMode;

	public static AudioClip soundNaviaTurretDeactivate;

	public static AudioClip soundNaviaTurretFire;

	public static AudioClip soundNaviaTurretFireDistant;

	public static AudioClip soundNaviaTurretSeePlayer;

	public static AudioClip soundNeuvTurnCrank1;

	public static AudioClip soundNeuvTurnCrank2;

	public static AudioClip soundNeuvTurnCrank3;

	public static AudioClip soundNeuvScream1;

	public static AudioClip soundNeuvJackInTheBoxTheme;

	public static AudioClip soundNeuvPop1;

	public static AudioClip soundNeuvKillPlayer;

	public static AudioClip NilouHitSlime;

	public static AudioClip NilouEatPlayer;

	public static AudioClip NilouJiggleSFX;

	public static AudioClip NilouAngry;

	public static AudioClip NilouIdle;

	public static AudioClip soundPaimonClingToPlayer;

	public static AudioClip soundPaimonClingToPlayerLocal;

	public static AudioClip soundPaimonDeathShriek;

	public static AudioClip soundPaimonmonsterNoise;

	public static AudioClip soundPaimonmonsterNoise2;

	public static AudioClip soundPaimonmonsterNoiseB;

	public static AudioClip soundPaimonShriek1;

	public static AudioClip soundPaimonShriek2;

	public static AudioClip soundQiqiBellChimeAmbience;

	public static AudioClip soundQiqiLaugh1_0;

	public static AudioClip soundQiqiLaugh2;

	public static AudioClip soundQiqiBreath3;

	public static AudioClip soundQiqiBreathing;

	public static AudioClip soundQiqiLaugh;

	public static AudioClip soundQiqi2Laugh;

	public static AudioClip soundQiqiWheeze;

	public static AudioClip soundQiqiStepping1;

	public static AudioClip soundRaidenAngered;

	public static AudioClip soundRaidenCrackNeck;

	public static AudioClip soundRaidenFound1;

	public static AudioClip soundRaidenStunFlowerman;

	public static AudioClip soundRazorBitePlayer;

	public static AudioClip soundRazorShortRoar1;

	public static AudioClip soundRazorLongRoar1;

	public static AudioClip soundRazorLongRoar2;

	public static AudioClip soundRazorLongRoar3;

	public static AudioClip soundRazorRam1;

	public static AudioClip soundRazorRam2;

	public static AudioClip soundRazorRam3;

	public static AudioClip soundRazorCrawlerDie;

	public static AudioClip soundRazorEatMeat;

	public static AudioClip soundRazorHitCrawler1;

	public static AudioClip soundRazorHitCrawler2;

	public static AudioClip soundRazorStunCrawler;

	public static AudioClip soundRuinGuardBrainWash;

	public static AudioClip soundLaserNoise;

	public static AudioClip soundScaraBeeZap1;

	public static AudioClip soundScaraBeeZap2;

	public static AudioClip soundScaraBeeZap3;

	public static AudioClip soundScaraBeeZap4;

	public static AudioClip soundScaraBeeZap5;

	public static AudioClip soundScaraBeeZap6;

	public static AudioClip soundScaraBeeZapConstant;

	public static AudioClip soundScaraBeesDefensive;

	public static AudioClip soundScaraBeeHiveIdle;

	public static AudioClip soundScaraBeesAngry;

	public static AudioClip soundVentiStunDoublewing;

	public static AudioClip soundVentiDoublewingFlap1;

	public static AudioClip soundVentiDoublewingFlap2;

	public static AudioClip soundVentiDoublewingFlap3;

	public static AudioClip soundVentiDoublewingFlapConstant;

	public static AudioClip soundVentiKillDoublewing;

	public static AudioClip soundVentiBird1;

	public static AudioClip soundVentiBird2;

	public static AudioClip soundVentiBird3;

	public static AudioClip soundVentiBirdScreech1;

	public static AudioClip soundVentiBirdScreech2;

	public static AudioClip soundWrisStunDog;

	public static AudioClip soundWrisBreathe1;

	public static AudioClip soundWrisgrowl;

	public static AudioClip soundWrisKillPlayer;

	public static AudioClip soundWrisKillPlayer_0;

	public static AudioClip soundWrisLunge1;

	public static AudioClip soundWrisRoar_0;

	public static AudioClip soundWrisRoar;

	public static AudioClip soundXianglingHit;

	public static AudioClip soundXianglingCloseCall1;

	public static AudioClip soundXianglingCloseCall2;

	public static AudioClip soundXianglingFarCall1;

	public static AudioClip soundXianglingFarCall2;

	public static AudioClip soundXianglingGrowl1;

	public static AudioClip soundXianglingGrowl2;

	public static AudioClip soundXianglingGrowl3;

	public static AudioClip soundXianglingGrowl4;

	public static AudioClip soundXianglingKill;

	public static AudioClip soundXianglingShootTongue;

	public static AudioClip soundXianglingSnarl;

	public static AudioClip soundXianglingDie;

	public static AudioClip soundXianglingStun;

	public static AudioClip XiaoChuckle1;

	public static AudioClip XiaoChuckle3;

	public static AudioClip XiaoChuckle4;

	public static AudioClip XiaoChuckle5;

	public static AudioClip XiaoLeap1;

	public static AudioClip XiaoLeap2;

	public static AudioClip XiaoLeap3;

	public static AudioClip XiaoCling;

	public static AudioClip XiaoDeath;

	public static AudioClip soundYaoyaoSandWormRoar;

	public static AudioClip soundYaoyaoSandWormRoar2;

	public static AudioClip soundYaoyaoBurrowingGrowl1;

	public static AudioClip soundYaoyaoBurrowingRumble1;

	public static AudioClip soundYaoyaoBurrowingRumble2;

	public static AudioClip soundYaoyaoBurrowingRumble3;

	public static AudioClip soundYaoyaoBurrowingRumbleLoud1;

	public static AudioClip soundYaoyaoEmergeFromGround1;

	public static AudioClip soundZhongliSpring1;

	public static AudioClip soundZhongliSpring2;

	public static AudioClip soundZhongliSpring3;

	public static AudioClip soundZhongliSpringWobble1;

	public static AudioClip soundZhongliSpringWobble2;

	public static AudioClip soundZhongliKillPlayerSpring;

	public static AudioClip soundZhongliBareFootstep1;

	public static AudioClip soundZhongliBareFootstep2;

	public static AudioClip soundZhongliBareFootstep3;

	public static AudioClip soundZhongliBareFootstep4;

	public static AudioClip soundZhongliEnterCooldown;

	public static AudioClip soundZhongliLand;

	public static AudioClip soundZhongliFar;

	public static AudioClip soundZhongliNear;

	public static AudioClip soundZhongliWarning;

	public static AudioClip soundCameraFar;

	public static AudioClip soundCameraNear;

	public static AudioClip soundMeow;

	public static AudioClip soundDropCat;

	public static AudioClip soundLyreClose;

	public static AudioClip soundLyreFar;

	public static AudioClip soundSeelieNoise;

	public static AudioClip soundSnakeClose;

	public static AudioClip soundSnakeFar;

	public static AudioClip soundSnakeOi;

	public static AudioClip HandCreak;

	public static AudioClip HandSlam;

	public static Material chioriHair;

	public static Material chioriBody;

	public static Material chioriFace;

	public static TextAsset PaimonText;

	public static VideoClip PaimonVideo;

	public static TextAsset RaidenText;

	public static VideoClip RaidenVideo;

	public static TextAsset RazorText;

	public static VideoClip RazorVideo;

	public static TextAsset WrisText;

	public static VideoClip WrisVideo;

	public static TextAsset DoriText;

	public static VideoClip DoriVideo;

	public static TextAsset NilouText;

	public static VideoClip NilouVideo;

	public static TextAsset KleeText;

	public static VideoClip KleeVideo;

	public static TextAsset ZhongliText;

	public static VideoClip ZhongliVideo;

	public static TextAsset YaoyaoText;

	public static VideoClip YaoyaoVideo;

	public static TextAsset NeuvText;

	public static VideoClip NeuvVideo;

	public static TextAsset ChildeText;

	public static VideoClip ChildeVideo;

	public static TextAsset FurinaText;

	public static VideoClip FurinaVideo;

	public static TextAsset VentiText;

	public static VideoClip VentiVideo;

	public static TextAsset ScaraText;

	public static VideoClip ScaraVideo;

	public static TextAsset KazuhaText;

	public static VideoClip KazuhaVideo;

	public static TextAsset IttoText;

	public static VideoClip IttoVideo;

	public static TextAsset ChevText;

	public static VideoClip ChevVideo;

	public static TextAsset RuinGuardText;

	public static VideoClip RuinGuardVideo;

	public static TextAsset FremText;

	public static VideoClip FremVideo;

	public static TextAsset PersText;

	public static VideoClip PersVideo;

	public static TextAsset XiaoText;

	public static VideoClip XiaoVideo;

	public static TextAsset PepperText;

	public static VideoClip PepperVideo;

	public static TextAsset XiangText;

	public static VideoClip XiangVideo;

	public static TextAsset ChioriText;

	public static VideoClip ChioriVideo;

	public static TextAsset AmberText;

	public static VideoClip AmberVideo;

	public GameObject ruinSpawnPrefab;

	public static ConfigEntry<bool> AlbedoReplacement { get; private set; }

	public static ConfigEntry<bool> AmberReplacement { get; private set; }

	public static ConfigEntry<bool> AndriusReplacement { get; private set; }

	public static ConfigEntry<bool> BennettReplacement { get; private set; }

	public static ConfigEntry<bool> ChevReplacement { get; private set; }

	public static ConfigEntry<bool> ChildeReplacement { get; private set; }

	public static ConfigEntry<bool> ChioriReplacement { get; private set; }

	public static ConfigEntry<bool> DoriReplacement { get; private set; }

	public static ConfigEntry<bool> FurinaReplacement { get; private set; }

	public static ConfigEntry<bool> FreminetReplacement { get; private set; }

	public static ConfigEntry<bool> IttoReplacement { get; private set; }

	public static ConfigEntry<bool> KazuhaReplacement { get; private set; }

	public static ConfigEntry<bool> KleeReplacement { get; private set; }

	public static ConfigEntry<bool> NaviaReplacement { get; private set; }

	public static ConfigEntry<bool> NeuvReplacement { get; private set; }

	public static ConfigEntry<bool> NilouReplacement { get; private set; }

	public static ConfigEntry<bool> PaimonReplacement { get; private set; }

	public static ConfigEntry<bool> QiqiReplacement { get; private set; }

	public static ConfigEntry<bool> RaidenReplacement { get; private set; }

	public static ConfigEntry<bool> RaidenHandReplacement { get; private set; }

	public static ConfigEntry<bool> RazorReplacement { get; private set; }

	public static ConfigEntry<bool> RuinGuardReplacement { get; private set; }

	public static ConfigEntry<bool> ScaraReplacement { get; private set; }

	public static ConfigEntry<bool> VentiReplacement { get; private set; }

	public static ConfigEntry<bool> WrioReplacement { get; private set; }

	public static ConfigEntry<bool> XianglingReplacement { get; private set; }

	public static ConfigEntry<bool> XiaoReplacement { get; private set; }

	public static ConfigEntry<bool> YaoyaoReplacement { get; private set; }

	public static ConfigEntry<bool> ZhongliReplacement { get; private set; }

	public static ConfigEntry<bool> TerminalReplacement { get; private set; }

	public static ConfigEntry<bool> SoundsReplacement { get; private set; }

	public static ConfigEntry<float> ScrapReplacement { get; private set; }

	public static ConfigEntry<bool> PepperBushReplacement { get; private set; }

	public static ConfigEntry<bool> MeteorReplacement { get; private set; }

	private void Awake()
	{
		if ((Object)(object)Instance == (Object)null)
		{
			Instance = this;
		}
		mls = ((BaseUnityPlugin)this).Logger;
		mls.LogInfo((object)"--===GENSHIN IMPACT OVERHAUL LOADING===--");
		harmony.PatchAll(typeof(GenshinImpactOverhaul));
		string text = Path.Combine(Path.GetDirectoryName(((BaseUnityPlugin)this).Info.Location), "genshinoverhaul");
		mls.LogDebug((object)text);
		GenshinOverhaulAssetBundle = AssetBundle.LoadFromFile(text);
		if ((Object)(object)GenshinOverhaulAssetBundle == (Object)null)
		{
			mls.LogError((object)"COULD NOT FIND GENSHIN ASSETS");
		}
		AlbedoPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Albedo.prefab");
		AmberPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Amber.prefab");
		AndriusPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Andrius.prefab");
		BaronBunnyPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/BaronBunny.prefab");
		BennettPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/bennett.prefab");
		ChevPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/ChevreuseV2.prefab");
		ChevGunPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/ChevGun.prefab");
		ChildePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Childe.prefab");
		ChildeSmoke = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/ChildeSmoke.prefab");
		ChioriPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Chiori.prefab");
		DoriPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Dori.prefab");
		EGnosisPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/ElectroGnosis.prefab");
		FurinaPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Furina.prefab");
		FremPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Frem.prefab");
		FungiPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Fungi.prefab");
		GuobaPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Guoba.prefab");
		HammerPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Hammer.prefab");
		HandPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Hand.prefab");
		IttoPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Itto1.prefab");
		KazuhaPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Kazuha.prefab");
		KleePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Klee.prefab");
		MissHinaPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/MissHina.prefab");
		MoraPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Mora.prefab");
		NaviaPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/NaviaV1.prefab");
		NeuvPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Neuv2.prefab");
		NilouPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Nilou.prefab");
		PaimonPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Paimon.prefab");
		OzPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Oz.prefab");
		PenguinPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Penguin.prefab");
		PepperBush = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/PepperBush.prefab");
		OnikaPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Onikabuto.prefab");
		QiqiPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Qiqi.prefab");
		RaidenPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Raiden.prefab");
		RaidenDollPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/RaidenDoll.prefab");
		RazorPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Razor.prefab");
		RuinGuardPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Ruin_Guard.prefab");
		RuinSpawnPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/RuinEepy.prefab");
		ScaraPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Scaramouche.prefab");
		StatuePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Statue.prefab");
		VentiPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Venti.prefab");
		WrisPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Wrio.prefab");
		MeteorPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Meteor.prefab");
		Web1 = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Web1.prefab");
		Web2 = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Web2.prefab");
		Web3 = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Web3.prefab");
		XianglingPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Xiangling1.prefab");
		XiaoPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Xiao.prefab");
		YaoyaoPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Yaoyao.prefab");
		ZhongliPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Zhongli1.prefab");
		ShieldPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Shield.prefab");
		GobletPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Goblet.prefab");
		SlimePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Slime.prefab");
		PipePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Pipe.prefab");
		PopsiclePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Popsicle.prefab");
		BoxPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Catbox.prefab");
		DarumaPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Daruma.prefab");
		CombPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Comb.prefab");
		GoheiPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Gohei.prefab");
		KeychainPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Keychain.prefab");
		ScalePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Scale.prefab");
		TeaPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Tea.prefab");
		YueguiPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Yuegui.prefab");
		TerminalPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Terminal.prefab");
		DicePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Dice.prefab");
		ShirouPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Shirou.prefab");
		MakeupPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Makeup.prefab");
		LampPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Lamp.prefab");
		BombPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Bomb.prefab");
		AxePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Axe.prefab");
		ClubPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Debate.prefab");
		CameraPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Camera.prefab");
		PillPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Pill.prefab");
		SnacksPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Snacks.prefab");
		ToyPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Ball.prefab");
		SnakePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Snake.prefab");
		LyrePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Lyre.prefab");
		ScrollPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Scroll.prefab");
		KFanPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/KFan.prefab");
		IceCharmPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/IceCharm.prefab");
		CritterPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Critter.prefab");
		TearPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Tear.prefab");
		SeeliePrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Seelie.prefab");
		CatPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Cat.prefab");
		MikaTexture = GenshinOverhaulAssetBundle.LoadAsset<Texture>("Assets/Texture2D/MikaNote.png");
		DebateSprite = GenshinOverhaulAssetBundle.LoadAsset<Sprite>("Assets/Sprite/Debate.asset");
		VerdictSprite = GenshinOverhaulAssetBundle.LoadAsset<Sprite>("Assets/Sprite/Verdict.asset");
		HammerSprite = GenshinOverhaulAssetBundle.LoadAsset<Sprite>("Assets/Sprite/Hammer.asset");
		Transparent = GenshinOverhaulAssetBundle.LoadAsset<Sprite>("Assets/Sprite/transparent.asset");
		BaronBunny = GenshinOverhaulAssetBundle.LoadAsset<Sprite>("Assets/Sprite/BaronBunny.asset");
		chioriBody = GenshinOverhaulAssetBundle.LoadAsset<Material>("Assets/Material/ChioriBody.mat");
		chioriFace = GenshinOverhaulAssetBundle.LoadAsset<Material>("Assets/Material/ChioriFace.mat");
		chioriHair = GenshinOverhaulAssetBundle.LoadAsset<Material>("Assets/Material/ChioriHair.mat");
		PaimonVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/PaimonVideo.mp4");
		PaimonText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/PaimonText.txt");
		RaidenVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/RaidenVideo.mp4");
		RaidenText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/RaidenText.txt");
		RazorVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/RazorVideo.mp4");
		RazorText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/RazorText.txt");
		WrisVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/WrisVideo.mp4");
		WrisText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/WrisText.txt");
		DoriVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/DoriVideo.mp4");
		DoriText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/DoriText.txt");
		KleeVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/KleeVideo.mp4");
		KleeText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/KleeText.txt");
		ZhongliVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/ZhongliVideo.mp4");
		ZhongliText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/ZhongliText.txt");
		YaoyaoVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/YaoyaoVideo.mp4");
		YaoyaoText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/YaoyaoText.txt");
		NeuvVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/NeuvVideo.mp4");
		NeuvText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/NeuvText.txt");
		ChildeVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/ChildeVideo.mp4");
		ChildeText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/ChildeText.txt");
		FurinaVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/FurinaVideo.mp4");
		FurinaText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/FurinaText.txt");
		VentiVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/VentiVideo.mp4");
		VentiText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/VentiText.txt");
		ScaraVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/ScaraVideo.mp4");
		ScaraText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/ScaraText.txt");
		IttoVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/IttoVideo.mp4");
		IttoText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/IttoText.txt");
		ChevVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/ChevVideo.mp4");
		ChevText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/ChevText.txt");
		KazuhaVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/KazuhaVideo.mp4");
		KazuhaText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/KazuhaText.txt");
		NilouVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/NilouVideo.mp4");
		NilouText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/NilouText.txt");
		FremVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/FremVideo.mp4");
		FremText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/FremText.txt");
		RuinGuardVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/RuinGuardVideo.mp4");
		RuinGuardText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/RuinGuardText.txt");
		XiaoVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/XiaoVideo.mp4");
		XiaoText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/XiaoText.txt");
		XiangVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/XiangVideo.mp4");
		XiangText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/XiangText.txt");
		ChioriVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/ChioriVideo.mp4");
		ChioriText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/ChioriText.txt");
		PepperVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/PepperBushVideo.mp4");
		PepperText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/PepperBushText.txt");
		AmberVideo = GenshinOverhaulAssetBundle.LoadAsset<VideoClip>("Assets/Terminal/AmberVideo.mp4");
		AmberText = GenshinOverhaulAssetBundle.LoadAsset<TextAsset>("Assets/Terminal/AmberText.txt");
		Web1.layer = 21;
		Web1.AddComponent<SandSpiderWebTrap>();
		Web2.layer = 21;
		Web2.AddComponent<SandSpiderWebTrap>();
		Web3.layer = 21;
		Web3.AddComponent<SandSpiderWebTrap>();
		((Component)QiqiPrefab.gameObject.transform.Find("Hair")).gameObject.layer = 23;
		((Component)QiqiPrefab.gameObject.transform.Find("Hair")).gameObject.tag = "DoNotSet";
		ScaraPrefab.gameObject.layer = 8;
		IttoPrefab.layer = 19;
		WrisPrefab.layer = 19;
		XiaoPrefab.layer = 19;
		KleePrefab.layer = 19;
		RaidenPrefab.layer = 19;
		YaoyaoPrefab.layer = 19;
		ZhongliPrefab.layer = 19;
		XianglingPrefab.layer = 19;
		RuinSpawnPrefab.layer = 8;
		RuinGuardPrefab.AddComponent<RadMechAnimationEvents>();
		ChioriPrefab.AddComponent<EnemyAnimationEvent>();
		SetLayer(RuinGuardPrefab, 19);
		AlbedoReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Albedo", true, "Replace the Masked with Albedo");
		AmberReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Amber", true, "Replace the Maneater with Amber and the baby version with Baron Bunny");
		AndriusReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Andrius", true, "Replace the Company Cruiser with Andrius, Dominator of Wolves");
		BennettReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Bennett", true, "Replace the Mine with Bennett");
		ChevReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Chevreuse", true, "Replace the Nutcracker with Chevreuse");
		ChildeReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Childe", true, "Replace the Puffer with Childe");
		ChioriReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Chiori", true, "Replace the Barber with Chiori");
		DoriReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Dori", true, "Replace the Hoarding Bug with Dori");
		FurinaReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Furina", true, "Replace the Spider with Furina");
		FreminetReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Freminet", true, "Replace the Butler with Freminet");
		IttoReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Itto", true, "Replace the Baboon Hawk with Itto");
		KazuhaReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Kazuha", true, "Replace the Docile Locusts with Kazuha");
		KleeReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Klee", true, "Replace the Forest Giant with Klee");
		RaidenHandReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Magatsu Mitake Narukami no Mikoto Hand", true, "Replaces the Spike Trap with the hand of the Magatsu Mitake Narukami no Mikoto");
		NaviaReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Navia", true, "Replace the Turret with Navia");
		NeuvReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Neuvillette", true, "Replace the Jester with Neuvillette");
		NilouReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Nilou", true, "Replace the Slime with Nilou");
		PaimonReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Paimon", true, "Replace the Centipede with Paimon");
		PepperBushReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Pepper Bush", true, "Replace the Vain Shroud bushes with a bush of Xiangling's Peppers");
		QiqiReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Qiqi", true, "Replace the Ghost Girl with Qiqi");
		RaidenReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Raiden Shogun", true, "Replace the Bracken with Raiden Shogun");
		RazorReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Razor", true, "Replace the Thumper with Razor");
		RuinGuardReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Ruin Guard", true, "Replace the Old Bird with a Ruin Guard");
		ScaraReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Scaramouche", true, "Replace the Bees with Scaramouche");
		VentiReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Venti", true, "Replace the DoubleWings with Venti");
		WrioReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Wriothesly", true, "Replace the Eyeless Dog with Wriothesly");
		XianglingReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Xiangling", true, "Replace the Kidnapper Fox with Xiangling");
		XiaoReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Xiao", true, "Replace the Tulip Snake with Xiao");
		YaoyaoReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Yaoyao", true, "Replace the Earth Leviathan with Yaoyao");
		ZhongliReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Zhongli", true, "Replace the Coil Head with Zhongli");
		MeteorReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Models & Sounds", "Zhongli", true, "Replace the meteors in the meteor shower event with Zhongli's burst");
		TerminalReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Terminal", "New Bestiary videos and text", true, "Replaces vanilla Bestiary with Genshin text and videos of characters");
		SoundsReplacement = ((BaseUnityPlugin)this).Config.Bind<bool>("Music and Miscellaneous sounds", "Sounds", true, "Replace various sounds throughout the game with Genshin music");
		ScrapReplacement = ((BaseUnityPlugin)this).Config.Bind<float>("Scrap", "Scrap Replacements", 100f, "Percent of scrap that will be replaced with Genshin related items. Note this won't be synced. If you and a friend both set to 50%, it's not guaranteed that the 50% that was replaced for you will also be the one's chosen for them. This may cause issues in grab locations");
		mls.LogInfo((object)"--===GENSHIN OVERHAUL SOUND PATCH===--");
		soundAlbedoCry1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoCry1.ogg");
		soundAlbedoCry2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoCry2.ogg");
		soundAlbedoCry3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoCry3.ogg");
		soundAlbedoCry4 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoCry4.ogg");
		soundAlbedoMaskFaceLightUp = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoMaskFaceLightUp.ogg");
		soundAlbedoLaugh1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoLaugh1.ogg");
		soundAlbedoLaugh2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoLaugh2.ogg");
		soundAlbedoLaugh3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoLaugh3.ogg");
		soundAlbedoMaskAttackPlayer = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoMaskAttackPlayer.ogg");
		soundAlbedoMaskPuke = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoCry2.ogg");
		soundAlbedoDeath = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoDeath.ogg");
		soundAlbedoHit = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Albedo/AlbedoHit.ogg");
		soundAmberCry = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberCry.ogg");
		soundAmberCryFake = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberCryFake.ogg");
		soundAmberEatScrap = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberEatScrap.ogg");
		soundAmberPuke = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberPuke.ogg");
		soundAmberSquirm = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberSquirm.ogg");
		soundAmberTransformation = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberTransformation.ogg");
		soundAmberDeath = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberDeath.ogg");
		soundAmberGrowl = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberGrowl.ogg");
		soundAmberClick1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberClick1.ogg");
		soundAmberClick2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberClick2.ogg");
		soundAmberCooldown = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberCooldown.ogg");
		soundAmberLeap = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Amber/AmberLeap.ogg");
		soundAndriusHorn = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfHorn.ogg");
		soundAndriusRadio1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/AndriusRadio1.mp3");
		soundAndriusRadio2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/AndriusRadio2.mp3");
		soundAndriusRadio3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/AndriusRadio3.mp3");
		soundAndriusRadio4 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/AndriusRadio4.mp3");
		soundAndriusEngineRev = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfSpawnHowl.ogg");
		soundAndriusEngineRun = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfBreathing.ogg");
		soundAndriusEngineRun2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfBreathing2.ogg");
		soundAndriusEngineStart = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfPostSpawnBreathe.ogg");
		soundAndriusHeadlights = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfGrowl.ogg");
		soundAndriusHitObstacle1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfSharpExhale.ogg");
		soundAndriusHitObstacle2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfGrowl2.ogg");
		soundAndriusHitObstacle3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfBreath3.ogg");
		soundAndriusPush = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfSharpExhale.ogg");
		soundAndriusRevEngine = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfAttack2.ogg");
		soundAndriusRolling = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfRunning2.ogg");
		soundAndriusShatter = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfSharpExhale.ogg");
		soundAndriusTireSkid = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfPostHowlHowl.ogg");
		soundAndriusTurb = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfInZoomiesChargeThrough.ogg");
		soundAndriusGrowl3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfGrowlNoise3.ogg");
		soundAndriusExhale = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Andrius/WolfSharpExhale.ogg");
		soundBennettBeep = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Bennett/BennettBeep.ogg");
		soundBennettTrigger = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Bennett/BennettTrigger.ogg");
		soundBennettPressLandmine = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Bennett/BennettPressLandmine.ogg");
		soundChevShotgunReloadNutcracker = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chevreuse/ChevShotgunReloadNutcracker.ogg");
		soundChevNutcrackerHitEye = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chevreuse/ChevNutcrackerHitEye.ogg");
		soundChevNutcrackerAngry = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chevreuse/ChevNutcrackerAngry.ogg");
		soundChevNutcrackerDie = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chevreuse/ChevNutcrackerDie.ogg");
		soundChevNutcrackerTurn = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chevreuse/ChevNutcrackerTurn.ogg");
		soundChevKick = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chevreuse/ChevKick.ogg");
		soundChevStopTurning1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chevreuse/ChevStopTurning1.ogg");
		soundChevStopTurning2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chevreuse/ChevStopTurning2.ogg");
		soundChevStopTurning3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chevreuse/ChevStopTurning3.ogg");
		soundChevAlert = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chevreuse/ChevAlert.ogg");
		soundChevHitMetal = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chevreuse/ChevHitMetal.ogg");
		soundChildeFrighten1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Childe/ChildeFrighten1.ogg");
		soundChildeFrighten3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Childe/ChildeFrighten3.ogg");
		soundChildeNervous = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Childe/ChildeNervous.ogg");
		soundChildePuffSFX = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Childe/ChildePuffSFX.ogg");
		soundChildeRattleTail = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Childe/ChildeRattleTail.ogg");
		soundChildeBite = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Childe/ChildeBite.ogg");
		soundChildeStomp = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Childe/ChildeStomp.ogg");
		soundChildeAngry = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Childe/ChildeAngry.ogg");
		soundChioriSnip = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chiori/ChioriSnip.ogg");
		soundChioriMarch1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chiori/ChioriMarch1.ogg");
		soundChioriMarch2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chiori/ChioriMarch2.ogg");
		soundChioriMarch3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chiori/ChioriMarch3.ogg");
		soundChioriMarch4 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chiori/ChioriMarch4.ogg");
		soundChioriMarch5 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chiori/ChioriMarch5.ogg");
		soundChioriHit = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chiori/ChioriHit.ogg");
		soundChioriSnareDrum = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Chiori/ChioriSnare.ogg");
		soundDoriAngry1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Dori/DoriAngry1.ogg");
		soundDoriAngry2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Dori/DoriAngry2.ogg");
		soundDoriChitter1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Dori/DoriChitter1.ogg");
		soundDoriChitter2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Dori/DoriChitter2.ogg");
		soundDoriChitter3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Dori/DoriChitter3.ogg");
		soundDoriCry = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Dori/DoriCry.ogg");
		soundDoriFly = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Dori/DoriFly.ogg");
		soundDoriDie = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Dori/DoriDie.ogg");
		soundFremBalloonsTowerDefenseSix = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/FremAndPers/FremBalloonsTowerDefenseSix.ogg");
		soundFremBuzzingAmbience = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/FremAndPers/FremBuzzingAmbience.ogg");
		soundFremIdleAmbience = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/FremAndPers/FremIdleAmbience.ogg");
		soundFremMurderTheme = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/FremAndPers/FremMurderTheme.ogg");
		soundFremPersWalking = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/FremAndPers/FremPersWalking.ogg");
		soundFremPullKnife = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/FremAndPers/FremPullKnife.ogg");
		soundFremHit = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/FremAndPers/FremHit.ogg");
		soundFremSweep1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/FremAndPers/FremSweep1.ogg");
		soundFremSweep2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/FremAndPers/FremSweep2.ogg");
		soundFremSweep3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/FremAndPers/FremSweep3.ogg");
		soundFremSweep4 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/FremAndPers/FremSweep4.ogg");
		soundFurinaStunSpider = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Furina/FurinaStunSpider.ogg");
		soundFurinaSpiderDie = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Furina/FurinaSpiderDie.ogg");
		soundFurinaSpiderAttack = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Furina/FurinaSpiderAttack.ogg");
		soundFurinaSpoolPlayerInWeb = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Furina/FurinaSpiderHit.ogg");
		soundFurinaSpiderHit = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Furina/FurinaSpiderHit.ogg");
		soundFurinaHang = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Furina/FurinaHe.ogg");
		soundFurinaJaja = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Furina/FurinaWebPlace.ogg");
		soundSilence = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/Silence.ogg");
		soundGenshinLoudhorn = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinLoudhorn.ogg");
		soundGenshinLoudhornDistant = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinLoudhornDistant.ogg");
		soundGenshinMenu = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinStartup.ogg");
		soundGenshinHighAction1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinHighAction1.ogg");
		soundGenshinHighAction2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinHighAction2.ogg");
		soundGenshinLowAction = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinLowAction.ogg");
		soundGenshinCompanyBuildingMusic1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinCompanyBuildingMusic1.ogg");
		soundGenshinAmbientMusic1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinAmbientMusic1.ogg");
		soundGenshinAmbientMusic2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinAmbientMusic2.ogg");
		soundGenshinAmbientMusic3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinAmbientMusic3.ogg");
		soundGenshinAmbientMusic5 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinAmbientMusic5.ogg");
		soundGenshinAmbientMusic6 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinAmbientMusic6.ogg");
		soundGenshinIntroSpeech = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinIntroSpeech.ogg");
		soundGenshinMidDay = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinMidDay.ogg");
		soundGenshinStartOfDay = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinStartOfDay.ogg");
		soundGenshinNight = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinNight.ogg");
		soundGenshinJazz = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinJazz.ogg");
		soundGenshinIcecreamTruckV2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinIcecreamTruckV2.ogg");
		soundGenshinIcecreamTruckFar = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinIcecreamTruckFar.ogg");
		soundGenshinEclipseAmbience = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/GenshinEclipseAmbience.ogg");
		soundGenshinDroning1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/soundGenshinDroning1.ogg");
		soundGenshinDroning2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/soundGenshinDroning2.ogg");
		soundGenshinBackgroundAmbience = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/soundGenshinBackgroundAmbience.ogg");
		soundGenshinClassical1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/soundGenshinClassical1.ogg");
		soundGenshinPiano1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/soundGenshinPiano1.ogg");
		soundGenshinLateDay = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/GenshinSounds/soundGenshinLateDay.ogg");
		soundIttoBaboonEnterFight = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoBaboonEnterFight.ogg");
		soundIttoBaboonKill = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoBaboonKill.ogg");
		soundIttoBaboonStab = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoBaboonStab.ogg");
		soundIttoBaboonTakeDamage = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoBaboonTakeDamage.ogg");
		soundIttoKillBaboon = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoKillBaboon.ogg");
		soundIttoCaw1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoCaw1.ogg");
		soundIttoCawScream1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoCawScream1.ogg");
		soundIttoCawScream2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoCawScream2.ogg");
		soundIttoCawScream3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoCawScream3.ogg");
		soundIttoCawScream4 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoCawScream4.ogg");
		soundIttoCawScream5 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoCawScream5.ogg");
		soundIttoSqueak1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoSqueak1.ogg");
		soundIttoSqueak2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Itto/IttoSqueak2.ogg");
		soundKazuhaLocusts = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Kazuha/KazuhaLocusts.ogg");
		soundKazuhaEvade = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Kazuha/KazuhaEvade.ogg");
		soundGiantEatPlayer = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Klee/KleeEatPlayer.ogg");
		soundStunGiant = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Klee/KleeStunned.ogg");
		soundKleeDistantRumble1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Klee/KleeDistantRumble1.ogg");
		soundKleeDistantRumble2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Klee/KleeDistantRumble2.ogg");
		soundKleeDistantRumble3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Klee/KleeDistantRumble3.ogg");
		soundKleeDeath = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Klee/KleeDeath.ogg");
		soundKleeBurning = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Klee/KleeBurning.ogg");
		soundNaviaTurretActivate = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Navia/NaviaTurretActivate.ogg");
		soundNaviaTurretBeserkMode = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Navia/NaviaTurretBerserkMode.ogg");
		soundNaviaTurretDeactivate = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Navia/NaviaTurretDeactivate.ogg");
		soundNaviaTurretFire = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Navia/NaviaTurretFire.ogg");
		soundNaviaTurretFireDistant = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Navia/NaviaTurretFireDistant.ogg");
		soundNaviaTurretSeePlayer = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Navia/NaviaTurretSeePlayer.ogg");
		soundNeuvJackInTheBoxTheme = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Neuv/NeuvJackInTheBoxTheme.ogg");
		soundNeuvPop1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Neuv/NeuvPop1.ogg");
		soundNeuvScream1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Neuv/NeuvScream1.ogg");
		soundNeuvKillPlayer = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Neuv/NeuvKillPlayer.ogg");
		NilouHitSlime = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Nilou/NilouHitSlime.ogg");
		NilouAngry = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Nilou/NilouAngry.ogg");
		NilouEatPlayer = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Nilou/NilouEatPlayer.ogg");
		NilouIdle = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Nilou/NilouIdle.ogg");
		NilouJiggleSFX = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Nilou/NilouJiggleSFX.ogg");
		soundOzHello = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/OzHello.ogg");
		soundCameraFar = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/CameraSnapFar.ogg");
		soundCameraNear = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/CameraSnap.ogg");
		soundMeow = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/Meow.ogg");
		soundSeelieNoise = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/SeelieNoise.ogg");
		soundLyreClose = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/LyrePlay.ogg");
		soundLyreFar = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/LyreFar.ogg");
		soundDropCat = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/CatDrop.ogg");
		soundSnakeClose = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/SnakeClose.ogg");
		soundSnakeFar = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/SnakeFar.ogg");
		soundSnakeOi = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/SnakeOi.ogg");
		soundRuinQuiet = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Props/RuinGuardBrainWashQuiet.ogg");
		soundPaimonClingToPlayer = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Paimon/PaimonClingToPlayer.ogg");
		soundPaimonClingToPlayerLocal = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Paimon/PaimonClingToPlayerLocal.ogg");
		soundPaimonDeathShriek = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Paimon/PaimonDeathShriek.ogg");
		soundPaimonmonsterNoise = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Paimon/PaimonmonsterNoise.ogg");
		soundPaimonmonsterNoise2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Paimon/PaimonmonsterNoise2.ogg");
		soundPaimonmonsterNoiseB = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Paimon/PaimonmonsterNoiseB.ogg");
		soundPaimonShriek1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Paimon/PaimonShriek1.ogg");
		soundPaimonShriek2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Paimon/PaimonShriek2.ogg");
		soundQiqiBellChimeAmbience = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Qiqi/QiqiBellChimeAmbience.ogg");
		soundQiqiLaugh1_0 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Qiqi/QiqiLaugh1_0.ogg");
		soundQiqiLaugh2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Qiqi/QiqiLaugh2.ogg");
		soundQiqiBreathing = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Qiqi/QiqiBreathing.ogg");
		soundQiqiBreath3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Qiqi/soundQiqiBreath3.ogg");
		soundQiqiLaugh = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Qiqi/soundQiqiLaugh.ogg");
		soundQiqi2Laugh = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Qiqi/soundQiqi2Laugh.ogg");
		soundQiqiWheeze = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Qiqi/soundQiqiWheeze.ogg");
		soundQiqiStepping1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Qiqi/soundQiqiStep.ogg");
		soundRaidenStunFlowerman = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Raiden/RaidenStunFlowerman.ogg");
		soundRaidenAngered = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Raiden/RaidenAngered.ogg");
		soundRaidenFound1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Raiden/RaidenFound1.ogg");
		soundRaidenCrackNeck = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Raiden/RaidenCrackNeck.ogg");
		HandCreak = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Raiden/HandCreak.ogg");
		HandSlam = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Raiden/HandSlam.ogg");
		soundRazorBitePlayer = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorBitePlayer.ogg");
		soundRazorShortRoar1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorShortRoar1.ogg");
		soundRazorLongRoar1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorLongRoar1.ogg");
		soundRazorLongRoar2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorLongRoar2.ogg");
		soundRazorLongRoar3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorLongRoar3.ogg");
		soundRazorRam1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorRam1.ogg");
		soundRazorRam2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorRam2.ogg");
		soundRazorRam3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorRam3.ogg");
		soundRazorCrawlerDie = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorCrawlerDie.ogg");
		soundRazorHitCrawler1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorHitCrawler1.ogg");
		soundRazorHitCrawler2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorHitCrawler2.ogg");
		soundRazorStunCrawler = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/RazorStunCrawler.ogg");
		soundRazorEatMeat = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Razor/soundRazorEatMeat.ogg");
		soundLaserNoise = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/RuinGuard/LaserNoise.ogg");
		soundRuinGuardBrainWash = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/RuinGuard/RuinGuardBrainWash.ogg");
		soundScaraBeeZap1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Scara/ScaraBeeZap1.ogg");
		soundScaraBeeZap2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Scara/ScaraBeeZap2.ogg");
		soundScaraBeeZap3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Scara/ScaraBeeZap3.ogg");
		soundScaraBeeZap4 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Scara/ScaraBeeZap4.ogg");
		soundScaraBeeZap5 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Scara/ScaraBeeZap5.ogg");
		soundScaraBeeZap6 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Scara/ScaraBeeZap6.ogg");
		soundScaraBeeZapConstant = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Scara/ScaraBeeZapConstant.ogg");
		soundScaraBeeHiveIdle = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Scara/ScaraBeeHiveIdle.ogg");
		soundScaraBeesAngry = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Scara/ScaraBeesAngry.ogg");
		soundScaraBeesDefensive = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Scara/ScaraBeesDefensive.ogg");
		soundVentiStunDoublewing = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Venti/VentiStunDoublewing.ogg");
		soundVentiDoublewingFlap1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Venti/VentiDoublewingFlap1.ogg");
		soundVentiDoublewingFlap2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Venti/VentiDoublewingFlap2.ogg");
		soundVentiDoublewingFlap3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Venti/VentiDoublewingFlap3.ogg");
		soundVentiDoublewingFlapConstant = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Venti/VentiDoublewingFlapConstant.ogg");
		soundVentiKillDoublewing = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Venti/VentiKillDoublewing.ogg");
		soundVentiBird1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Venti/VentiBird1.ogg");
		soundVentiBird2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Venti/VentiBird2.ogg");
		soundVentiBird3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Venti/VentiBird3.ogg");
		soundVentiBirdScreech1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Venti/VentiBirdScreech1.ogg");
		soundVentiBirdScreech2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Venti/VentiBirdScreech2.ogg");
		soundWrisStunDog = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Wris/WrisStunDog.ogg");
		soundWrisBreathe1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Wris/WrisBreathe1.ogg");
		soundWrisgrowl = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Wris/Wrisgrowl.ogg");
		soundWrisKillPlayer = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Wris/WrisKillPlayer.ogg");
		soundWrisKillPlayer_0 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Wris/WrisKillPlayer_0.ogg");
		soundWrisLunge1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Wris/WrisLunge1.ogg");
		soundWrisRoar_0 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Wris/WrisRoar_0.ogg");
		soundWrisRoar = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Wris/WrisRoar.ogg");
		soundXianglingHit = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingHit.ogg");
		soundXianglingCloseCall1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingCC1.ogg");
		soundXianglingCloseCall2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingCC2.ogg");
		soundXianglingFarCall1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingFC1.ogg");
		soundXianglingFarCall2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingFC2.ogg");
		soundXianglingGrowl1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingGrowl1.ogg");
		soundXianglingGrowl2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingGrowl2.ogg");
		soundXianglingGrowl3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingGrowl3.ogg");
		soundXianglingGrowl4 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingGrowl4.ogg");
		soundXianglingKill = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingKill.ogg");
		soundXianglingShootTongue = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingShootTongue.ogg");
		soundXianglingSnarl = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingSnarl.ogg");
		soundXianglingDie = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingDie.ogg");
		soundXianglingStun = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiangling/XianglingStun.ogg");
		XiaoChuckle1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiao/XiaoChuckle1.ogg");
		XiaoChuckle3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiao/XiaoChuckle3.ogg");
		XiaoChuckle4 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiao/XiaoChuckle4.ogg");
		XiaoChuckle5 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiao/XiaoChuckle5.ogg");
		XiaoLeap1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiao/XiaoLeap1.ogg");
		XiaoLeap2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiao/XiaoLeap2.ogg");
		XiaoLeap3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiao/XiaoLeap3.ogg");
		XiaoCling = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiao/XiaoCling.ogg");
		XiaoDeath = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Xiao/XiaoDeath.ogg");
		soundYaoyaoSandWormRoar = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Yaoyao/YaoyaoSandWormRoar.ogg");
		soundYaoyaoSandWormRoar2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Yaoyao/YaoyaoSandWormRoar2.ogg");
		soundYaoyaoBurrowingGrowl1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Yaoyao/YaoyaoBurrowingGrowl1.ogg");
		soundYaoyaoBurrowingRumble1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Yaoyao/YaoyaoBurrowingRumble1.ogg");
		soundYaoyaoBurrowingRumble2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Yaoyao/YaoyaoBurrowingRumble2.ogg");
		soundYaoyaoBurrowingRumble3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Yaoyao/YaoyaoBurrowingRumble3.ogg");
		soundYaoyaoBurrowingRumbleLoud1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Yaoyao/YaoyaoBurrowingRumbleLoud1.ogg");
		soundYaoyaoEmergeFromGround1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Yaoyao/YaoyaoEmergeFromGround1.ogg");
		soundZhongliSpring1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Zhongli/Spring1_zhongli.ogg");
		soundZhongliSpring2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Zhongli/Spring2_zhongli.ogg");
		soundZhongliSpring3 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Zhongli/Spring3_zhongli.ogg");
		soundZhongliSpringWobble1 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Zhongli/SpringWobble1.ogg");
		soundZhongliSpringWobble2 = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Zhongli/ZhongliSpringWobble2.ogg");
		soundZhongliKillPlayerSpring = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Zhongli/ZhongliKillPlayerSpring.ogg");
		soundZhongliEnterCooldown = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Zhongli/soundZhongliEnterCooldown.ogg");
		soundZhongliFar = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Zhongli/ZhongliFar.ogg");
		soundZhongliLand = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Zhongli/ZhongliLand.ogg");
		soundZhongliNear = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Zhongli/ZhongliClose.ogg");
		soundZhongliWarning = GenshinOverhaulAssetBundle.LoadAsset<AudioClip>("Assets/AudioClip/Zhongli/ZhongliWarning.ogg");
		mls.LogInfo((object)"--===GENSHIN IMPACT OVERHAUL SOUNDS LOADED===--");
		mls.LogInfo((object)"--===GENSHIN IMPACT OVERHAUL LOADED===--");
		static void SetLayer(GameObject obj, int newLayer)
		{
			//IL_002b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0031: Expected O, but got Unknown
			if ((Object)(object)obj == (Object)null)
			{
				return;
			}
			obj.layer = newLayer;
			foreach (Transform item in obj.transform)
			{
				Transform val = item;
				SetLayer(((Component)val).gameObject, newLayer);
			}
		}
	}

	[HarmonyPatch(typeof(RoundManager), "Awake")]
	[HarmonyPostfix]
	public static void RuinLoader()
	{
		//IL_002c: Unknown result type (might be due to invalid IL or missing references)
		//IL_0032: Expected O, but got Unknown
		if (RuinGuardReplacement.Value)
		{
			GameObject val = GameObject.Find("RadMechNestHandler");
			if ((Object)(object)val == (Object)null)
			{
				GameObject val2 = new GameObject("RadMechNestHandler");
				RadMechNestHandler radMechNestHandler = val2.AddComponent<RadMechNestHandler>();
				radMechNestHandler.ruinSpawnPrefab = RuinSpawnPrefab;
				Object.DontDestroyOnLoad((Object)(object)val2);
				mls.LogInfo((object)"--===RUIN GUARDS LOADED===--");
			}
		}
	}

	[HarmonyPatch(typeof(MaskedPlayerEnemy), "Start")]
	[HarmonyPostfix]
	public static void PluginDetectSummonMasked(MaskedPlayerEnemy __instance)
	{
		//IL_0800: Unknown result type (might be due to invalid IL or missing references)
		//IL_0815: Unknown result type (might be due to invalid IL or missing references)
		//IL_06ec: Unknown result type (might be due to invalid IL or missing references)
		if (AlbedoReplacement.Value)
		{
			((EnemyAI)__instance).enemyType.audioClips[0] = soundAlbedoMaskAttackPlayer;
			((EnemyAI)__instance).enemyType.audioClips[1] = soundAlbedoMaskFaceLightUp;
			((EnemyAI)__instance).enemyType.audioClips[2] = soundAlbedoMaskPuke;
			((EnemyAI)__instance).creatureSFX.clip = soundAlbedoLaugh1;
			((EnemyAI)__instance).creatureVoice.clip = soundAlbedoLaugh1;
			__instance.movementAudio.clip = soundAlbedoLaugh1;
			((Component)((Component)__instance).gameObject.transform.Find("ScavengerModel").Find("metarig").Find("spine")
				.Find("spine.001")
				.Find("spine.002")
				.Find("spine.003")
				.Find("spine.004")
				.Find("HeadMaskTragedy")).GetComponent<RandomPeriodicAudioPlayer>().randomClips[0] = soundAlbedoCry1;
			((Component)((Component)__instance).gameObject.transform.Find("ScavengerModel").Find("metarig").Find("spine")
				.Find("spine.001")
				.Find("spine.002")
				.Find("spine.003")
				.Find("spine.004")
				.Find("HeadMaskTragedy")).GetComponent<RandomPeriodicAudioPlayer>().randomClips[1] = soundAlbedoCry2;
			((Component)((Component)__instance).gameObject.transform.Find("ScavengerModel").Find("metarig").Find("spine")
				.Find("spine.001")
				.Find("spine.002")
				.Find("spine.003")
				.Find("spine.004")
				.Find("HeadMaskTragedy")).GetComponent<RandomPeriodicAudioPlayer>().randomClips[2] = soundAlbedoCry3;
			((Component)((Component)__instance).gameObject.transform.Find("ScavengerModel").Find("metarig").Find("spine")
				.Find("spine.001")
				.Find("spine.002")
				.Find("spine.003")
				.Find("spine.004")
				.Find("HeadMaskTragedy")).GetComponent<RandomPeriodicAudioPlayer>().randomClips[3] = soundAlbedoCry4;
			((Component)((Component)__instance).gameObject.transform.Find("ScavengerModel").Find("metarig").Find("spine")
				.Find("spine.001")
				.Find("spine.002")
				.Find("spine.003")
				.Find("spine.004")
				.Find("HeadMaskComedy")).GetComponent<RandomPeriodicAudioPlayer>().randomClips[0] = soundAlbedoLaugh1;
			((Component)((Component)__instance).gameObject.transform.Find("ScavengerModel").Find("metarig").Find("spine")
				.Find("spine.001")
				.Find("spine.002")
				.Find("spine.003")
				.Find("spine.004")
				.Find("HeadMaskComedy")).GetComponent<RandomPeriodicAudioPlayer>().randomClips[1] = soundAlbedoLaugh2;
			((Component)((Component)__instance).gameObject.transform.Find("ScavengerModel").Find("metarig").Find("spine")
				.Find("spine.001")
				.Find("spine.002")
				.Find("spine.003")
				.Find("spine.004")
				.Find("HeadMaskComedy")).GetComponent<RandomPeriodicAudioPlayer>().randomClips[2] = soundAlbedoLaugh3;
			((Component)((Component)__instance).gameObject.transform.Find("ScavengerModel").Find("metarig").Find("spine")
				.Find("spine.001")
				.Find("spine.002")
				.Find("spin