Decompiled source of WinterFest v1.0.6
Winterfest.dll
Decompiled 2 days 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.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using BepInEx; using DM; using FhpSLib; using HarmonyLib; using InControl; using Landfall.TABS; using Landfall.TABS.AI.Components.Modifiers; using Landfall.TABS.AI.Systems; using Landfall.TABS.GameState; using Landfall.TABS.UnitEditor; using Landfall.TABS_Input; using Pathfinding; using SLMA; using TFBGames; using Unity.Entities; using UnityEngine; using UnityEngine.Events; using UnityEngine.Rendering; using UnityEngine.SceneManagement; using WinterfestFunctions; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: AssemblyTitle("WinterFest")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("GeeztJeez")] [assembly: AssemblyProduct("WinterFest")] [assembly: AssemblyCopyright("Copyright © Lifetime")] [assembly: AssemblyTrademark("")] [assembly: ComVisible(false)] [assembly: Guid("7acfaef0-7669-4401-8bff-5a9a02e18c75")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.6.0")] [module: UnverifiableCode] namespace WinterFest { public static class UManager { private static string comment; public static AssetBundle bundle; public static void SetBlueprint(UnitBlueprint unit, LandfallContentDatabase db) { //IL_0166: Unknown result type (might be due to invalid IL or missing references) //IL_016c: Unknown result type (might be due to invalid IL or missing references) //IL_03a6: Unknown result type (might be due to invalid IL or missing references) //IL_03ac: Expected O, but got Unknown //IL_03ba: Unknown result type (might be due to invalid IL or missing references) //IL_03c0: Unknown result type (might be due to invalid IL or missing references) //IL_0573: Unknown result type (might be due to invalid IL or missing references) //IL_0579: Expected O, but got Unknown //IL_0587: Unknown result type (might be due to invalid IL or missing references) //IL_058d: Unknown result type (might be due to invalid IL or missing references) //IL_070d: Unknown result type (might be due to invalid IL or missing references) //IL_0713: Expected O, but got Unknown //IL_0721: Unknown result type (might be due to invalid IL or missing references) //IL_0727: Unknown result type (might be due to invalid IL or missing references) //IL_0866: Unknown result type (might be due to invalid IL or missing references) //IL_086c: Expected O, but got Unknown //IL_0887: Unknown result type (might be due to invalid IL or missing references) //IL_088d: Expected O, but got Unknown //IL_08a8: Unknown result type (might be due to invalid IL or missing references) //IL_08ae: Expected O, but got Unknown //IL_08c9: Unknown result type (might be due to invalid IL or missing references) //IL_08cf: Expected O, but got Unknown //IL_08ea: Unknown result type (might be due to invalid IL or missing references) //IL_08f0: Expected O, but got Unknown //IL_090b: Unknown result type (might be due to invalid IL or missing references) //IL_0911: Expected O, but got Unknown //IL_0943: Unknown result type (might be due to invalid IL or missing references) //IL_094a: Expected O, but got Unknown //IL_097f: Unknown result type (might be due to invalid IL or missing references) //IL_0986: Expected O, but got Unknown //IL_09b0: Unknown result type (might be due to invalid IL or missing references) //IL_09b7: Expected O, but got Unknown //IL_09e0: Unknown result type (might be due to invalid IL or missing references) //IL_09e7: Expected O, but got Unknown //IL_0a0b: Unknown result type (might be due to invalid IL or missing references) //IL_0a12: Expected O, but got Unknown //IL_0a36: Unknown result type (might be due to invalid IL or missing references) //IL_0a3d: Expected O, but got Unknown //IL_0a9a: Unknown result type (might be due to invalid IL or missing references) //IL_0aa0: Expected O, but got Unknown //IL_0b08: Unknown result type (might be due to invalid IL or missing references) //IL_0b0e: Unknown result type (might be due to invalid IL or missing references) //IL_0d89: Unknown result type (might be due to invalid IL or missing references) //IL_0d8f: Unknown result type (might be due to invalid IL or missing references) //IL_0fed: Unknown result type (might be due to invalid IL or missing references) //IL_0ff3: Unknown result type (might be due to invalid IL or missing references) if (unit.Entity.Name == "Abnormal Envoy") { SLMATool.UnitCost(unit, 1300); unit.UnitBase = UPool.MyPool.GetObject("AbnormalEnvoy_Base"); s.SetField<UnitBlueprint>(unit, "VocalRef", (object)"Secret Attack Vocals/Raptor"); s.SetField<UnitBlueprint>(unit, "DeathRef", (object)"Secret Death Vocals/Raptor"); s.SetField<UnitBlueprint>(unit, "footRef", (object)"Footsteps/Raptor"); s.SetField<UnitBlueprint>(unit, "VoicePitch", (object)0.85f); unit.health = 500f; unit.minSizeRandom = 0.99f; unit.maxSizeRandom = 1.01f; unit.sizeMultiplier = 1.4f; unit.stepMultiplier = 3f; unit.massMultiplier = 5f; unit.balanceMultiplier = 1.4f; unit.animationMultiplier = 1.4f; unit.balanceForceMultiplier = 1.2f; unit.movementSpeedMuiltiplier = 1.3f; unit.LeftWeapon = UPool.MyPool.GetObject("EnvoyExtendedClaw"); unit.RightWeapon = UPool.MyPool.GetObject("EnvoyExtendedClaw"); unit.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[3] { UPool.MyPool.GetObject("Move_EnvoyBite"), UPool.MyPool.GetObject("Move_EnvoyOfMadness"), UPool.MyPool.GetObject("Move_WildJump") }; unit.MovementComponents = new List<IMovementComponent> { (IMovementComponent)(object)default(NeverStopRunning) }; } if (unit.Entity.Name == "Frigid Huntress") { SLMATool.UnitCost(unit, 2000); unit.UnitBase = UPool.MyPool.GetObject("FrigidHuntress_Base"); s.SetField<UnitBlueprint>(unit, "VocalRef", (object)"Farmer Attack Vocals/Pitchfork"); s.SetField<UnitBlueprint>(unit, "DeathRef", (object)"Farmer Death Vocals/Pitchfork"); s.SetField<UnitBlueprint>(unit, "VoicePitch", (object)0.75f); unit.health = 400f; unit.minSizeRandom = 0.99f; unit.maxSizeRandom = 1.01f; unit.sizeMultiplier = 1.1f; unit.massMultiplier = 3f; unit.stepMultiplier = 2f; unit.balanceMultiplier = 1.4f; unit.animationMultiplier = 1.5f; unit.balanceForceMultiplier = 1.4f; unit.movementSpeedMuiltiplier = 1.2f; unit.holdinigWithTwoHands = true; unit.RightWeapon = UPool.MyPool.GetObject("FrigidHuntingLongbow"); unit.m_props = (GameObject[])(object)new GameObject[12] { UPool.MyPool.GetObject("FrigidHuntressArrows"), UPool.MyPool.GetObject("FrigidHuntressBoots"), UPool.MyPool.GetObject("FrigidHuntressHair"), UPool.MyPool.GetObject("FrigidHuntressInnerShirt"), UPool.MyPool.GetObject("FrigidHuntressLeftArmStocking"), UPool.MyPool.GetObject("FrigidHuntressMask"), UPool.MyPool.GetObject("FrigidHuntressMouthCover"), UPool.MyPool.GetObject("FrigidHuntressPants"), UPool.MyPool.GetObject("FrigidHuntressRightGlove"), UPool.MyPool.GetObject("FrigidHuntressRightHandStocking"), UPool.MyPool.GetObject("FrigidHuntressTorsoArmor"), UPool.MyPool.GetObject("SpawnEyes_FrigidHuntress") }; unit.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[3] { UPool.MyPool.GetObject("Move_ArrowStep"), UPool.MyPool.GetObject("Move_GazingPierces"), (GameObject)SLMALoader.SDic["moves"]["Small_Hover"] }; unit.MovementComponents = new List<IMovementComponent> { (IMovementComponent)(object)default(KeepPreferredDistance) }; } if (unit.Entity.Name == "Skrægore") { SLMATool.UnitCost(unit, 4400); unit.UnitBase = UPool.MyPool.GetObject("Skraegore_Base"); s.SetField<UnitBlueprint>(unit, "VocalRef", (object)"Effects/PriestHeal"); s.SetField<UnitBlueprint>(unit, "DeathRef", (object)"Effects/PriestHeal"); s.SetField<UnitBlueprint>(unit, "footRef", (object)"Footsteps/Big"); s.SetField<UnitBlueprint>(unit, "VoicePitch", (object)0.8f); unit.health = 1000f; unit.minSizeRandom = 0.99f; unit.maxSizeRandom = 1.01f; unit.sizeMultiplier = 2f; unit.stepMultiplier = 2f; unit.massMultiplier = 50f; unit.balanceMultiplier = 1f; unit.animationMultiplier = 1f; unit.balanceForceMultiplier = 1f; unit.movementSpeedMuiltiplier = 0.1f; unit.LeftWeapon = UPool.MyPool.GetObject("Throw_HaywireSickle"); unit.RightWeapon = UPool.MyPool.GetObject("Throw_HaywireSickle"); unit.m_props = (GameObject[])(object)new GameObject[3] { UPool.MyPool.GetObject("SkraegoreStrawOldHat"), UPool.MyPool.GetObject("SkraegoreScarecrowButchedMask"), UPool.MyPool.GetObject("SkraegoreRaggedShirt") }; unit.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[3] { UPool.MyPool.GetObject("Move_Lifereaping"), UPool.MyPool.GetObject("Move_BountifulHarvest"), (GameObject)SLMALoader.SDic["moves"]["Small_Hover"] }; unit.MovementComponents = new List<IMovementComponent> { (IMovementComponent)(object)default(KeepPreferredDistance) }; } if (unit.Entity.Name == "Dreamful Oracle") { SLMATool.UnitCost(unit, 16000); unit.UnitBase = UPool.MyPool.GetObject("DreamerUnit_Base"); s.SetField<UnitBlueprint>(unit, "VocalRef", (object)"Western Attack Vocals/Deadeye"); s.SetField<UnitBlueprint>(unit, "DeathRef", (object)"Western Death Vocals/Deadeye"); s.SetField<UnitBlueprint>(unit, "footRef", (object)"Footsteps/Small"); s.SetField<UnitBlueprint>(unit, "VoicePitch", (object)0.8f); unit.health = 9000f; unit.minSizeRandom = 0.99f; unit.maxSizeRandom = 1.01f; unit.sizeMultiplier = 1.25f; unit.massMultiplier = 20f; unit.animationMultiplier = 5f; unit.movementSpeedMuiltiplier = 1f; unit.LeftWeapon = UPool.MyPool.GetObject("Throw_SleepySand"); unit.RightWeapon = UPool.MyPool.GetObject("Throw_SleepySand"); unit.m_props = (GameObject[])(object)new GameObject[1] { UPool.MyPool.GetObject("DreamerHair") }; unit.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[4] { UPool.MyPool.GetObject("Move_Bedridden"), UPool.MyPool.GetObject("Move_SirenLullaby"), UPool.MyPool.GetObject("Move_NightmarishPersistence"), (GameObject)SLMALoader.SDic["moves"]["Hover"] }; unit.MovementComponents = new List<IMovementComponent> { (IMovementComponent)(object)default(NeverStopRunning) }; } if (unit.Entity.Name == "Miraculus") { SLMATool.UnitCost(unit, 50000); unit.UnitBase = UPool.MyPool.GetObject("Miraculus_Base"); s.SetField<UnitBlueprint>(unit, "VocalRef", (object)"Farmer Attack Vocals/Halfling"); s.SetField<UnitBlueprint>(unit, "DeathRef", (object)"Farmer Death Vocals/Halfling"); s.SetField<UnitBlueprint>(unit, "footRef", (object)"Footsteps/Skeleton"); s.SetField<UnitBlueprint>(unit, "VoicePitch", (object)0.5f); unit.health = 25000f; unit.minSizeRandom = 0.99f; unit.maxSizeRandom = 1.01f; unit.sizeMultiplier = 1.5f; unit.stepMultiplier = 1.4f; unit.massMultiplier = 100f; unit.balanceMultiplier = 1.4f; unit.animationMultiplier = 1.2f; unit.balanceForceMultiplier = 1.2f; unit.movementSpeedMuiltiplier = 1.2f; unit.holdinigWithTwoHands = true; unit.RightWeapon = UPool.MyPool.GetObject("JoyousBlade"); unit.m_props = (GameObject[])(object)new GameObject[8] { (GameObject)SLMALoader.SDic["clothes"]["VikingHelmet001"], (GameObject)SLMALoader.SDic["clothes"]["Viking_Ullr_Shirt001"], (GameObject)SLMALoader.SDic["clothes"]["misc_shirt002"], (GameObject)SLMALoader.SDic["clothes"]["Western_gloves002"], (GameObject)SLMALoader.SDic["clothes"]["Ottoman_pants002"], (GameObject)SLMALoader.SDic["clothes"]["Pirate_Shoes001"], UPool.MyPool.GetObject("ContagiousSmile"), UPool.MyPool.GetObject("SpawnEyes_Miraculus") }; PropItemData[] array = (PropItemData[])(object)new PropItemData[6]; int num = 0; PropItemData val = new PropItemData(); val.m_colors = new int[3] { 76, 58, 0 }; val.m_isTeamColor = new bool[3] { false, false, true }; array[num] = val; PropItemData val2 = new PropItemData(); val2.m_colors = new int[5] { 63, 53, 63, -1, 76 }; val2.m_isTeamColor = new bool[5]; array[1] = val2; val2 = new PropItemData(); val2.m_colors = new int[2] { 73, 63 }; val2.m_isTeamColor = new bool[2]; array[2] = val2; val2 = new PropItemData(); val2.m_colors = new int[1] { 62 }; val2.m_isTeamColor = new bool[1]; array[3] = val2; val2 = new PropItemData(); val2.m_colors = new int[1]; val2.m_isTeamColor = new bool[1] { true }; array[4] = val2; int num2 = 5; val = new PropItemData(); val.m_colors = new int[4] { 0, -1, 76, 76 }; val.m_isTeamColor = new bool[4] { true, false, false, false }; array[num2] = val; unit.m_propData = array; unit.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[6] { (GameObject)SLMALoader.SDic["moves"]["Small_Hover"], UPool.MyPool.GetObject("Move_ConstellationAura"), UPool.MyPool.GetObject("Move_ShiningStar"), UPool.MyPool.GetObject("Move_MarchingPressure"), UPool.MyPool.GetObject("Move_Masochist"), UPool.MyPool.GetObject("Move_DopamineOverdose") }; unit.MovementComponents = new List<IMovementComponent> { (IMovementComponent)(object)default(NeverStopRunning) }; } if (unit.Entity.Name == "Flame Apostle") { SLMATool.UnitCost(unit, 7000000); unit.Entity.SetUnlockKey("SECRET_FLAMEAPOSTLE_NEW"); unit.UnitBase = UPool.MyPool.GetObject("FlameApostle_Base"); s.SetField<UnitBlueprint>(unit, "VocalRef", (object)"Halloween Attack Vocals/Reaper"); s.SetField<UnitBlueprint>(unit, "DeathRef", (object)"Halloween Death Vocals/Reaper"); s.SetField<UnitBlueprint>(unit, "footRef", (object)"Footsteps/Big"); s.SetField<UnitBlueprint>(unit, "VoicePitch", (object)0.65f); unit.health = 3000000f; unit.minSizeRandom = 0.99f; unit.maxSizeRandom = 1.01f; unit.sizeMultiplier = 1.5f; unit.stepMultiplier = 0.15f; unit.massMultiplier = 200f; unit.animationMultiplier = 0.8f; unit.movementSpeedMuiltiplier = 1.5f; unit.LeftWeapon = UPool.MyPool.GetObject("OrderOfBlazesWeapon"); unit.RightWeapon = UPool.MyPool.GetObject("FireFistWeapon"); unit.m_props = (GameObject[])(object)new GameObject[11] { UPool.MyPool.GetObject("FireShepherdShouldersFierceArmor"), UPool.MyPool.GetObject("SpawnEyes_FireShepherd"), UPool.MyPool.GetObject("FireShepherdPant"), UPool.MyPool.GetObject("FireShepherdHat"), UPool.MyPool.GetObject("FireShepherdGloves"), UPool.MyPool.GetObject("FireShepherdGasMask"), UPool.MyPool.GetObject("FireShepherdCover"), UPool.MyPool.GetObject("FireShepherdCoat"), UPool.MyPool.GetObject("FireShepherdChestArmor"), UPool.MyPool.GetObject("FireShepherdBoots"), UPool.MyPool.GetObject("FireShepherdBelt") }; unit.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[6] { UPool.MyPool.GetObject("Move_HeavyBreathing"), UPool.MyPool.GetObject("Move_FlamingExecution"), UPool.MyPool.GetObject("Move_SwiftBurningAshes"), UPool.MyPool.GetObject("Move_BaptismWarfield"), UPool.MyPool.GetObject("Move_InfernalDictator"), UPool.MyPool.GetObject("Move_BoilingHatred") }; unit.MovementComponents = new List<IMovementComponent> { (IMovementComponent)(object)default(KeepPreferredDistance) }; } if (unit.Entity.Name == "Cryobomination") { SLMATool.UnitCost(unit, int.MaxValue); unit.Entity.SetUnlockKey("SECRET_CRYOBOMINATION_NEW"); unit.UnitBase = UPool.MyPool.GetObject("Cryobomination_Base"); s.SetField<UnitBlueprint>(unit, "VocalRef", (object)"Halloween Attack Vocals/Reaper"); s.SetField<UnitBlueprint>(unit, "DeathRef", (object)"Halloween Death Vocals/Reaper"); s.SetField<UnitBlueprint>(unit, "footRef", (object)"Footsteps/IceGiant"); s.SetField<UnitBlueprint>(unit, "VoicePitch", (object)0.35f); unit.health = float.PositiveInfinity; unit.minSizeRandom = 0.99f; unit.maxSizeRandom = 1.01f; unit.sizeMultiplier = 1.01f; unit.massMultiplier = 800f; unit.stepMultiplier = 1.5f; unit.animationMultiplier = 1.5f; unit.movementSpeedMuiltiplier = 2f; unit.holdinigWithTwoHands = false; unit.RightWeapon = UPool.MyPool.GetObject("UndeadLordGreatsword"); unit.m_props = (GameObject[])(object)new GameObject[2] { UPool.MyPool.GetObject("CryobominationCrown"), UPool.MyPool.GetObject("CryobominationRobe") }; unit.objectsToSpawnAsChildren = (GameObject[])(object)new GameObject[14] { UPool.MyPool.GetObject("Move_Cryopathic"), UPool.MyPool.GetObject("Move_Mountmover"), UPool.MyPool.GetObject("Move_Cryocataclysm"), UPool.MyPool.GetObject("Move_Cryocataclysm"), UPool.MyPool.GetObject("Move_Cryocataclysm"), UPool.MyPool.GetObject("Move_Cryocataclysm"), UPool.MyPool.GetObject("Move_Cryocataclysm"), UPool.MyPool.GetObject("Move_Cryocataclysm"), UPool.MyPool.GetObject("Move_Cryocataclysm"), UPool.MyPool.GetObject("Move_Cryocataclysm"), UPool.MyPool.GetObject("Move_Cryocataclysm"), UPool.MyPool.GetObject("Move_Cryocataclysm"), UPool.MyPool.GetObject("Move_AbominableEmbrace"), UPool.MyPool.GetObject("Move_WinterStormFog") }; unit.MovementComponents = new List<IMovementComponent> { (IMovementComponent)(object)default(NeverStopRunning) }; } } public static void SetMoves(GameObject move, LandfallContentDatabase db) { //IL_041b: Unknown result type (might be due to invalid IL or missing references) //IL_0420: Unknown result type (might be due to invalid IL or missing references) //IL_0436: Unknown result type (might be due to invalid IL or missing references) //IL_043b: Unknown result type (might be due to invalid IL or missing references) //IL_0451: Unknown result type (might be due to invalid IL or missing references) //IL_0456: Unknown result type (might be due to invalid IL or missing references) //IL_046c: Unknown result type (might be due to invalid IL or missing references) //IL_0471: Unknown result type (might be due to invalid IL or missing references) //IL_0487: Unknown result type (might be due to invalid IL or missing references) //IL_048c: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_GazingPierces")) { move.AddComponent<GazingPiercesMovement>().eyeExplosionObject = Utilities.Utility.LoadBundleGameObject("Exp_EyeGazePierces"); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_Lifereaping")) { move.AddComponent<LifereapingPassiveBehaviour>(); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_NightmarishPersistence")) { move.AddComponent<NightmarishPersistencePassiveBehaviour>().indicationObject = Utilities.Utility.LoadBundleGameObject("PersistenceIndication"); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_ShiningStar")) { move.GetComponentInChildren<SpawnObject>().objectToSpawn = UPool.MyPool.GetObject("P_UltiStarr"); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_MarchingPressure")) { MarchingPressureMovement marchingPressureMovement = move.AddComponent<MarchingPressureMovement>(); marchingPressureMovement.trackerObject = Utilities.Utility.LoadBundleGameObject("MarchingPressureMarker"); marchingPressureMovement.vanishExplosion = UPool.MyPool.GetObject("Exp_Vanish"); marchingPressureMovement.toTheMoonExplosion = UPool.MyPool.GetObject("Exp_ToTheMoon"); marchingPressureMovement.starrRaptureExplosion = UPool.MyPool.GetObject("Exp_StarrRapture"); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_Masochist")) { move.AddComponent<MasochistBehaviour>(); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_DopamineOverdose")) { move.AddComponent<DopamineOverdoseBehaviour>(); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_SwiftBurningAshes")) { move.GetComponentInChildren<SpawnObject>().objectToSpawn = UPool.MyPool.GetObject("Exp_SwiftBurningAshes"); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_BaptismWarfield")) { move.AddComponent<WarfieldBaptismMovement>().projectile = UPool.MyPool.GetObject("P_WarfieldRocket"); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_FlamingExecution")) { move.GetComponentInChildren<SpawnObject>().objectToSpawn = UPool.MyPool.GetObject("FlamingShotgunInfernalShepherdCollisionEffectNameTection"); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_BoilingHatred")) { move.AddComponent<BoilingHatredPassive>().indicationObject = Utilities.Utility.LoadBundleGameObject("BoilingHatredIndication"); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_InfernalDictator")) { AddInfernalDictator addInfernalDictator = move.AddComponent<AddInfernalDictator>(); addInfernalDictator.soundEffect = "Effects/FireArrowEffect"; addInfernalDictator.scorchedMaterial = Utilities.Utility.LoadBundleMaterial("ScorchedBrickMaterial"); addInfernalDictator.indicationObject = Utilities.Utility.LoadBundleGameObject("IndicationScorchEffectObject"); addInfernalDictator.effectBase = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Hatemark").GetComponentInChildren<DamageOverTimeEffect>(); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_AbominableEmbrace")) { AbominableEmbraceBehaviour abominableEmbraceBehaviour = move.AddComponent<AbominableEmbraceBehaviour>(); abominableEmbraceBehaviour.moveSpeed = 25f; abominableEmbraceBehaviour.cooldown = 0.1f; abominableEmbraceBehaviour.explosionTimer = 1f; abominableEmbraceBehaviour.activationRange = 25f; abominableEmbraceBehaviour.healthPercentage = 0.5f; abominableEmbraceBehaviour.possessedMultiplier = 10f; abominableEmbraceBehaviour.forceAddMultiplier = 4f; abominableEmbraceBehaviour.forceReductionPercentage = 0.85f; abominableEmbraceBehaviour.stormExplosion = UPool.MyPool.GetObject("Exp_AbominableEmbrace"); abominableEmbraceBehaviour.headObject = Utilities.Utility.LoadBundleGameObject("IceAbominationHead"); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_Mountmover")) { MountmoverBehaviour mountmoverBehaviour = move.AddComponent<MountmoverBehaviour>(); mountmoverBehaviour.explosionDelay = 7f; mountmoverBehaviour.bigExplosion = UPool.MyPool.GetObject("Exp_Cryocataclysm"); mountmoverBehaviour.bigIndication = Utilities.Utility.LoadBundleGameObject("CryocataclysmTargetIndication"); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_Cryocataclysm")) { CryocataclysmBehaviour cryocataclysmBehaviour = move.AddComponent<CryocataclysmBehaviour>(); cryocataclysmBehaviour.spawnAmount = 1; cryocataclysmBehaviour.rootAmount = 80; cryocataclysmBehaviour.rootDelay = 1f; cryocataclysmBehaviour.rootYOffset = 120f; cryocataclysmBehaviour.rootDelayOffset = 0.2f; cryocataclysmBehaviour.cameraShakeForce = 200f; cryocataclysmBehaviour.rootHorizontalOffzet = 200f; cryocataclysmBehaviour.pointObject = Utilities.Utility.LoadBundleGameObject("IcePointCryopathicCarnageEffectNameTection"); cryocataclysmBehaviour.unitEffectBase = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Cryopathy").GetComponentInChildren<Effect_IceArrow>(); } if ((Object)(object)move == (Object)(object)UPool.MyPool.GetObject("Move_Cryopathic")) { AddCryopathicBehaviour addCryopathicBehaviour = move.AddComponent<AddCryopathicBehaviour>(); addCryopathicBehaviour.colors = (Color[])(object)new Color[5] { new Color(0.3f, 0.65f, 0.8f), new Color(0.15f, 0.45f, 0.7f), new Color(0.5f, 0.75f, 0.8f), new Color(0.25f, 0.7f, 0.65f), new Color(0.4f, 0.6f, 0.75f) }; addCryopathicBehaviour.volume = 1f; addCryopathicBehaviour.pitch = 1.2f; addCryopathicBehaviour.disableOnNameDetection = "WFLS_"; addCryopathicBehaviour.soundEffect = "Effects/IceArrowEffect"; addCryopathicBehaviour.apostleSceneDetection = "09_Lvl1_Western_VC"; addCryopathicBehaviour.nameFilterDetection = "CryopathicCarnageEffectNameTection"; addCryopathicBehaviour.iceMaterial = Utilities.Utility.LoadBundleMaterial("MapBaseMaterial"); addCryopathicBehaviour.coldEffectMaterial = Utilities.Utility.LoadBundleMaterial("WinternIceMaterial"); addCryopathicBehaviour.frozenWaterMaterial = Utilities.Utility.LoadBundleMaterial("WinternWaterMaterial"); addCryopathicBehaviour.flameApostleSecretObject = Utilities.Utility.LoadBundleGameObject("FlameApostleSecretProp"); addCryopathicBehaviour.effectBase = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Cryopathy").GetComponentInChildren<Effect_IceArrow>(); } } public static void SetUnits(Unit unit, LandfallContentDatabase db) { //IL_0096: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Unknown result type (might be due to invalid IL or missing references) //IL_00e8: Unknown result type (might be due to invalid IL or missing references) //IL_0111: Unknown result type (might be due to invalid IL or missing references) //IL_013a: Unknown result type (might be due to invalid IL or missing references) //IL_0163: Unknown result type (might be due to invalid IL or missing references) //IL_018c: Unknown result type (might be due to invalid IL or missing references) //IL_01b5: Unknown result type (might be due to invalid IL or missing references) //IL_01de: Unknown result type (might be due to invalid IL or missing references) //IL_0206: Unknown result type (might be due to invalid IL or missing references) //IL_02fb: Unknown result type (might be due to invalid IL or missing references) //IL_0272: Unknown result type (might be due to invalid IL or missing references) //IL_027c: Expected O, but got Unknown //IL_0283: Unknown result type (might be due to invalid IL or missing references) //IL_028d: Expected O, but got Unknown //IL_02a2: Unknown result type (might be due to invalid IL or missing references) //IL_02c0: Unknown result type (might be due to invalid IL or missing references) //IL_0341: Unknown result type (might be due to invalid IL or missing references) //IL_034a: Unknown result type (might be due to invalid IL or missing references) //IL_0353: Unknown result type (might be due to invalid IL or missing references) //IL_035c: Unknown result type (might be due to invalid IL or missing references) //IL_0365: Unknown result type (might be due to invalid IL or missing references) //IL_036e: Unknown result type (might be due to invalid IL or missing references) //IL_069d: Unknown result type (might be due to invalid IL or missing references) //IL_06a2: Unknown result type (might be due to invalid IL or missing references) //IL_06a9: Unknown result type (might be due to invalid IL or missing references) //IL_06b9: Unknown result type (might be due to invalid IL or missing references) //IL_06be: Unknown result type (might be due to invalid IL or missing references) //IL_06c3: Unknown result type (might be due to invalid IL or missing references) //IL_06d3: Expected O, but got Unknown //IL_06df: Unknown result type (might be due to invalid IL or missing references) //IL_045a: Unknown result type (might be due to invalid IL or missing references) //IL_0464: Expected O, but got Unknown //IL_046b: Unknown result type (might be due to invalid IL or missing references) //IL_0475: Expected O, but got Unknown //IL_048a: Unknown result type (might be due to invalid IL or missing references) //IL_04a8: Unknown result type (might be due to invalid IL or missing references) //IL_05ef: Unknown result type (might be due to invalid IL or missing references) //IL_05f9: Expected O, but got Unknown //IL_0600: Unknown result type (might be due to invalid IL or missing references) //IL_060a: Expected O, but got Unknown //IL_061f: Unknown result type (might be due to invalid IL or missing references) //IL_063d: Unknown result type (might be due to invalid IL or missing references) //IL_0525: Unknown result type (might be due to invalid IL or missing references) //IL_0527: Unknown result type (might be due to invalid IL or missing references) //IL_052c: Unknown result type (might be due to invalid IL or missing references) //IL_052e: Unknown result type (might be due to invalid IL or missing references) //IL_072d: Unknown result type (might be due to invalid IL or missing references) //IL_0736: Unknown result type (might be due to invalid IL or missing references) //IL_073f: Unknown result type (might be due to invalid IL or missing references) //IL_0748: Unknown result type (might be due to invalid IL or missing references) //IL_0751: Unknown result type (might be due to invalid IL or missing references) //IL_075a: Unknown result type (might be due to invalid IL or missing references) if (unit.Entity.Name == "AbnormalEnvoy_Base") { AbnormEnvoyDeathEvent abnormEnvoyDeathEvent = ((Component)unit).gameObject.AddComponent<AbnormEnvoyDeathEvent>(); abnormEnvoyDeathEvent.bigLog = Utilities.Utility.LoadBundleGameObject("EnvoyRemainsBigLog"); abnormEnvoyDeathEvent.logs = Utilities.Utility.LoadBundleGameObject("EnvoyRemainsLogs"); Transform transform = ((Component)((Component)((Component)((Component)unit).transform.FindChild("Rigidbodies")).transform.FindChild("Mesh")).transform.FindChild("Armature")).transform; ((Component)transform.FindChild("M_Hip")).transform.localScale = new Vector3(0.8f, 0.8f, 0.8f); ((Component)transform.FindChild("M_Torso")).transform.localScale = new Vector3(0.8f, 1f, 0.8f); ((Component)transform.FindChild("M_Arm_Left")).transform.localScale = new Vector3(1f, 0.8f, 0.8f); ((Component)transform.FindChild("M_Arm_Right")).transform.localScale = new Vector3(1f, 0.8f, 0.8f); ((Component)transform.FindChild("M_Elbow_Left")).transform.localScale = new Vector3(1.2f, 0.8f, 0.8f); ((Component)transform.FindChild("M_Elbow_Right")).transform.localScale = new Vector3(1.2f, 0.8f, 0.8f); ((Component)transform.FindChild("M_Leg_Left")).transform.localScale = new Vector3(0.8f, 0.8f, 0.8f); ((Component)transform.FindChild("M_Leg_Right")).transform.localScale = new Vector3(0.8f, 0.8f, 0.8f); ((Component)transform.FindChild("M_Knee_Left")).transform.localScale = new Vector3(0.8f, 1f, 0.8f); ((Component)transform.FindChild("M_Knee_Right")).transform.localScale = new Vector3(0.8f, 1f, 0.8f); SkinnedMeshRenderer[] componentsInChildren = ((Component)unit).GetComponentsInChildren<SkinnedMeshRenderer>(); for (int i = 0; i < componentsInChildren.Length; i++) { ((Component)componentsInChildren[i]).gameObject.tag = "UnitMesh"; } } if (unit.Entity.Name == "FrigidHuntress_Base") { ((Component)unit).GetComponentInChildren<RigidbodyHolder>().randomizeRigidbodySizes = false; TeamColor[] componentsInChildren2 = ((Component)unit).GetComponentsInChildren<TeamColor>(); foreach (TeamColor obj in componentsInChildren2) { obj.redMaterial = new Material(obj.redMaterial); obj.blueMaterial = new Material(obj.blueMaterial); obj.redMaterial.color = new Color(1f, 0.8f, 0.8f); obj.blueMaterial.color = new Color(0.8f, 0.8f, 1f); } } ConfigurableJoint[] componentsInChildren3; if (unit.Entity.Name == "Skraegore_Base") { ((Component)unit).GetComponentInChildren<RigidbodyHolder>().randomizeRigidbodySizes = false; ConfigurableJointMotion val = (ConfigurableJointMotion)0; componentsInChildren3 = ((Component)unit).GetComponentsInChildren<ConfigurableJoint>(); foreach (ConfigurableJoint val2 in componentsInChildren3) { if (!((Object)((Component)val2).gameObject).name.Contains("Head") || !((Object)((Component)val2).gameObject).name.Contains("Torso")) { val2.xMotion = val; val2.yMotion = val; val2.zMotion = val; val2.angularXMotion = val; val2.angularYMotion = val; val2.angularZMotion = val; } } SkinnedMeshRenderer[] componentsInChildren4 = ((Component)unit).GetComponentsInChildren<SkinnedMeshRenderer>(); for (int k = 0; k < componentsInChildren4.Length; k++) { ((Component)componentsInChildren4[k]).gameObject.tag = "UnitMesh"; } } if (unit.Entity.Name == "DreamerUnit_Base") { ((Component)unit).GetComponentInChildren<RigidbodyHolder>().randomizeRigidbodySizes = false; SkinnedMeshRenderer[] componentsInChildren5 = ((Component)unit).GetComponentsInChildren<SkinnedMeshRenderer>(); for (int l = 0; l < componentsInChildren5.Length; l++) { ((Component)componentsInChildren5[l]).gameObject.tag = "UnitMesh"; } } if (unit.Entity.Name == "Miraculus_Base") { unit.neverStopRunning = true; unit.data.takeFallDamage = false; unit.targetingPriorityMultiplier = 2f; ((Component)unit).GetComponentInChildren<RigidbodyHolder>().randomizeRigidbodySizes = false; TeamColor[] componentsInChildren2 = ((Component)unit).GetComponentsInChildren<TeamColor>(); foreach (TeamColor obj2 in componentsInChildren2) { obj2.redMaterial = new Material(obj2.redMaterial); obj2.blueMaterial = new Material(obj2.blueMaterial); obj2.redMaterial.color = new Color(0.5f, 0.3f, 0.3f); obj2.blueMaterial.color = new Color(0.3f, 0.3f, 0.5f); } Material val3 = Utilities.Utility.LoadBundleMaterial("StarrGlowMaterial"); Color val4 = default(Color); ((Color)(ref val4))..ctor(2f, 2f, 2f); ((Component)unit).GetComponentInChildren<EyeSpawner>().randomizeEyes = false; ((Component)unit).GetComponentInChildren<EyeSpawner>().eyeObject = UPool.MyPool.GetObject("GooglyEye_Miraculus"); ParticleTeamColor[] componentsInChildren6 = ((Component)unit).GetComponentsInChildren<ParticleTeamColor>(); foreach (ParticleTeamColor obj3 in componentsInChildren6) { obj3.redMat = val3; obj3.blueMat = val3; obj3.redColor = val4; obj3.blueColor = val4; } ParticleSystem[] componentsInChildren7 = ((Component)unit).GetComponentsInChildren<ParticleSystem>(); foreach (ParticleSystem obj4 in componentsInChildren7) { obj4.startSize *= 10f; } ParticleSystemRenderer[] componentsInChildren8 = ((Component)unit).GetComponentsInChildren<ParticleSystemRenderer>(); for (int n = 0; n < componentsInChildren8.Length; n++) { ((Renderer)componentsInChildren8[n]).material = val3; } } if (unit.Entity.Name == "FlameApostle_Base") { unit.neverStopRunning = true; unit.data.takeFallDamage = false; unit.targetingPriorityMultiplier = 2f; ((Component)unit).GetComponentInChildren<RigidbodyHolder>().randomizeRigidbodySizes = false; TeamColor[] componentsInChildren2 = ((Component)unit).GetComponentsInChildren<TeamColor>(); foreach (TeamColor obj5 in componentsInChildren2) { obj5.redMaterial = new Material(obj5.redMaterial); obj5.blueMaterial = new Material(obj5.blueMaterial); obj5.redMaterial.color = new Color(0.5f, 0.3f, 0.3f); obj5.blueMaterial.color = new Color(0.3f, 0.3f, 0.5f); } } if (!(unit.Entity.Name == "Cryobomination_Base")) { return; } ((Component)unit).gameObject.AddComponent<NeverShowHealthBar>(); OnDeathFreeze onDeathFreeze = ((Component)unit).gameObject.AddComponent<OnDeathFreeze>(); onDeathFreeze.material = Utilities.Utility.LoadBundleMaterial("WinternIceMaterial"); onDeathFreeze.soundEffect = "Effects/IceArrowEffect"; onDeathFreeze.color = new UnitColorInstance { acceptWhenDead = true, color = new Color(0.05f, 0.2f, 0.2f), colorName = "Eff_Cryopathy" }; unit.targetingPriorityMultiplier = 50f; ConfigurableJointMotion val5 = (ConfigurableJointMotion)0; componentsInChildren3 = ((Component)unit).GetComponentsInChildren<ConfigurableJoint>(); foreach (ConfigurableJoint val6 in componentsInChildren3) { string name = ((Object)((Component)val6).gameObject).name; if (name.Contains("Knee") || name.Contains("Elbow") || name.Contains("Hip")) { val6.xMotion = val5; val6.yMotion = val5; val6.zMotion = val5; val6.angularXMotion = val5; val6.angularYMotion = val5; val6.angularZMotion = val5; } } SkinnedMeshRenderer[] componentsInChildren9 = ((Component)unit).GetComponentsInChildren<SkinnedMeshRenderer>(); for (int num = 0; num < componentsInChildren9.Length; num++) { ((Component)componentsInChildren9[num]).gameObject.tag = "UnitMesh"; } } public static void Init(LandfallContentDatabase db) { //IL_0066: Unknown result type (might be due to invalid IL or missing references) //IL_007b: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_013c: Unknown result type (might be due to invalid IL or missing references) //IL_0146: Expected O, but got Unknown //IL_0afc: Unknown result type (might be due to invalid IL or missing references) //IL_0b16: Expected O, but got Unknown //IL_0b7a: Unknown result type (might be due to invalid IL or missing references) //IL_0b94: Expected O, but got Unknown //IL_0d01: Unknown result type (might be due to invalid IL or missing references) //IL_0d1b: Expected O, but got Unknown //IL_0d4a: Unknown result type (might be due to invalid IL or missing references) //IL_0d64: Expected O, but got Unknown //IL_0d93: Unknown result type (might be due to invalid IL or missing references) //IL_0dad: Expected O, but got Unknown //IL_0eb0: Unknown result type (might be due to invalid IL or missing references) //IL_0eca: Expected O, but got Unknown //IL_0ef9: Unknown result type (might be due to invalid IL or missing references) //IL_0f13: Expected O, but got Unknown //IL_0f42: Unknown result type (might be due to invalid IL or missing references) //IL_0f5c: Expected O, but got Unknown //IL_1278: Unknown result type (might be due to invalid IL or missing references) //IL_1292: Expected O, but got Unknown //IL_12f6: Unknown result type (might be due to invalid IL or missing references) //IL_1310: Expected O, but got Unknown //IL_13a9: Unknown result type (might be due to invalid IL or missing references) //IL_13c3: Expected O, but got Unknown comment = "----------------------------------------------------------------------------------------------------------------------------"; comment = "Create Starting Object"; comment = "----------------------------------------------------------------------------------------------------------------------------"; Sprite val = Utilities.Utility.LoadBundleTextureToSprite("factionicon_winterland"); comment = "----------------------------------------------------------------------------------------------------------------------------"; comment = "Create Custom Faction"; comment = "----------------------------------------------------------------------------------------------------------------------------"; Faction val2 = Utilities.Utility.SetFactionHidden(SLMATool.CreateFaction("Winterland", (UnitBlueprint[])null, val, Utilities.Utility.IDChecker(Utilities.AssetType.Faction, 4123212))); val2.m_FactionCatagory = (FactionCatagory)0; val2.m_FactionColor = new Color(0.5f, 0.5f, 0.8f); val2.index = 4; comment = "----------------------------------------------------------------------------------------------------------------------------"; comment = "Create Custom Units"; comment = "----------------------------------------------------------------------------------------------------------------------------"; SLMATool.CreateUnit("Abnormal Envoy", (UnitBlueprint)null, val2, Utilities.Utility.LoadBundleTextureToSprite("icon_abnormalenvoy")); SLMATool.CreateUnit("Frigid Huntress", (UnitBlueprint)null, val2, Utilities.Utility.LoadBundleTextureToSprite("icon_frigidhuntress")); SLMATool.CreateUnit("Skrægore", (UnitBlueprint)null, val2, Utilities.Utility.LoadBundleTextureToSprite("icon_skrægore")); SLMATool.CreateUnit("Dreamful Oracle", (UnitBlueprint)null, val2, Utilities.Utility.LoadBundleTextureToSprite("icon_dreamfuloracle")); SLMATool.CreateUnit("Miraculus", (UnitBlueprint)null, val2, Utilities.Utility.LoadBundleTextureToSprite("icon_miraculus")); SLMATool.CreateUnit("Flame Apostle", (UnitBlueprint)null, Utilities.Utility.SetFactionHidden((Faction)SLMALoader.SDic["factions"]["Western"]), Utilities.Utility.LoadBundleTextureToSprite("icon_flameapostle")); SLMATool.CreateUnit("Cryobomination", (UnitBlueprint)null, val2, Utilities.Utility.LoadBundleTextureToSprite("icon_iceabomination")); comment = "----------------------------------------------------------------------------------------------------------------------------"; comment = "Custom Weapons"; comment = "----------------------------------------------------------------------------------------------------------------------------"; Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("EnvoyExtendedClaw", Utilities.Utility.LoadBundleGameObject("EnvoyExtendedClaw"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Weapon, 76435234), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntingLongbow", Utilities.Utility.LoadBundleGameObject("FrigidHuntingLongbow"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Weapon, 421422), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Throw_HaywireSickle", Utilities.Utility.LoadBundleGameObject("Throw_HaywireSickle"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Weapon, 6243433), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("OrderOfBlazesWeapon", Utilities.Utility.LoadBundleGameObject("OrderOfBlazesWeapon"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Weapon, 72345243), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Throw_SleepySand", Utilities.Utility.LoadBundleGameObject("Throw_SleepySand"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Weapon, 9743654), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("JoyousBlade", Utilities.Utility.LoadBundleGameObject("JoyousBlade"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Weapon, 76324151), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FireFistWeapon", Utilities.Utility.LoadBundleGameObject("FireFistWeapon"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Weapon, 73452532), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("UndeadLordGreatsword", Utilities.Utility.LoadBundleGameObject("UndeadLordGreatsword"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Weapon, 6546546), true), "Winterfest", (TagType)0); comment = "----------------------------------------------------------------------------------------------------------------------------"; comment = "Custom Clothing"; comment = "----------------------------------------------------------------------------------------------------------------------------"; Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntressArrows", Utilities.Utility.LoadBundleGameObject("FrigidHuntressArrows"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 5123213), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntressBoots", Utilities.Utility.LoadBundleGameObject("FrigidHuntressBoots"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 5123214), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntressHair", Utilities.Utility.LoadBundleGameObject("FrigidHuntressHair"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 5123215), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntressInnerShirt", Utilities.Utility.LoadBundleGameObject("FrigidHuntressInnerShirt"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 5123216), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntressLeftArmStocking", Utilities.Utility.LoadBundleGameObject("FrigidHuntressLeftArmStocking"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 5123217), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntressMask", Utilities.Utility.LoadBundleGameObject("FrigidHuntressMask"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 5123218), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntressMouthCover", Utilities.Utility.LoadBundleGameObject("FrigidHuntressMouthCover"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 5123219), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntressPants", Utilities.Utility.LoadBundleGameObject("FrigidHuntressPants"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 5123220), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntressRightGlove", Utilities.Utility.LoadBundleGameObject("FrigidHuntressRightGlove"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 5123221), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntressRightHandStocking", Utilities.Utility.LoadBundleGameObject("FrigidHuntressRightHandStocking"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 5123222), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntressTorsoArmor", Utilities.Utility.LoadBundleGameObject("FrigidHuntressTorsoArmor"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 5123223), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("SpawnEyes_FrigidHuntress", Utilities.Utility.LoadBundleGameObject("SpawnEyes_FrigidHuntress"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 62343323), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("SkraegoreStrawOldHat", Utilities.Utility.LoadBundleGameObject("SkraegoreStrawOldHat"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 12455123), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("SkraegoreScarecrowButchedMask", Utilities.Utility.LoadBundleGameObject("SkraegoreScarecrowButchedMask"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 52342343), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("SkraegoreRaggedShirt", Utilities.Utility.LoadBundleGameObject("SkraegoreRaggedShirt"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 6412342), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("DreamerHair", Utilities.Utility.LoadBundleGameObject("DreamerHair"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 62343243), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("SpawnEyes_Dreamer", Utilities.Utility.LoadBundleGameObject("SpawnEyes_Dreamer"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 85363454), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("ContagiousSmile", Utilities.Utility.LoadBundleGameObject("ContagiousSmile"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 605284341), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("SpawnEyes_Miraculus", Utilities.Utility.LoadBundleGameObject("SpawnEyes_Miraculus"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 12342412), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("GooglyEye_Miraculus", Utilities.Utility.LoadBundleGameObject("GooglyEye_Miraculus"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FireShepherdShouldersFierceArmor", Utilities.Utility.LoadBundleGameObject("FireShepherdShouldersFierceArmor"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 8363453), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FireShepherdPant", Utilities.Utility.LoadBundleGameObject("FireShepherdPant"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 73252343), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FireShepherdHat", Utilities.Utility.LoadBundleGameObject("FireShepherdHat"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 13567134), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FireShepherdGloves", Utilities.Utility.LoadBundleGameObject("FireShepherdGloves"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 84624533), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FireShepherdGasMask", Utilities.Utility.LoadBundleGameObject("FireShepherdGasMask"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 98475634), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FireShepherdCover", Utilities.Utility.LoadBundleGameObject("FireShepherdCover"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 9534643), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FireShepherdCoat", Utilities.Utility.LoadBundleGameObject("FireShepherdCoat"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 95775463), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FireShepherdChestArmor", Utilities.Utility.LoadBundleGameObject("FireShepherdChestArmor"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 96134342), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FireShepherdBoots", Utilities.Utility.LoadBundleGameObject("FireShepherdBoots"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 97846535), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FireShepherdBelt", Utilities.Utility.LoadBundleGameObject("FireShepherdBelt"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 83453543), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("SpawnEyes_FireShepherd", Utilities.Utility.LoadBundleGameObject("SpawnEyes_FireShepherd"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 72453532), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("CryobominationRobe", Utilities.Utility.LoadBundleGameObject("CryobominationRobe"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 845624523), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("CryobominationCrown", Utilities.Utility.LoadBundleGameObject("CryobominationCrown"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Prop, 634523423), true), "Winterfest", (TagType)0); comment = "----------------------------------------------------------------------------------------------------------------------------"; comment = "Custom Abilities"; comment = "----------------------------------------------------------------------------------------------------------------------------"; Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_EnvoyOfMadness", Utilities.Utility.LoadBundleGameObject("Move_EnvoyOfMadness"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 62343343), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_EnvoyBite", Utilities.Utility.LoadBundleGameObject("Move_EnvoyBite"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 73454323), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_WildJump", Utilities.Utility.LoadBundleGameObject("Move_WildJump"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 32131231), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_GazingPierces", (GameObject)SLMALoader.SDic["moves"]["Head_up"], true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 7353234), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_ArrowStep", Utilities.Utility.LoadBundleGameObject("Move_ArrowStep"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 6524234), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_Lifereaping", (GameObject)SLMALoader.SDic["moves"]["Head_up"], true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 64532434), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_BountifulHarvest", Utilities.Utility.LoadBundleGameObject("Move_BountifulHarvest"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 734544345), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_Bedridden", Utilities.Utility.LoadBundleGameObject("Move_Bedridden"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 6234232), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_SirenLullaby", Utilities.Utility.LoadBundleGameObject("Move_SirenLullaby"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 6234523), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_NightmarishPersistence", Utilities.Utility.LoadBundleGameObject("Move_NightmarishPersistence"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 74253432), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_ConstellationAura", Utilities.Utility.LoadBundleGameObject("Move_ConstellationAura"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 52343232), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_ShiningStar", Utilities.Utility.LoadBundleGameObject("Move_ShiningStar"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 123132412), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_MarchingPressure", (GameObject)SLMALoader.SDic["moves"]["Head_up"], true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 432453231), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_Masochist", (GameObject)SLMALoader.SDic["moves"]["Head_up"], true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 542343242), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_DopamineOverdose", (GameObject)SLMALoader.SDic["moves"]["Head_up"], true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 532443223), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_HeavyBreathing", Utilities.Utility.LoadBundleGameObject("Move_HeavyBreathing"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 8456523), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_FlamingExecution", Utilities.Utility.LoadBundleGameObject("Move_FlamingExecution"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 9845563), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_SwiftBurningAshes", Utilities.Utility.LoadBundleGameObject("Move_SwiftBurningAshes"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 456343534), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_BaptismWarfield", Utilities.Utility.LoadBundleGameObject("Move_BaptismWarfield"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 235363433), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_BoilingHatred", (GameObject)SLMALoader.SDic["moves"]["Head_up"], true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 8456544), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_InfernalDictator", (GameObject)SLMALoader.SDic["moves"]["Head_up"], true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 46754634), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_Cryopathic", (GameObject)SLMALoader.SDic["moves"]["Head_up"], true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 6546542), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_Cryocataclysm", Utilities.Utility.LoadBundleGameObject("Move_Cryocataclysm"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 12456132), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_WinterStormFog", Utilities.Utility.LoadBundleGameObject("Move_WinterStormFog"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 43534532), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_AbominableEmbrace", Utilities.Utility.LoadBundleGameObject("Move_AbominableEmbrace"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 736344345), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Move_Mountmover", Utilities.Utility.LoadBundleGameObject("Move_Mountmover"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Ability, 534234232), true), "Winterfest", (TagType)0); comment = "----------------------------------------------------------------------------------------------------------------------------"; comment = "Custom Projectiles"; comment = "----------------------------------------------------------------------------------------------------------------------------"; Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("P_EnvoyOfMadness", Utilities.Utility.LoadBundleGameObject("P_EnvoyOfMadness"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Projectile, 6324321), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("P_FrigidBow", Utilities.Utility.LoadBundleGameObject("P_FrigidBow"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Projectile, 5324323), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("P_HaywireSickle", Utilities.Utility.LoadBundleGameObject("P_HaywireSickle"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Projectile, 62443223), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("P_SleepySand", Utilities.Utility.LoadBundleGameObject("P_SleepySand"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Projectile, 7345345), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("P_UltiStarr", Utilities.Utility.LoadBundleGameObject("P_UltiStarr"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Projectile, 313241232), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("P_Firefist", Utilities.Utility.LoadBundleGameObject("P_Firefist"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Projectile, 65463452), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("P_WarfieldRocket", Utilities.Utility.LoadBundleGameObject("P_WarfieldRocket"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Projectile, 62453423), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("P_FlamingShotgun", Utilities.Utility.LoadBundleGameObject("P_FlamingShotgun"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Projectile, 62482342), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("P_FireTsunamiOrder", Utilities.Utility.LoadBundleGameObject("P_FireTsunamiOrder"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.Projectile, 734135432), true), "Winterfest", (TagType)0); comment = "----------------------------------------------------------------------------------------------------------------------------"; comment = "Custom Unit Bases"; comment = "----------------------------------------------------------------------------------------------------------------------------"; Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FlameApostle_Base", (GameObject)SLMALoader.SDic["bases"]["Humanoid"], true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.UnitBase, 62432332), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Skraegore_Base", Utilities.Utility.LoadBundleGameObject("SkraegoreUnitBase"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.UnitBase, 735344534), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FrigidHuntress_Base", (GameObject)SLMALoader.SDic["bases"]["Humanoid"], true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.UnitBase, 56123212), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("DreamerUnit_Base", Utilities.Utility.LoadBundleGameObject("DreamerUnitBase"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.UnitBase, 623424332), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("AbnormalEnvoy_Base", Utilities.Utility.LoadBundleGameObject("AbnormalEnvoyUnitBase"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.UnitBase, 62432432), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Miraculus_Base", (GameObject)SLMALoader.SDic["bases"]["Humanoid"], true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.UnitBase, 78216192), true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Cryobomination_Base", Utilities.Utility.LoadBundleGameObject("CryobominationUnitBase"), true, (HideFlags)52, val, Utilities.Utility.IDChecker(Utilities.AssetType.UnitBase, 6543421), true), "Winterfest", (TagType)0); comment = "----------------------------------------------------------------------------------------------------------------------------"; comment = "Custom Effect"; comment = "----------------------------------------------------------------------------------------------------------------------------"; Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Eff_Paranoid", Utilities.Utility.LoadBundleGameObject("Eff_Paranoid"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Eff_FrigidIce", Utilities.Utility.LoadBundleGameObject("Eff_FrigidIce"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Eff_Insomnia", Utilities.Utility.LoadBundleGameObject("Eff_Insomnia"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Eff_Lullabied", Utilities.Utility.LoadBundleGameObject("Eff_Lullabied"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Eff_RunningDarkness", Utilities.Utility.LoadBundleGameObject("Eff_RunningDarkness"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Eff_Hatemark", Utilities.Utility.LoadBundleGameObject("Eff_Hatemark"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Eff_StarrFire", Utilities.Utility.LoadBundleGameObject("Eff_StarrFire"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Eff_Cryopathy", Utilities.Utility.LoadBundleGameObject("Eff_Cryopathy"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); comment = "----------------------------------------------------------------------------------------------------------------------------"; comment = "Custom Explosions"; comment = "----------------------------------------------------------------------------------------------------------------------------"; Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_WildJump", Utilities.Utility.LoadBundleGameObject("Exp_WildJump"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_BountifulHarvest", Utilities.Utility.LoadBundleGameObject("Exp_BountifulHarvest"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_Haywire", Utilities.Utility.LoadBundleGameObject("Exp_Haywire"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_Vanish", Utilities.Utility.LoadBundleGameObject("Exp_Vanish"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_ToTheMoon", Utilities.Utility.LoadBundleGameObject("Exp_ToTheMoon"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_StarrRapture", Utilities.Utility.LoadBundleGameObject("Exp_StarrRapture"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_WarfieldRocket", Utilities.Utility.LoadBundleGameObject("Exp_Cryocataclysm"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_FieryDescend", Utilities.Utility.LoadBundleGameObject("Exp_FieryDescend"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_BurningTornado", Utilities.Utility.LoadBundleGameObject("Exp_BurningTornado"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_SwiftBurningAshes", Utilities.Utility.LoadBundleGameObject("Exp_SwiftBurningAshes"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_FlamingShotgun", Utilities.Utility.LoadBundleGameObject("Exp_FlamingShotgun"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_Firefist", Utilities.Utility.LoadBundleGameObject("Exp_Firefist"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_AbominableEmbrace", Utilities.Utility.LoadBundleGameObject("Exp_AbominableEmbrace"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("Exp_Cryocataclysm", Utilities.Utility.LoadBundleGameObject("Exp_Cryocataclysm"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); comment = "----------------------------------------------------------------------------------------------------------------------------"; comment = "Custom Object"; comment = "----------------------------------------------------------------------------------------------------------------------------"; Utilities.Utility.ItemCategorizer.SetTag(UPool.MyPool.AddObject("FlamingShotgunInfernalShepherdCollisionEffectNameTection", Utilities.Utility.LoadBundleGameObject("FlamingShotgunInfernalShepherdCollisionEffectNameTection"), true, (HideFlags)52, val, 0, true), "Winterfest", (TagType)0); } public static void SetWeapon(GameObject weapon, MeleeWeapon melee, RangeWeapon range, LandfallContentDatabase db) { //IL_036e: Unknown result type (might be due to invalid IL or missing references) //IL_0373: Unknown result type (might be due to invalid IL or missing references) //IL_0389: Unknown result type (might be due to invalid IL or missing references) //IL_038e: Unknown result type (might be due to invalid IL or missing references) //IL_03a4: Unknown result type (might be due to invalid IL or missing references) //IL_03a9: Unknown result type (might be due to invalid IL or missing references) //IL_03bf: Unknown result type (might be due to invalid IL or missing references) //IL_03c4: Unknown result type (might be due to invalid IL or missing references) //IL_03da: Unknown result type (might be due to invalid IL or missing references) //IL_03df: Unknown result type (might be due to invalid IL or missing references) //IL_026b: Unknown result type (might be due to invalid IL or missing references) //IL_0270: Unknown result type (might be due to invalid IL or missing references) //IL_0286: Unknown result type (might be due to invalid IL or missing references) //IL_028b: Unknown result type (might be due to invalid IL or missing references) //IL_02a1: Unknown result type (might be due to invalid IL or missing references) //IL_02a6: Unknown result type (might be due to invalid IL or missing references) //IL_02bc: Unknown result type (might be due to invalid IL or missing references) //IL_02c1: Unknown result type (might be due to invalid IL or missing references) //IL_02d7: Unknown result type (might be due to invalid IL or missing references) //IL_02dc: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)weapon == (Object)(object)UPool.MyPool.GetObject("FrigidHuntingLongbow")) { weapon.AddComponent<AimedRigidbodyAtTargetBehaviour>(); range.ObjectToSpawn = UPool.MyPool.GetObject("P_FrigidBow"); } if ((Object)(object)weapon == (Object)(object)UPool.MyPool.GetObject("Throw_HaywireSickle")) { range.ObjectToSpawn = UPool.MyPool.GetObject("P_HaywireSickle"); } if ((Object)(object)weapon == (Object)(object)UPool.MyPool.GetObject("Throw_SleepySand")) { range.ObjectToSpawn = UPool.MyPool.GetObject("P_SleepySand"); } if ((Object)(object)weapon == (Object)(object)UPool.MyPool.GetObject("JoyousBlade")) { weapon.AddComponent<MoreWeaponHandling>(); weapon.AddComponent<SwingStarrFallBehaviour>().explosion = UPool.MyPool.GetObject("Exp_ToTheMoon"); } if ((Object)(object)weapon == (Object)(object)UPool.MyPool.GetObject("FireFistWeapon")) { weapon.GetComponentInChildren<MeleeWeaponAddEffect>().EffectPrefab = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Hatemark").GetComponentInChildren<DamageOverTimeEffect>(); range.ObjectToSpawn = UPool.MyPool.GetObject("P_Firefist"); } if ((Object)(object)weapon == (Object)(object)UPool.MyPool.GetObject("OrderOfBlazesWeapon")) { weapon.GetComponentInChildren<MeleeWeaponAddEffect>().EffectPrefab = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Hatemark").GetComponentInChildren<DamageOverTimeEffect>(); OrderOfBlazesFunction orderOfBlazesFunction = weapon.AddComponent<OrderOfBlazesFunction>(); orderOfBlazesFunction.objectObeyPrefab = UPool.MyPool.GetObject("Exp_FieryDescend"); orderOfBlazesFunction.objectHaltPrefab = UPool.MyPool.GetObject("P_FireTsunamiOrder"); orderOfBlazesFunction.objectBurnPrefab = UPool.MyPool.GetObject("Exp_BurningTornado"); orderOfBlazesFunction.objectInfiltratePrefab = UPool.MyPool.GetObject("Exp_SwiftBurningAshes"); orderOfBlazesFunction.soundEffect = "Effects/Shout"; orderOfBlazesFunction.pitch = 1f; orderOfBlazesFunction.volume = 1f; } if (!((Object)(object)weapon == (Object)(object)UPool.MyPool.GetObject("UndeadLordGreatsword"))) { return; } Collider[] componentsInChildren = weapon.GetComponentsInChildren<Collider>(); ProjToIceBehaviour projToIceBehaviour = default(ProjToIceBehaviour); CryopathicCollision cryopathicCollision = default(CryopathicCollision); for (int i = 0; i < componentsInChildren.Length; i++) { if (!((Component)componentsInChildren[i]).gameObject.TryGetComponent<ProjToIceBehaviour>(ref projToIceBehaviour)) { ((Component)componentsInChildren[i]).gameObject.AddComponent<ProjToIceBehaviour>().iceMaterial = Utilities.Utility.LoadBundleMaterial("WinternIceMaterial"); } Transform parent = ((Component)componentsInChildren[i]).transform.parent; if (Object.op_Implicit((Object)(object)parent) && !((Component)parent).gameObject.TryGetComponent<CryopathicCollision>(ref cryopathicCollision)) { CryopathicCollision cryopathicCollision2 = ((Component)parent).gameObject.AddComponent<CryopathicCollision>(); cryopathicCollision2.colors = (Color[])(object)new Color[5] { new Color(0.3f, 0.65f, 0.8f), new Color(0.15f, 0.45f, 0.7f), new Color(0.5f, 0.75f, 0.8f), new Color(0.25f, 0.7f, 0.65f), new Color(0.4f, 0.6f, 0.75f) }; cryopathicCollision2.pitch = 1f; cryopathicCollision2.volume = 1f; cryopathicCollision2.soundEffect = "Effects/IceArrowEffect"; cryopathicCollision2.nameFilterDetection = "CryopathicCarnageEffectNameTection"; cryopathicCollision2.iceMaterial = Utilities.Utility.LoadBundleMaterial("WinternIceMaterial"); cryopathicCollision2.unitEffectBase = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Cryopathy").GetComponentInChildren<Effect_IceArrow>(); } } CryopathicCollision cryopathicCollision3 = weapon.AddComponent<CryopathicCollision>(); cryopathicCollision3.colors = (Color[])(object)new Color[5] { new Color(0.3f, 0.65f, 0.8f), new Color(0.15f, 0.45f, 0.7f), new Color(0.5f, 0.75f, 0.8f), new Color(0.25f, 0.7f, 0.65f), new Color(0.4f, 0.6f, 0.75f) }; cryopathicCollision3.pitch = 1f; cryopathicCollision3.volume = 1f; cryopathicCollision3.soundEffect = "Effects/IceArrowEffect"; cryopathicCollision3.nameFilterDetection = "CryopathicCarnageEffectNameTection"; cryopathicCollision3.iceMaterial = Utilities.Utility.LoadBundleMaterial("WinternIceMaterial"); cryopathicCollision3.unitEffectBase = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Cryopathy").GetComponentInChildren<Effect_IceArrow>(); } public static void SetExplosion(GameObject explosion) { if ((Object)(object)explosion == (Object)(object)UPool.MyPool.GetObject("Exp_SwiftBurningAshes")) { explosion.GetComponentInChildren<AddObjectEffect>().EffectPrefab = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Hatemark").GetComponentInChildren<DamageOverTimeEffect>(); } if ((Object)(object)explosion == (Object)(object)UPool.MyPool.GetObject("Exp_FieryDescend")) { explosion.GetComponentInChildren<AddObjectEffect>().EffectPrefab = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Hatemark").GetComponentInChildren<DamageOverTimeEffect>(); } if ((Object)(object)explosion == (Object)(object)UPool.MyPool.GetObject("Exp_BurningTornado")) { explosion.GetComponentInChildren<AddObjectEffect>().EffectPrefab = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Hatemark").GetComponentInChildren<DamageOverTimeEffect>(); } if ((Object)(object)explosion == (Object)(object)UPool.MyPool.GetObject("Exp_Firefist")) { explosion.GetComponentInChildren<AddObjectEffect>().EffectPrefab = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Hatemark").GetComponentInChildren<DamageOverTimeEffect>(); } if ((Object)(object)explosion == (Object)(object)UPool.MyPool.GetObject("Exp_AbominableEmbrace")) { explosion.GetComponentInChildren<AddObjectEffect>().EffectPrefab = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Cryopathy").GetComponentInChildren<Effect_IceArrow>(); } } public static void SetProjectile(GameObject proj, ProjectileHit projhit, LandfallContentDatabase db) { //IL_0109: Unknown result type (might be due to invalid IL or missing references) //IL_010e: Unknown result type (might be due to invalid IL or missing references) //IL_0115: Unknown result type (might be due to invalid IL or missing references) //IL_012b: Expected O, but got Unknown if ((Object)(object)proj == (Object)(object)UPool.MyPool.GetObject("P_FrigidBow")) { CatchOrAddComponent(typeof(SpeedingArrowBehaviour), proj); } if ((Object)(object)proj == (Object)(object)UPool.MyPool.GetObject("P_SleepySand")) { CatchOrAddComponent(typeof(SlowingProjectile), proj); } if ((Object)(object)proj == (Object)(object)UPool.MyPool.GetObject("P_UltiStarr")) { ((StarrProjEnlargeBehaviour)(object)CatchOrAddComponent(typeof(StarrProjEnlargeBehaviour), proj)).explosion = UPool.MyPool.GetObject("Exp_StarrRapture"); } if ((Object)(object)proj == (Object)(object)UPool.MyPool.GetObject("P_FireTsunamiOrder")) { CatchOrAddComponent(typeof(SlowingProjectile), proj); AddObjectEffect[] componentsInChildren = proj.GetComponentsInChildren<AddObjectEffect>(); for (int i = 0; i < componentsInChildren.Length; i++) { componentsInChildren[i].EffectPrefab = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Hatemark").GetComponentInChildren<DamageOverTimeEffect>(); } } if ((Object)(object)proj == (Object)(object)UPool.MyPool.GetObject("P_Firefist")) { projhit.objectsToSpawn = (ObjectToSpawn[])(object)new ObjectToSpawn[1] { new ObjectToSpawn { destroy = true, objectToSpawn = UPool.MyPool.GetObject("Exp_Firefist") } }; proj.GetComponentInChildren<AddObjectEffect>().EffectPrefab = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Hatemark").GetComponentInChildren<DamageOverTimeEffect>(); } } public static void SetAllGameObject(GameObject gameObject) { if ((Object)(object)gameObject == (Object)(object)UPool.MyPool.GetObject("GooglyEye_Miraculus")) { CatchOrAddComponent(typeof(RandomEyeSizeBehaviours), gameObject); } if ((Object)(object)gameObject == (Object)(object)UPool.MyPool.GetObject("Eff_Hatemark")) { CatchOrAddComponent(typeof(HateMarkEffectBehaviour), gameObject); } if ((Object)(object)gameObject == (Object)(object)UPool.MyPool.GetObject("Exp_BurningTornado")) { gameObject.GetComponentInChildren<AddObjectEffect>().EffectPrefab = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Hatemark").GetComponentInChildren<DamageOverTimeEffect>(); } if ((Object)(object)gameObject == (Object)(object)UPool.MyPool.GetObject("FlamingShotgunInfernalShepherdCollisionEffectNameTection")) { ((BurningExecutionShotgunBehaviour)(object)CatchOrAddComponent(typeof(BurningExecutionShotgunBehaviour), gameObject)).projectile = UPool.MyPool.GetObject("P_FlamingShotgun"); } if (!((Object)(object)gameObject == (Object)(object)UPool.MyPool.GetObject("Exp_Cryocataclysm"))) { return; } BoxCollider[] componentsInChildren = gameObject.GetComponentsInChildren<BoxCollider>(); for (int i = 0; i < componentsInChildren.Length; i++) { Transform parent = ((Component)componentsInChildren[i]).transform.parent; if (Object.op_Implicit((Object)(object)parent)) { CryocataclysmCollision obj = (CryocataclysmCollision)(object)CatchOrAddComponent(typeof(CryocataclysmCollision), ((Component)parent).gameObject); obj.unitEffectBase = (UnitEffectBase)(object)UPool.MyPool.GetObject("Eff_Cryopathy").GetComponentInChildren<Effect_IceArrow>(); obj.soundEffect = "Effects/IceArrowEffect"; } } } public static Component CatchOrAddComponent(Type typeToSeek, GameObject obj) { Component val = obj.GetComponentInChildren(typeToSeek, true); if ((Object)(object)val == (Object)null) { val = obj.AddComponent(typeToSeek); } return val; } public static void SetClothes(GameObject cloth, LandfallContentDatabase db) { if ((Object)(object)cloth == (Object)(object)UPool.MyPool.GetObject("SpawnEyes_Miraculus")) { cloth.GetComponentInChildren<EyeSpawner>().eyeObject = UPool.MyPool.GetObject("GooglyEye_Miraculus"); } } } [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInPlugin("GeeztJeez.Winterfest", "WinterFest", "1.0.6")] internal class Loader : BaseUnityPlugin { public AssetBundle assetBundle; public AssetBundle sceneBundle; private void Awake() { ApplyHarmony(); ((MonoBehaviour)this).StartCoroutine(Call()); } private IEnumerator Call() { yield return (object)new WaitUntil((Func<bool>)(() => (Object)(object)Object.FindObjectOfType<ServiceLocator>() != (Object)null)); yield return (object)new WaitUntil((Func<bool>)(() => ServiceLocator.GetService<ISaveLoaderService>() != null)); Debug.Log((object)"Loading WinterFest!"); SLMALoader.GetInstance(); LandfallContentDatabase landfallContentDatabase = ContentDatabase.Instance().LandfallContentDatabase; Utilities.bundle = (assetBundle = LoadBundle("winterfestassetsbundle")); sceneBundle = LoadBundle("winterfestscenesbundle"); List<MapAsset> list = ((MapAsset[])typeof(LandfallContentDatabase).GetField("m_orderedMapAssets", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(landfallContentDatabase)).ToList(); Dictionary<DatabaseID, int> dictionary = (Dictionary<DatabaseID, int>)typeof(LandfallContentDatabase).GetField("m_mapAssetIndexLookup", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(landfallContentDatabase); foreach (MapAsset allMapAsset in GetAllMapAssets(assetBundle)) { if (!list.Contains(allMapAsset) && !dictionary.ContainsKey(allMapAsset.Entity.GUID)) { list.Add(allMapAsset); dictionary.Add(allMapAsset.Entity.GUID, list.IndexOf(allMapAsset)); Debug.Log((object)("Added the map asset named " + allMapAsset.MapName)); } } foreach (SoundBank allSoundBank in GetAllSoundBanks(assetBundle)) { if (((Object)allSoundBank).name.Contains("Sound")) { SoundBank soundBank = ServiceLocator.GetService<SoundPlayer>().soundBank; SoundBankCategory[] categories = allSoundBank.Categories; for (int i = 0; i < categories.Length; i++) { categories[i].categoryMixerGroup = soundBank.Categories[0].categoryMixerGroup; } List<SoundBankCategory> list2 = soundBank.Categories.ToList(); list2.AddRange(allSoundBank.Categories); soundBank.Categories = list2.ToArray(); } if (!((Object)allSoundBank).name.Contains("Music")) { continue; } SoundBank bank = ServiceLocator.GetService<MusicHandler>().bank; List<SoundBankCategory> list3 = bank.Categories.ToList(); list3.AddRange(allSoundBank.Categories); SoundBankCategory[] categories2 = allSoundBank.Categories; foreach (SoundBankCategory val in categories2) { SoundEffectInstance[] soundEffects = val.soundEffects; foreach (SoundEffectInstance val2 in soundEffects) { SongInstance val3 = new SongInstance(); val3.clip = val2.clipTypes[0].clips[0]; val3.soundEffectInstance = val2; val3.songRef = val.categoryName + "/" + val2.soundRef; ServiceLocator.GetService<MusicHandler>().m_songs.Add(val3.songRef, val3); } } bank.Categories = list3.ToArray(); } typeof(LandfallContentDatabase).GetField("m_orderedMapAssets", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(landfallContentDatabase, list.ToArray()); typeof(LandfallContentDatabase).GetField("m_mapAssetIndexLookup", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(landfallContentDatabase, dictionary); UManager.Init(landfallContentDatabase); GameObject[] array = Resources.FindObjectsOfTypeAll<GameObject>(); for (int l = 0; l < array.Length; l++) { if (Object.op_Implicit((Object)(object)array[l].GetComponent<PropItem>())) { UManager.SetClothes(array[l], landfallContentDatabase); } if (Object.op_Implicit((Object)(object)array[l].GetComponent<Unit>())) { UManager.SetUnits(array[l].GetComponent<Unit>(), landfallContentDatabase); } if (Object.op_Implicit((Object)(object)array[l].GetComponent<Explosion>())) { UManager.SetExplosion(array[l]); } if (Object.op_Implicit((Object)(object)array[l].GetComponent<ProjectileHit>())) { UManager.SetProjectile(array[l], array[l].GetComponent<ProjectileHit>(), landfallContentDatabase); } if (Object.op_Implicit((Object)(object)array[l].GetComponent<WeaponItem>())) { UManager.SetWeapon(array[l], array[l].GetComponent<MeleeWeapon>(), array[l].GetComponent<RangeWeapon>(), landfallContentDatabase); } if (Object.op_Implicit((Object)(object)array[l].GetComponent<SpecialAbility>())) { UManager.SetMoves(array[l], landfallContentDatabase); } UManager.SetAllGameObject(array[l]); } UnitBlueprint[] array2 = Resources.FindObjectsOfTypeAll<UnitBlueprint>(); for (int m = 0; m < array2.Length; m++) { UManager.SetBlueprint(array2[m], landfallContentDatabase); array2[m].Validate(); } SceneManager.sceneLoaded += SceneLoaded; Debug.Log((object)"Loaded WinterFest Successfully!"); } public void SceneLoaded(Scene scene, LoadSceneMode loadSceneMode) { //IL_003f: 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_00a7: Unknown result type (might be due to invalid IL or missing references) //IL_0148: Unknown result type (might be due to invalid IL or missing references) //IL_0152: Expected O, but got Unknown //IL_0219: Unknown result type (might be due to invalid IL or missing references) //IL_021e: Unknown result type (might be due to invalid IL or missing references) //IL_0294: Unknown result type (might be due to invalid IL or missing references) //IL_0299: Unknown result type (might be due to invalid IL or missing references) try { if (((Scene)(ref scene)).name == "04_Sandbox_Viking_VC") { Object.Instantiate<GameObject>(Utilities.Utility.LoadBundleGameObject("WinternSecretProp")); } if (((Scene)(ref scene)).name == "WFLS_WinternLandscape") { RenderSettings.fog = false; RenderSettings.fogColor = Color.white; RenderSettings.fogStartDistance = 0f; RenderSettings.fogEndDistance = 100000f; RenderSettings.fogMode = (FogMode)2; RenderSettings.fogDensity = 0.5f; RenderSettings.ambientMode = (AmbientMode)3; RenderSettings.ambientLight = new Color(0.2f, 0.3f, 0.3f); QualitySettings.shadowProjection = (ShadowProjection)1; QualitySettings.shadowCascades = 4; QualitySettings.shadowCascade4Split = new Vector3(0.1f, 0.2f, 0.5f); QualitySettings.shadows = (ShadowQuality)2; QualitySettings.shadowResolution = (ShadowResolution)3; QualitySettings.shadowDistance = 400f; } if (!((Scene)(ref scene)).name.Contains("WFLS_")) { return; } GameObject val = null; MapSettings val2 = null; GameObject[] rootGameObjects = ((Scene)(ref scene)).GetRootGameObjects(); foreach (GameObject val3 in rootGameObjects) { if (((Object)val3).name == "AStar") { val = val3; } if (Object.op_Implicit((Object)(object)val3.GetComponent<MapSettings>())) { val2 = val3.GetComponent<MapSettings>(); } if (((Object)val3).name == "AddLightBehaviour") { val3.AddComponent<AddWinternLightZoneBehaviour>().lightObject = (GameObject)assetBundle.LoadAsset("WinterfestAttachUnitLight"); } } if (!((Object)(object)val != (Object)null) || !((Object)(object)val2 != (Object)null)) { return; } AstarPath componentInChildren = val.GetComponentInChildren<AstarPath>(true); if (!((Object)(object)componentInChildren != (Object)null)) { return; } if (componentInChildren.data.graphs != null) { NavGraph[] graphs = componentInChildren.data.graphs; foreach (NavGraph val4 in graphs) { if (val4 != null) { componentInChildren.data.RemoveGraph(val4); } } } Debug.Log((object)"[Winterfest] Scanning graph for AstarPath."); NavGraph obj = componentInChildren.data.AddGraph(typeof(RecastGraph)); RecastGraph val5 = (RecastGraph)(object)((obj is RecastGraph) ? obj : null); if (val5 != null) { float num = val2.m_mapRadius * 2f; ((NavmeshBase)val5).forcedBoundsSize = new Vector3(num, num * val2.mapRadiusYMultiplier, num); val5.rasterizeTrees = true; val5.rasterizeMeshes = true; val5.rasterizeTerrain = true; val5.rasterizeColliders = true; val5.minRegionSize = num * num; val5.characterRadius = 0.3f; val5.walkableClimb = 1f; val5.walkableHeight = 1f; val5.cellSize = num * num; val5.mask = LayerMask.op_Implicit(LayerMask.GetMask(new string[1] { "Map" })); componentInChildren.Scan((NavGraph[])null); } Debug.Log((object)"[Winterfest] AstarPath graph scanned successfully."); } catch (Exception arg) { Debug.LogError((object)$"[Winterfest] SceneLoaded failed: {arg}"); } } public AssetBundle LoadBundle(string assetBundleName) { Stream manifestResourceStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(assetBundleName); if (manifestResourceStream == null) { return null; } if (!manifestResourceStream.CanRead) { return null; } return AssetBundle.LoadFromStream(manifestResourceStream); } private void ApplyHarmony() { //IL_0005: Unknown result type (might be due to invalid IL or missing references) try { new Harmony("WinterFest").PatchAll(Assembly.GetExecutingAssembly()); Debug.Log((object)"[WinterFest] Harmony patched successfully!"); } catch (Exception ex) { Debug.LogError((object)("[WinterFest] Harmony patch failed: " + ex)); Debug.Log((object)"Please contact Geezt Jeez or try reloading the game for proper installation..."); } } public static List<MapAsset> GetAllMapAssets(AssetBundle bundle) { List<MapAsset> list = new List<MapAsset>(); if ((Object)(object)bundle == (Object)null) { Debug.LogWarning((object)"[AssetBundleUtils] Bundle is null!"); return list; } string[] allAssetNames = bundle.GetAllAssetNames(); foreach (string text in allAssetNames) { Object obj = bundle.LoadAsset(text, typeof(MapAsset)); MapAsset val = (MapAsset)(object)((obj is MapAsset) ? obj : null); if ((Object)(object)val != (Object)null) { list.Add(val); } } Debug.Log((object)$"[AssetBundleUtils] Loaded {list.Count} MapAssets from bundle '{((Object)bundle).name}'."); return list; } public static List<SoundBank> GetAllSoundBanks(AssetBundle bundle) { List<SoundBank> list = new List<SoundBank>(); if ((Object)(object)bundle == (Object)null) { Debug.LogWarning((object)"[AssetBundleUtils] Bundle is null!"); return list; } string[] allAssetNames = bundle.GetAllAssetNames(); foreach (string text in allAssetNames) { Object obj = bundle.LoadAsset(text, typeof(SoundBank)); SoundBank val = (SoundBank)(object)((obj is SoundBank) ? obj : null); if ((Object)(object)val != (Object)null) { list.Add(val); } } Debug.Log((object)$"[AssetBundleUtils] Loaded {list.Count} SoundBanks from bundle '{((Object)bundle).name}'."); return list; } private void LateUpdate() { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0005: Unknown result type (might be due to invalid IL or missing references) Scene activeScene = SceneManager.GetActiveScene(); if (!((Scene)(ref activeScene)).name.Contains("WFLS_")) { return; } float farClipPlane = 100000f; if ((Object)(object)Camera.main != (Object)null) { Camera.main.farClipPlane = farClipPlane; } Camera[] allCameras = Camera.allCameras; foreach (Camera val in allCameras) { if ((Object)(object)val != (Object)null) { val.farClipPlane = farClipPlane; } } } } } namespace WinterfestFunctions { public class SwingStarrFallBehaviour : MonoBehaviour { private MeleeWeapon weapon; private Unit unit; public float counter; public Vector3 position; public GameObject explosion; public int spawnAmount = 5; public float cooldown = 1f; public void Start() { weapon = ((Component)this).GetComponentInChildren<MeleeWeapon>(); unit = ((Component)((Component)this).transform.root).GetComponentInChildren<Unit>(); } public void Update() { //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_008e: Unknown result type (might be due to invalid IL or missing references) //IL_0093: Unknown result type (might be due to invalid IL or missing references) //IL_0098: Unknown result type (might be due to invalid IL or missing references) //IL_00aa: Expected O, but got Unknown //IL_00ba: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Unknown result type (might be due to invalid IL or missing references) if (!Object.op_Implicit((Object)(object)weapon) || !Object.op_Implicit((Object)(object)unit) || !Object.op_Implicit((Object)(object)unit.data) || unit.data.Dead) { return; } counter += Time.deltaTime; if (counter >= cooldown && weapon.isSwinging) { counter = 0f; TeamHolder val = new TeamHolder { team = unit.Team, spawner = ((Component)unit).gameObject }; for (int i = 0; i < spawnAmount; i++) { TeamHolder.AddTeamHolder(Object.Instantiate<GameObject>(explosion, RandomVector3Strike(), Quaternion.identity, (Transform)null), unit, val); } } } private Vector3 RandomVector3Strike(float offset = 40f) { //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_0033: Unknown result type (might be due to invalid IL or missing references) //IL_0050: Unknown result type (might be due to invalid IL or missing references) //IL_0066: Unknown result type (might be due to invalid IL or missing references) float num = unit.data.mainRig.position.x + Random.Range(0f - offset, offset); float num2 = unit.data.mainRig.position.y + offset; float num3 = unit.data.mainRig.position.z + Random.Range(0f - offset, offset); return new Vector3(num, num2, num3); } } public class StormLineEditor : MonoBehaviour { public float highestY = 6000000f; public float lowestY = -6000000f; private void Update() { //IL_0052: Unknown result type (might be due to invalid IL or missing references) //IL_00ae: Unknown result type (might be due to invalid IL or missing references) ((Component)((Component)((Component)((Component)this).transform.FindChild("Storm")).gameObject.transform.FindChild("LineEffect")).gameObject.transform.FindChild("T1")).gameObject.transform.localPosition = new Vector3(0f, 0f, highestY); ((Component)((Component)((Component)((Component)this).transform.FindChild("Storm")).gameObject.transform.FindChild("LineEffect")).gameObject.transform.FindChild("T2")).gameObject.transform.localPosition = new Vector3(0f, 0f, lowestY); } } public class StarrProjEnlargeBehaviour : MonoBehaviour { public GameObject explosion; private float delay = 1f; public float counter; public float cooldown = 0.05f; public float enlargeRate = 0.2f; public string soundEffect = "Effects/VoidMonarchTransformation"; public float pitch = 1f; public float volume = 1f; public void Update() { //IL_001d: Unknown result type (might be due to invalid IL or missing references) Enlarge(); ServiceLocator.GetService<SoundPlayer>().PlaySoundEffect(soundEffect, volume, ((Component)this).transform.position, (MaterialType)0, ((Component)this).gameObject.transform, pitch); } private void Enlarge() { //IL_0027: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_003c: Unknown result type (might be due to invalid IL or missing references) counter += Time.deltaTime; if (counter >= cooldown) { Transform transform = ((Component)this).transform; transform.localScale += Vector3.one * enlargeRate; } } public IEnumerator<WaitForSeconds> StarrShatterExplosion(float delay, GameObject explosion) { yield return new WaitForSeconds(delay); TeamHolder.AddTeamHolder(Object.Instantiate<GameObject>(explosion, ((Component)this).transform.position, Quaternion.identity), ((Component)this).gameObject); Object.Destroy((Object)(object)((Component)this).gameObject); } public void Start() { ((MonoBehaviour)this).StartCoroutine((IEnumerator)StarrShatterExplosion(delay, explosion)); } } public class DopamineOverdoseBehaviour : MonoBehaviour { private Unit unit; private float counter; public void Start() { unit = ((Component)((Component)this).transform.root).GetComponentInChildren<Unit>(); } public void Update() { //IL_009b: Unknown result type (might be due to invalid IL or missing references) if (Object.op_Implicit((Object)(object)unit) && Object.op_Implicit((Objec