Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of GenshinImpactOverhaul v1.6.3
GenshinImpactOverhaul.dll
Decompiled a month ago
The result has been truncated due to the large size, download it to view full contents!
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 SunglassesPrefab; public static GameObject SunglassesObject; 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"); SunglassesPrefab = GenshinOverhaulAssetBundle.LoadAsset<GameObject>("Assets/PrefabInstance/Sunglasses.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.