Please disclose if your mod was created primarily using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of Fee Fi Fo Fum v0.1.9
Giants.dll
Decompiled 2 years agousing System; using System.Collections.Generic; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Versioning; using BepInEx; using BepInEx.Configuration; using BepInEx.Logging; using Jotunn; using Jotunn.Configs; using Jotunn.Entities; using Jotunn.Managers; using Jotunn.Utils; using SpawnThat.Spawners; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: AssemblyTitle("Wildlife")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("Wildlife")] [assembly: AssemblyCopyright("Copyright © 2022")] [assembly: AssemblyTrademark("")] [assembly: ComVisible(false)] [assembly: Guid("f247181f-9da0-443a-8cd2-7b38a43a08c5")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] [assembly: AssemblyVersion("1.0.0.0")] namespace Giants; [BepInPlugin("horemvore.FeeFiFoFum", "Fee Fi Fo Fum", "0.1.9")] [BepInIncompatibility("Azumatt.AzuDevMod")] [NetworkCompatibility(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] internal class giantsBundle : BaseUnityPlugin { public const string PluginGUID = "horemvore.FeeFiFoFum"; public const string PluginName = "Fee Fi Fo Fum"; public const string PluginVersion = "0.1.9"; public static bool isModded = true; public static GameObject Giant1; public static GameObject Giant2; public static GameObject Giant3; public static GameObject Giant4; public static GameObject Giant5; public static GameObject Giant6; public static GameObject HGAttack1; public static GameObject HGAttack2; public static GameObject HGAttack3; public static GameObject MGAttack1; public static GameObject MGAttack2; public static GameObject MGAttack3; public static GameObject GAttack1; public static GameObject GAttack2; public static GameObject GAttack3; public static GameObject FGAttack1; public static GameObject FGAttack2; public static GameObject FGAttack3; public static GameObject JAttack1; public static GameObject JAttack2; public static GameObject JAttack3; public static GameObject JAttack4; public static GameObject JAttack5; public static GameObject FrGAttack1; public static GameObject FrGAttack2; public static GameObject FrGAttack3; public static GameObject SFX1; public static GameObject SFX2; public static GameObject SFX3; public static GameObject SFX4; public static GameObject SFX5; public static GameObject SFX6; public static GameObject VFX1; public static GameObject VFX2; public static GameObject VFX3; public static GameObject VFX4; public static GameObject VFX5; public static GameObject Item1; public static GameObject Projectile1; public static GameObject Projectile2; public static GameObject FX1; public static GameObject FX2; public static GameObject GiantTrophy1; public static GameObject GiantTrophy2; public static GameObject GiantTrophy3; public static GameObject GiantTrophy4; public static GameObject GiantTrophy5; public static GameObject GiantTrophy6; public ConfigEntry<bool> SpawnsEnable; public AssetBundle GiantBundle; private CustomLocalization Localization; internal static ManualLogSource Log; private void Awake() { Log = ((BaseUnityPlugin)this).Logger; CreateConfigurationValues(); AddLocalizations(); LoadBundle(); LoadAssets(); AddGiants(); PrefabManager.OnVanillaPrefabsAvailable += FixSFX; try { if (SpawnsEnable.Value) { SpawnerConfigurationManager.OnConfigure += ConfigureBiomeSpawners; } } catch (Exception value) { Console.WriteLine(value); } } private void AddLocalizations() { try { Localization = LocalizationManager.Instance.GetLocalization(); CustomLocalization localization = Localization; string text = "English"; localization.AddTranslation(ref text, new Dictionary<string, string> { { "item_trophy_jotunn_hg", "Jörð" }, { "item_trophy_jotunn_desc_hg", "Animated trophy of a Jörð" }, { "item_trophy_firegiant_hg", "Sucroch" }, { "item_trophy_firegiant_desc_hg", "Animated trophy of a Sucroch" }, { "item_trophy_frostgiant_hg", "Kólga" }, { "item_trophy_frostgiant_desc_hg", "Animated trophy of a Kólga" }, { "item_trophy_giant_hg", "Grímnir" }, { "item_trophy_giant_desc_hg", "Animated trophy of a Grímnir" }, { "item_trophy_mountaingiant_hg", "Mímir" }, { "item_trophy_mountaingiant_desc_hg", "Animated trophy of a Mímir" }, { "item_trophy_hillgiant_hg", "Starkad" }, { "item_trophy_hillgiant_desc_hg", "Animated trophy of a Starkad" }, { "enemy_jotunn_hg", "Jörð" }, { "enemy_firegiant_hg", "Sucroch" }, { "enemy_frostgiant_hg", "Kólga" }, { "enemy_giant_hg", "Grímnir" }, { "enemy_mountaingiant_hg", "Mímir" }, { "enemy_hillgiant_hg", "Starkad" } }); } catch (Exception arg) { ((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding Localication for Deds Army: {arg}"); } } public void CreateConfigurationValues() { //IL_002e: 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_003c: Expected O, but got Unknown //IL_003c: Unknown result type (might be due to invalid IL or missing references) //IL_0046: Expected O, but got Unknown ((BaseUnityPlugin)this).Config.SaveOnConfigSet = true; SpawnsEnable = ((BaseUnityPlugin)this).Config.Bind<bool>("Default Spawns", "Enable", true, new ConfigDescription("Set to false if you want to setup your own spawns via a 3rd party mod.", (AcceptableValueBase)null, new object[1] { (object)new ConfigurationManagerAttributes { IsAdminOnly = true } })); SynchronizationManager.OnConfigurationSynchronized += delegate(object obj, ConfigurationSynchronizationEventArgs attr) { if (attr.InitialSynchronization) { Logger.LogMessage((object)"Initial Config sync event received for Fee Fi Fo"); } else { Logger.LogMessage((object)"Config sync event received for Fee Fi Fo"); } }; } public void LoadBundle() { GiantBundle = AssetUtils.LoadAssetBundleFromResources("giants", Assembly.GetExecutingAssembly()); } private void LoadAssets() { //IL_0014: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Expected O, but got Unknown //IL_0039: Unknown result type (might be due to invalid IL or missing references) //IL_003f: Expected O, but got Unknown //IL_0060: Unknown result type (might be due to invalid IL or missing references) //IL_0067: Expected O, but got Unknown //IL_0089: Unknown result type (might be due to invalid IL or missing references) //IL_0090: Expected O, but got Unknown //IL_00b2: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Expected O, but got Unknown //IL_00db: Unknown result type (might be due to invalid IL or missing references) //IL_00e2: Expected O, but got Unknown //IL_031b: Unknown result type (might be due to invalid IL or missing references) //IL_0322: Expected O, but got Unknown //IL_0339: Unknown result type (might be due to invalid IL or missing references) //IL_0340: Expected O, but got Unknown //IL_0357: Unknown result type (might be due to invalid IL or missing references) //IL_035e: Expected O, but got Unknown //IL_0375: Unknown result type (might be due to invalid IL or missing references) //IL_037c: Expected O, but got Unknown //IL_0393: Unknown result type (might be due to invalid IL or missing references) //IL_039a: Expected O, but got Unknown //IL_03b1: Unknown result type (might be due to invalid IL or missing references) //IL_03b8: Expected O, but got Unknown //IL_03cf: Unknown result type (might be due to invalid IL or missing references) //IL_03d6: Expected O, but got Unknown //IL_03ed: Unknown result type (might be due to invalid IL or missing references) //IL_03f4: Expected O, but got Unknown //IL_040b: Unknown result type (might be due to invalid IL or missing references) //IL_0412: Expected O, but got Unknown //IL_0429: Unknown result type (might be due to invalid IL or missing references) //IL_0430: Expected O, but got Unknown //IL_0447: Unknown result type (might be due to invalid IL or missing references) //IL_044e: Expected O, but got Unknown //IL_0465: Unknown result type (might be due to invalid IL or missing references) //IL_046c: Expected O, but got Unknown //IL_0483: Unknown result type (might be due to invalid IL or missing references) //IL_048a: Expected O, but got Unknown //IL_04a1: Unknown result type (might be due to invalid IL or missing references) //IL_04a8: Expected O, but got Unknown //IL_04bf: Unknown result type (might be due to invalid IL or missing references) //IL_04c6: Expected O, but got Unknown //IL_04dd: Unknown result type (might be due to invalid IL or missing references) //IL_04e4: Expected O, but got Unknown //IL_04fb: Unknown result type (might be due to invalid IL or missing references) //IL_0502: Expected O, but got Unknown //IL_0519: Unknown result type (might be due to invalid IL or missing references) //IL_0520: Expected O, but got Unknown //IL_0537: Unknown result type (might be due to invalid IL or missing references) //IL_053e: Expected O, but got Unknown //IL_0555: Unknown result type (might be due to invalid IL or missing references) //IL_055c: Expected O, but got Unknown //IL_059d: Unknown result type (might be due to invalid IL or missing references) //IL_05a4: Expected O, but got Unknown //IL_05bb: Unknown result type (might be due to invalid IL or missing references) //IL_05c2: Expected O, but got Unknown //IL_05ff: Unknown result type (might be due to invalid IL or missing references) //IL_0606: Expected O, but got Unknown //IL_0619: Unknown result type (might be due to invalid IL or missing references) //IL_0620: Expected O, but got Unknown //IL_06b1: Unknown result type (might be due to invalid IL or missing references) //IL_06b8: Expected O, but got Unknown //IL_06cb: Unknown result type (might be due to invalid IL or missing references) //IL_06d2: Expected O, but got Unknown //IL_06e5: Unknown result type (might be due to invalid IL or missing references) //IL_06ec: Expected O, but got Unknown //IL_06ff: Unknown result type (might be due to invalid IL or missing references) //IL_0706: Expected O, but got Unknown //IL_0719: Unknown result type (might be due to invalid IL or missing references) //IL_0720: Expected O, but got Unknown //IL_0733: Unknown result type (might be due to invalid IL or missing references) //IL_073a: Expected O, but got Unknown //IL_07b6: Unknown result type (might be due to invalid IL or missing references) //IL_07bd: Expected O, but got Unknown //IL_07d0: Unknown result type (might be due to invalid IL or missing references) //IL_07d7: Expected O, but got Unknown //IL_07ea: Unknown result type (might be due to invalid IL or missing references) //IL_07f1: Expected O, but got Unknown //IL_0804: Unknown result type (might be due to invalid IL or missing references) //IL_080b: Expected O, but got Unknown //IL_081e: Unknown result type (might be due to invalid IL or missing references) //IL_0825: Expected O, but got Unknown //IL_084d: Unknown result type (might be due to invalid IL or missing references) //IL_0854: Expected O, but got Unknown //IL_087c: Unknown result type (might be due to invalid IL or missing references) //IL_0883: Expected O, but got Unknown //IL_08ab: Unknown result type (might be due to invalid IL or missing references) //IL_08b2: Expected O, but got Unknown //IL_08da: Unknown result type (might be due to invalid IL or missing references) //IL_08e1: Expected O, but got Unknown //IL_0909: Unknown result type (might be due to invalid IL or missing references) //IL_0910: Expected O, but got Unknown //IL_0938: Unknown result type (might be due to invalid IL or missing references) //IL_093f: Expected O, but got Unknown //IL_0967: Unknown result type (might be due to invalid IL or missing references) //IL_096e: Expected O, but got Unknown GameObject val = GiantBundle.LoadAsset<GameObject>("FireGiant_RD_HG"); CustomPrefab val2 = new CustomPrefab(val, true); PrefabManager.Instance.AddPrefab(val2); GameObject val3 = GiantBundle.LoadAsset<GameObject>("FrostGiant_RD_HG"); CustomPrefab val4 = new CustomPrefab(val3, true); PrefabManager.Instance.AddPrefab(val4); GameObject val5 = GiantBundle.LoadAsset<GameObject>("Giant_RD_HG"); CustomPrefab val6 = new CustomPrefab(val5, true); PrefabManager.Instance.AddPrefab(val6); GameObject val7 = GiantBundle.LoadAsset<GameObject>("HillGiant_RD_HG"); CustomPrefab val8 = new CustomPrefab(val7, true); PrefabManager.Instance.AddPrefab(val8); GameObject val9 = GiantBundle.LoadAsset<GameObject>("Jotunn_RD_HG"); CustomPrefab val10 = new CustomPrefab(val9, true); PrefabManager.Instance.AddPrefab(val10); GameObject val11 = GiantBundle.LoadAsset<GameObject>("MountainGiant_RD_HG"); CustomPrefab val12 = new CustomPrefab(val11, true); PrefabManager.Instance.AddPrefab(val12); Giant1 = GiantBundle.LoadAsset<GameObject>("HillGiant_HG"); Giant2 = GiantBundle.LoadAsset<GameObject>("MountainGiant_HG"); Giant3 = GiantBundle.LoadAsset<GameObject>("Giant_HG"); Giant4 = GiantBundle.LoadAsset<GameObject>("FrostGiant_HG"); Giant5 = GiantBundle.LoadAsset<GameObject>("Jotunn_HG"); Giant6 = GiantBundle.LoadAsset<GameObject>("FireGiant_HG"); HGAttack1 = GiantBundle.LoadAsset<GameObject>("HillGiant_Attack1_HG"); HGAttack2 = GiantBundle.LoadAsset<GameObject>("HillGiant_Attack2_HG"); HGAttack3 = GiantBundle.LoadAsset<GameObject>("HillGiant_Attack3_HG"); MGAttack1 = GiantBundle.LoadAsset<GameObject>("MountainGiant_Attack1_HG"); MGAttack2 = GiantBundle.LoadAsset<GameObject>("MountainGiant_Attack2_HG"); MGAttack3 = GiantBundle.LoadAsset<GameObject>("MountainGiant_Attack3_HG"); GAttack1 = GiantBundle.LoadAsset<GameObject>("Giant_Attack1_HG"); GAttack2 = GiantBundle.LoadAsset<GameObject>("Giant_Attack2_HG"); GAttack3 = GiantBundle.LoadAsset<GameObject>("Giant_Attack3_HG"); FGAttack1 = GiantBundle.LoadAsset<GameObject>("FrostGiant_Attack1_HG"); FGAttack2 = GiantBundle.LoadAsset<GameObject>("FrostGiant_Attack2_HG"); FGAttack3 = GiantBundle.LoadAsset<GameObject>("FrostGiant_Attack3_HG"); JAttack1 = GiantBundle.LoadAsset<GameObject>("Jotunn_Attack1_HG"); JAttack2 = GiantBundle.LoadAsset<GameObject>("Jotunn_Attack2_HG"); JAttack3 = GiantBundle.LoadAsset<GameObject>("Jotunn_Attack3_HG"); JAttack4 = GiantBundle.LoadAsset<GameObject>("Jotunn_AttackSpawn_HG"); JAttack5 = GiantBundle.LoadAsset<GameObject>("Jotunn_AttackJump_HG"); FrGAttack1 = GiantBundle.LoadAsset<GameObject>("FireGiant_Attack1_HG"); FrGAttack2 = GiantBundle.LoadAsset<GameObject>("FireGiant_Attack2_HG"); FrGAttack3 = GiantBundle.LoadAsset<GameObject>("FireGiant_Attack3_HG"); GameObject hGAttack = HGAttack1; CustomPrefab val13 = new CustomPrefab(hGAttack, false); PrefabManager.Instance.AddPrefab(val13); GameObject hGAttack2 = HGAttack2; CustomPrefab val14 = new CustomPrefab(hGAttack2, false); PrefabManager.Instance.AddPrefab(val14); GameObject hGAttack3 = HGAttack3; CustomPrefab val15 = new CustomPrefab(hGAttack3, false); PrefabManager.Instance.AddPrefab(val15); GameObject mGAttack = MGAttack1; CustomPrefab val16 = new CustomPrefab(mGAttack, false); PrefabManager.Instance.AddPrefab(val16); GameObject mGAttack2 = MGAttack2; CustomPrefab val17 = new CustomPrefab(mGAttack2, false); PrefabManager.Instance.AddPrefab(val17); GameObject mGAttack3 = MGAttack3; CustomPrefab val18 = new CustomPrefab(mGAttack3, false); PrefabManager.Instance.AddPrefab(val18); GameObject gAttack = GAttack1; CustomPrefab val19 = new CustomPrefab(gAttack, false); PrefabManager.Instance.AddPrefab(val19); GameObject gAttack2 = GAttack2; CustomPrefab val20 = new CustomPrefab(gAttack2, false); PrefabManager.Instance.AddPrefab(val20); GameObject gAttack3 = GAttack3; CustomPrefab val21 = new CustomPrefab(gAttack3, false); PrefabManager.Instance.AddPrefab(val21); GameObject fGAttack = FGAttack1; CustomPrefab val22 = new CustomPrefab(fGAttack, false); PrefabManager.Instance.AddPrefab(val22); GameObject fGAttack2 = FGAttack2; CustomPrefab val23 = new CustomPrefab(fGAttack2, false); PrefabManager.Instance.AddPrefab(val23); GameObject fGAttack3 = FGAttack3; CustomPrefab val24 = new CustomPrefab(fGAttack3, false); PrefabManager.Instance.AddPrefab(val24); GameObject jAttack = JAttack1; CustomPrefab val25 = new CustomPrefab(jAttack, false); PrefabManager.Instance.AddPrefab(val25); GameObject jAttack2 = JAttack2; CustomPrefab val26 = new CustomPrefab(jAttack2, false); PrefabManager.Instance.AddPrefab(val26); GameObject jAttack3 = JAttack3; CustomPrefab val27 = new CustomPrefab(jAttack3, false); PrefabManager.Instance.AddPrefab(val27); GameObject jAttack4 = JAttack4; CustomPrefab val28 = new CustomPrefab(jAttack4, false); PrefabManager.Instance.AddPrefab(val28); GameObject jAttack5 = JAttack5; CustomPrefab val29 = new CustomPrefab(jAttack5, false); PrefabManager.Instance.AddPrefab(val29); GameObject frGAttack = FrGAttack1; CustomPrefab val30 = new CustomPrefab(frGAttack, false); PrefabManager.Instance.AddPrefab(val30); GameObject frGAttack2 = FrGAttack2; CustomPrefab val31 = new CustomPrefab(frGAttack2, false); PrefabManager.Instance.AddPrefab(val31); GameObject frGAttack3 = FrGAttack3; CustomPrefab val32 = new CustomPrefab(frGAttack3, false); PrefabManager.Instance.AddPrefab(val32); Projectile1 = GiantBundle.LoadAsset<GameObject>("Jotunn_Spawn_HG"); Projectile2 = GiantBundle.LoadAsset<GameObject>("AoE_Jotunn_HG"); GameObject projectile = Projectile1; CustomPrefab val33 = new CustomPrefab(projectile, false); PrefabManager.Instance.AddPrefab(val33); GameObject projectile2 = Projectile2; CustomPrefab val34 = new CustomPrefab(projectile2, false); PrefabManager.Instance.AddPrefab(val34); FX1 = GiantBundle.LoadAsset<GameObject>("FX_Backstab_HG"); FX2 = GiantBundle.LoadAsset<GameObject>("FX_Crit_HG"); CustomPrefab val35 = new CustomPrefab(FX1, false); PrefabManager.Instance.AddPrefab(val35); CustomPrefab val36 = new CustomPrefab(FX2, false); PrefabManager.Instance.AddPrefab(val36); SFX1 = GiantBundle.LoadAsset<GameObject>("SFX_GiantAlert_HG"); SFX2 = GiantBundle.LoadAsset<GameObject>("SFX_GiantAttack_HG"); SFX3 = GiantBundle.LoadAsset<GameObject>("SFX_GiantDeath_HG"); SFX4 = GiantBundle.LoadAsset<GameObject>("SFX_GiantHit_HG"); SFX5 = GiantBundle.LoadAsset<GameObject>("SFX_GiantIdle_HG"); SFX6 = GiantBundle.LoadAsset<GameObject>("SFX_GiantFootstep_DoD"); CustomPrefab val37 = new CustomPrefab(SFX1, false); PrefabManager.Instance.AddPrefab(val37); CustomPrefab val38 = new CustomPrefab(SFX2, false); PrefabManager.Instance.AddPrefab(val38); CustomPrefab val39 = new CustomPrefab(SFX3, false); PrefabManager.Instance.AddPrefab(val39); CustomPrefab val40 = new CustomPrefab(SFX4, false); PrefabManager.Instance.AddPrefab(val40); CustomPrefab val41 = new CustomPrefab(SFX5, false); PrefabManager.Instance.AddPrefab(val41); CustomPrefab val42 = new CustomPrefab(SFX6, false); PrefabManager.Instance.AddPrefab(val42); VFX1 = GiantBundle.LoadAsset<GameObject>("VFX_Blood_Hit_HG"); VFX2 = GiantBundle.LoadAsset<GameObject>("VFX_Corpse_Destruction_HG"); VFX3 = GiantBundle.LoadAsset<GameObject>("VFX_HitSparks_HG"); VFX4 = GiantBundle.LoadAsset<GameObject>("VFX_GiantArrive_HG"); VFX5 = GiantBundle.LoadAsset<GameObject>("VFX_JotunnLand_HG"); CustomPrefab val43 = new CustomPrefab(VFX1, false); PrefabManager.Instance.AddPrefab(val43); CustomPrefab val44 = new CustomPrefab(VFX2, false); PrefabManager.Instance.AddPrefab(val44); CustomPrefab val45 = new CustomPrefab(VFX3, false); PrefabManager.Instance.AddPrefab(val45); CustomPrefab val46 = new CustomPrefab(VFX4, false); PrefabManager.Instance.AddPrefab(val46); CustomPrefab val47 = new CustomPrefab(VFX5, false); PrefabManager.Instance.AddPrefab(val47); Item1 = GiantBundle.LoadAsset<GameObject>("HillGiantSword_HG"); CustomItem val48 = new CustomItem(Item1, false); ItemManager.Instance.AddItem(val48); GiantTrophy1 = GiantBundle.LoadAsset<GameObject>("Trophy_HillGiant_HG"); CustomItem val49 = new CustomItem(GiantTrophy1, false); ItemManager.Instance.AddItem(val49); GiantTrophy2 = GiantBundle.LoadAsset<GameObject>("Trophy_MountainGiant_HG"); CustomItem val50 = new CustomItem(GiantTrophy2, false); ItemManager.Instance.AddItem(val50); GiantTrophy3 = GiantBundle.LoadAsset<GameObject>("Trophy_Giant_HG"); CustomItem val51 = new CustomItem(GiantTrophy3, false); ItemManager.Instance.AddItem(val51); GiantTrophy4 = GiantBundle.LoadAsset<GameObject>("Trophy_FrostGiant_HG"); CustomItem val52 = new CustomItem(GiantTrophy4, false); ItemManager.Instance.AddItem(val52); GiantTrophy5 = GiantBundle.LoadAsset<GameObject>("Trophy_Jotunn_HG"); CustomItem val53 = new CustomItem(GiantTrophy5, false); ItemManager.Instance.AddItem(val53); GiantTrophy6 = GiantBundle.LoadAsset<GameObject>("Trophy_FireGiant_HG"); CustomItem val54 = new CustomItem(GiantTrophy6, false); ItemManager.Instance.AddItem(val54); } private void AddGiants() { //IL_0008: Unknown result type (might be due to invalid IL or missing references) //IL_000f: Expected O, but got Unknown //IL_0019: Unknown result type (might be due to invalid IL or missing references) //IL_001e: Unknown result type (might be due to invalid IL or missing references) //IL_002a: Unknown result type (might be due to invalid IL or missing references) //IL_0032: Unknown result type (might be due to invalid IL or missing references) //IL_003a: Unknown result type (might be due to invalid IL or missing references) //IL_0047: Expected O, but got Unknown //IL_0049: Unknown result type (might be due to invalid IL or missing references) //IL_004e: Unknown result type (might be due to invalid IL or missing references) //IL_005a: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_006c: Unknown result type (might be due to invalid IL or missing references) //IL_0079: Expected O, but got Unknown //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_008c: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_009c: Unknown result type (might be due to invalid IL or missing references) //IL_00a9: Expected O, but got Unknown //IL_00ab: Unknown result type (might be due to invalid IL or missing references) //IL_00b0: Unknown result type (might be due to invalid IL or missing references) //IL_00bc: Unknown result type (might be due to invalid IL or missing references) //IL_00c4: Unknown result type (might be due to invalid IL or missing references) //IL_00cc: Unknown result type (might be due to invalid IL or missing references) //IL_00d9: Expected O, but got Unknown //IL_00db: Unknown result type (might be due to invalid IL or missing references) //IL_00e0: Unknown result type (might be due to invalid IL or missing references) //IL_00ec: Unknown result type (might be due to invalid IL or missing references) //IL_00f4: Unknown result type (might be due to invalid IL or missing references) //IL_00fc: Unknown result type (might be due to invalid IL or missing references) //IL_0109: Expected O, but got Unknown //IL_0110: Unknown result type (might be due to invalid IL or missing references) //IL_0116: Expected O, but got Unknown //IL_0128: Unknown result type (might be due to invalid IL or missing references) //IL_012f: Expected O, but got Unknown //IL_0139: Unknown result type (might be due to invalid IL or missing references) //IL_013e: Unknown result type (might be due to invalid IL or missing references) //IL_014a: Unknown result type (might be due to invalid IL or missing references) //IL_0152: Unknown result type (might be due to invalid IL or missing references) //IL_015a: Unknown result type (might be due to invalid IL or missing references) //IL_0167: Expected O, but got Unknown //IL_0169: Unknown result type (might be due to invalid IL or missing references) //IL_016e: Unknown result type (might be due to invalid IL or missing references) //IL_017a: Unknown result type (might be due to invalid IL or missing references) //IL_0183: Unknown result type (might be due to invalid IL or missing references) //IL_018f: Unknown result type (might be due to invalid IL or missing references) //IL_019c: Expected O, but got Unknown //IL_019e: Unknown result type (might be due to invalid IL or missing references) //IL_01a3: Unknown result type (might be due to invalid IL or missing references) //IL_01af: Unknown result type (might be due to invalid IL or missing references) //IL_01b7: Unknown result type (might be due to invalid IL or missing references) //IL_01bf: Unknown result type (might be due to invalid IL or missing references) //IL_01cc: Expected O, but got Unknown //IL_01ce: Unknown result type (might be due to invalid IL or missing references) //IL_01d3: Unknown result type (might be due to invalid IL or missing references) //IL_01df: Unknown result type (might be due to invalid IL or missing references) //IL_01e7: Unknown result type (might be due to invalid IL or missing references) //IL_01ef: Unknown result type (might be due to invalid IL or missing references) //IL_01fc: Expected O, but got Unknown //IL_01fe: Unknown result type (might be due to invalid IL or missing references) //IL_0203: Unknown result type (might be due to invalid IL or missing references) //IL_020f: Unknown result type (might be due to invalid IL or missing references) //IL_0217: Unknown result type (might be due to invalid IL or missing references) //IL_021f: Unknown result type (might be due to invalid IL or missing references) //IL_022c: Expected O, but got Unknown //IL_0233: Unknown result type (might be due to invalid IL or missing references) //IL_0239: Expected O, but got Unknown //IL_024b: Unknown result type (might be due to invalid IL or missing references) //IL_0252: Expected O, but got Unknown //IL_025c: Unknown result type (might be due to invalid IL or missing references) //IL_0261: Unknown result type (might be due to invalid IL or missing references) //IL_026d: Unknown result type (might be due to invalid IL or missing references) //IL_0275: Unknown result type (might be due to invalid IL or missing references) //IL_027d: Unknown result type (might be due to invalid IL or missing references) //IL_028a: Expected O, but got Unknown //IL_028c: Unknown result type (might be due to invalid IL or missing references) //IL_0291: Unknown result type (might be due to invalid IL or missing references) //IL_029d: 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_02af: Unknown result type (might be due to invalid IL or missing references) //IL_02bc: Expected O, but got Unknown //IL_02be: Unknown result type (might be due to invalid IL or missing references) //IL_02c3: Unknown result type (might be due to invalid IL or missing references) //IL_02cf: 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_02df: Unknown result type (might be due to invalid IL or missing references) //IL_02ec: Expected O, but got Unknown //IL_02ee: Unknown result type (might be due to invalid IL or missing references) //IL_02f3: Unknown result type (might be due to invalid IL or missing references) //IL_02ff: Unknown result type (might be due to invalid IL or missing references) //IL_0307: Unknown result type (might be due to invalid IL or missing references) //IL_030f: Unknown result type (might be due to invalid IL or missing references) //IL_031c: Expected O, but got Unknown //IL_031e: Unknown result type (might be due to invalid IL or missing references) //IL_0323: Unknown result type (might be due to invalid IL or missing references) //IL_032f: Unknown result type (might be due to invalid IL or missing references) //IL_0337: Unknown result type (might be due to invalid IL or missing references) //IL_033f: Unknown result type (might be due to invalid IL or missing references) //IL_034c: Expected O, but got Unknown //IL_0353: Unknown result type (might be due to invalid IL or missing references) //IL_0359: Expected O, but got Unknown //IL_036b: Unknown result type (might be due to invalid IL or missing references) //IL_0372: Expected O, but got Unknown //IL_037c: Unknown result type (might be due to invalid IL or missing references) //IL_0381: Unknown result type (might be due to invalid IL or missing references) //IL_038d: Unknown result type (might be due to invalid IL or missing references) //IL_0395: Unknown result type (might be due to invalid IL or missing references) //IL_039d: Unknown result type (might be due to invalid IL or missing references) //IL_03aa: Expected O, but got Unknown //IL_03ac: Unknown result type (might be due to invalid IL or missing references) //IL_03b1: Unknown result type (might be due to invalid IL or missing references) //IL_03bd: Unknown result type (might be due to invalid IL or missing references) //IL_03c6: Unknown result type (might be due to invalid IL or missing references) //IL_03cf: Unknown result type (might be due to invalid IL or missing references) //IL_03dc: Expected O, but got Unknown //IL_03de: Unknown result type (might be due to invalid IL or missing references) //IL_03e3: Unknown result type (might be due to invalid IL or missing references) //IL_03ef: Unknown result type (might be due to invalid IL or missing references) //IL_03f7: Unknown result type (might be due to invalid IL or missing references) //IL_03ff: Unknown result type (might be due to invalid IL or missing references) //IL_040c: Expected O, but got Unknown //IL_040e: Unknown result type (might be due to invalid IL or missing references) //IL_0413: Unknown result type (might be due to invalid IL or missing references) //IL_041f: Unknown result type (might be due to invalid IL or missing references) //IL_0427: Unknown result type (might be due to invalid IL or missing references) //IL_042f: Unknown result type (might be due to invalid IL or missing references) //IL_043c: Expected O, but got Unknown //IL_043e: Unknown result type (might be due to invalid IL or missing references) //IL_0443: Unknown result type (might be due to invalid IL or missing references) //IL_044f: Unknown result type (might be due to invalid IL or missing references) //IL_0457: Unknown result type (might be due to invalid IL or missing references) //IL_0460: Unknown result type (might be due to invalid IL or missing references) //IL_046d: Expected O, but got Unknown //IL_0474: Unknown result type (might be due to invalid IL or missing references) //IL_047a: Expected O, but got Unknown //IL_048c: Unknown result type (might be due to invalid IL or missing references) //IL_0493: Expected O, but got Unknown //IL_049d: Unknown result type (might be due to invalid IL or missing references) //IL_04a2: Unknown result type (might be due to invalid IL or missing references) //IL_04ae: Unknown result type (might be due to invalid IL or missing references) //IL_04b6: Unknown result type (might be due to invalid IL or missing references) //IL_04be: Unknown result type (might be due to invalid IL or missing references) //IL_04cb: Expected O, but got Unknown //IL_04cd: Unknown result type (might be due to invalid IL or missing references) //IL_04d2: Unknown result type (might be due to invalid IL or missing references) //IL_04de: Unknown result type (might be due to invalid IL or missing references) //IL_04e7: Unknown result type (might be due to invalid IL or missing references) //IL_04f0: Unknown result type (might be due to invalid IL or missing references) //IL_04fd: Expected O, but got Unknown //IL_04ff: Unknown result type (might be due to invalid IL or missing references) //IL_0504: Unknown result type (might be due to invalid IL or missing references) //IL_0510: Unknown result type (might be due to invalid IL or missing references) //IL_0518: Unknown result type (might be due to invalid IL or missing references) //IL_0520: Unknown result type (might be due to invalid IL or missing references) //IL_052d: Expected O, but got Unknown //IL_052f: Unknown result type (might be due to invalid IL or missing references) //IL_0534: Unknown result type (might be due to invalid IL or missing references) //IL_0540: Unknown result type (might be due to invalid IL or missing references) //IL_0548: Unknown result type (might be due to invalid IL or missing references) //IL_0550: Unknown result type (might be due to invalid IL or missing references) //IL_055d: Expected O, but got Unknown //IL_055f: Unknown result type (might be due to invalid IL or missing references) //IL_0564: Unknown result type (might be due to invalid IL or missing references) //IL_0570: Unknown result type (might be due to invalid IL or missing references) //IL_0578: Unknown result type (might be due to invalid IL or missing references) //IL_0580: Unknown result type (might be due to invalid IL or missing references) //IL_058d: Expected O, but got Unknown //IL_0594: Unknown result type (might be due to invalid IL or missing references) //IL_059b: Expected O, but got Unknown //IL_05ae: Unknown result type (might be due to invalid IL or missing references) //IL_05b5: Expected O, but got Unknown //IL_05bf: Unknown result type (might be due to invalid IL or missing references) //IL_05c4: Unknown result type (might be due to invalid IL or missing references) //IL_05d0: Unknown result type (might be due to invalid IL or missing references) //IL_05d8: Unknown result type (might be due to invalid IL or missing references) //IL_05e0: Unknown result type (might be due to invalid IL or missing references) //IL_05ed: Expected O, but got Unknown //IL_05ef: Unknown result type (might be due to invalid IL or missing references) //IL_05f4: Unknown result type (might be due to invalid IL or missing references) //IL_0600: Unknown result type (might be due to invalid IL or missing references) //IL_0608: Unknown result type (might be due to invalid IL or missing references) //IL_0611: Unknown result type (might be due to invalid IL or missing references) //IL_061e: Expected O, but got Unknown //IL_0620: Unknown result type (might be due to invalid IL or missing references) //IL_0625: Unknown result type (might be due to invalid IL or missing references) //IL_0631: Unknown result type (might be due to invalid IL or missing references) //IL_0639: Unknown result type (might be due to invalid IL or missing references) //IL_0641: Unknown result type (might be due to invalid IL or missing references) //IL_064e: Expected O, but got Unknown //IL_0650: Unknown result type (might be due to invalid IL or missing references) //IL_0655: Unknown result type (might be due to invalid IL or missing references) //IL_0661: Unknown result type (might be due to invalid IL or missing references) //IL_0669: Unknown result type (might be due to invalid IL or missing references) //IL_0671: Unknown result type (might be due to invalid IL or missing references) //IL_067e: Expected O, but got Unknown //IL_0680: Unknown result type (might be due to invalid IL or missing references) //IL_0685: Unknown result type (might be due to invalid IL or missing references) //IL_0691: Unknown result type (might be due to invalid IL or missing references) //IL_0699: 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_06af: Expected O, but got Unknown //IL_06b6: Unknown result type (might be due to invalid IL or missing references) //IL_06bd: Expected O, but got Unknown try { GameObject giant = Giant6; CreatureConfig val = new CreatureConfig(); val.DropConfigs = (DropConfig[])(object)new DropConfig[5] { new DropConfig { Item = "Trophy_FireGiant_HG", MinAmount = 1, MaxAmount = 1, Chance = 5f }, new DropConfig { Item = "Coins", MinAmount = 43, MaxAmount = 98, Chance = 100f }, new DropConfig { Item = "SilverNecklace", MinAmount = 3, MaxAmount = 5, Chance = 15f }, new DropConfig { Item = "Flametal", MinAmount = 2, MaxAmount = 4, Chance = 25f }, new DropConfig { Item = "YmirRemains", MinAmount = 1, MaxAmount = 3, Chance = 2f } }; CustomCreature val2 = new CustomCreature(giant, true, val); CreatureManager.Instance.AddCreature(val2); GameObject giant2 = Giant5; val = new CreatureConfig(); val.DropConfigs = (DropConfig[])(object)new DropConfig[5] { new DropConfig { Item = "Trophy_Jotunn_HG", MinAmount = 1, MaxAmount = 1, Chance = 5f }, new DropConfig { Item = "Coins", MinAmount = 113, MaxAmount = 178, Chance = 100f }, new DropConfig { Item = "SilverNecklace", MinAmount = 3, MaxAmount = 5, Chance = 15f }, new DropConfig { Item = "FreezeGland", MinAmount = 2, MaxAmount = 4, Chance = 25f }, new DropConfig { Item = "YmirRemains", MinAmount = 1, MaxAmount = 3, Chance = 5f } }; CustomCreature val3 = new CustomCreature(giant2, true, val); CreatureManager.Instance.AddCreature(val3); GameObject giant3 = Giant4; val = new CreatureConfig(); val.DropConfigs = (DropConfig[])(object)new DropConfig[5] { new DropConfig { Item = "Trophy_FrostGiant_HG", MinAmount = 1, MaxAmount = 1, Chance = 5f }, new DropConfig { Item = "Coins", MinAmount = 23, MaxAmount = 78, Chance = 100f }, new DropConfig { Item = "SilverNecklace", MinAmount = 3, MaxAmount = 5, Chance = 15f }, new DropConfig { Item = "FreezeGland", MinAmount = 2, MaxAmount = 4, Chance = 25f }, new DropConfig { Item = "YmirRemains", MinAmount = 1, MaxAmount = 3, Chance = 2f } }; CustomCreature val4 = new CustomCreature(giant3, true, val); CreatureManager.Instance.AddCreature(val4); GameObject giant4 = Giant3; val = new CreatureConfig(); val.DropConfigs = (DropConfig[])(object)new DropConfig[5] { new DropConfig { Item = "Trophy_Giant_HG", MinAmount = 1, MaxAmount = 1, Chance = 5f }, new DropConfig { Item = "Coins", MinAmount = 17, MaxAmount = 41, Chance = 100f }, new DropConfig { Item = "LoxPelt", MinAmount = 2, MaxAmount = 4, Chance = 10f }, new DropConfig { Item = "CookedLoxMeat", MinAmount = 2, MaxAmount = 8, Chance = 10f }, new DropConfig { Item = "Cloudberry", MinAmount = 3, MaxAmount = 12, Chance = 25f } }; CustomCreature val5 = new CustomCreature(giant4, true, val); CreatureManager.Instance.AddCreature(val5); GameObject giant5 = Giant2; val = new CreatureConfig(); val.DropConfigs = (DropConfig[])(object)new DropConfig[5] { new DropConfig { Item = "Trophy_MountainGiant_HG", MinAmount = 1, MaxAmount = 1, Chance = 5f }, new DropConfig { Item = "Coins", MinAmount = 10, MaxAmount = 28, Chance = 100f }, new DropConfig { Item = "WolfPelt", MinAmount = 2, MaxAmount = 4, Chance = 15f }, new DropConfig { Item = "FreezeGland", MinAmount = 2, MaxAmount = 4, Chance = 10f }, new DropConfig { Item = "CookedWolfMeat", MinAmount = 3, MaxAmount = 5, Chance = 25f } }; CustomCreature val6 = new CustomCreature(giant5, true, val); CreatureManager.Instance.AddCreature(val6); GameObject giant6 = Giant1; val = new CreatureConfig(); val.DropConfigs = (DropConfig[])(object)new DropConfig[5] { new DropConfig { Item = "Trophy_HillGiant_HG", MinAmount = 1, MaxAmount = 1, Chance = 5f }, new DropConfig { Item = "Coins", MinAmount = 3, MaxAmount = 10, Chance = 100f }, new DropConfig { Item = "DeerHide", MinAmount = 3, MaxAmount = 5, Chance = 15f }, new DropConfig { Item = "Honey", MinAmount = 2, MaxAmount = 4, Chance = 10f }, new DropConfig { Item = "LeatherScraps", MinAmount = 3, MaxAmount = 10, Chance = 25f } }; CustomCreature val7 = new CustomCreature(giant6, true, val); CreatureManager.Instance.AddCreature(val7); } catch (Exception arg) { ((BaseUnityPlugin)this).Logger.LogWarning((object)$"Exception caught while adding custom creatures: {arg}"); } finally { GiantBundle.Unload(false); } } private void FixSFX() { try { AudioSource prefab = Cache.GetPrefab<AudioSource>("sfx_arrow_hit"); GameObject prefab2 = Cache.GetPrefab<GameObject>("SFX_GiantAlert_HG"); GameObject prefab3 = Cache.GetPrefab<GameObject>("SFX_GiantAttack_HG"); GameObject prefab4 = Cache.GetPrefab<GameObject>("SFX_GiantDeath_HG"); GameObject prefab5 = Cache.GetPrefab<GameObject>("SFX_GiantHit_HG"); GameObject prefab6 = Cache.GetPrefab<GameObject>("SFX_GiantIdle_HG"); GameObject prefab7 = Cache.GetPrefab<GameObject>("SFX_GiantFootstep_DoD"); if ((Object)(object)prefab2 != (Object)null) { prefab2.GetComponent<AudioSource>().outputAudioMixerGroup = prefab.outputAudioMixerGroup; } if ((Object)(object)prefab3 != (Object)null) { prefab3.GetComponent<AudioSource>().outputAudioMixerGroup = prefab.outputAudioMixerGroup; } if ((Object)(object)prefab4 != (Object)null) { prefab4.GetComponent<AudioSource>().outputAudioMixerGroup = prefab.outputAudioMixerGroup; } if ((Object)(object)prefab5 != (Object)null) { prefab5.GetComponent<AudioSource>().outputAudioMixerGroup = prefab.outputAudioMixerGroup; } if ((Object)(object)prefab6 != (Object)null) { prefab6.GetComponent<AudioSource>().outputAudioMixerGroup = prefab.outputAudioMixerGroup; } if ((Object)(object)prefab7 != (Object)null) { prefab7.GetComponent<AudioSource>().outputAudioMixerGroup = prefab.outputAudioMixerGroup; } } catch { Debug.LogWarning((object)"Giants: SFX Fix Failed"); } } public static void ConfigureBiomeSpawners(ISpawnerConfigurationCollection config) { try { ConfigureWorldSpawner(config); } catch (Exception ex) { Console.WriteLine("Something went horribly wrong: " + ex.Message + "\nStackTrace:\n" + ex.StackTrace); } } private static void ConfigureWorldSpawner(ISpawnerConfigurationCollection config) { try { ISpawnerConfigurationCollectionWorldSpawnerExtensions.ConfigureWorldSpawner(config, 26004u).SetPrefabName("FireGiant_HG").SetTemplateName("Fire Giant") .SetConditionBiomes((Biome[])(object)new Biome[1] { (Biome)32 }) .SetSpawnChance(12f) .SetSpawnInterval(TimeSpan.FromSeconds(350.0)) .SetPackSizeMin(1u) .SetPackSizeMax(1u) .SetMaxSpawned(2u) .SetConditionAltitudeMin(1f) .SetSpawnAtDistanceToPlayerMin(75f) .SetSpawnAtDistanceToPlayerMax(125f); ISpawnerConfigurationCollectionWorldSpawnerExtensions.ConfigureWorldSpawner(config, 26003u).SetPrefabName("FrostGiant_HG").SetTemplateName("Frost Giant") .SetConditionBiomes((Biome[])(object)new Biome[1] { (Biome)64 }) .SetSpawnChance(12f) .SetSpawnInterval(TimeSpan.FromSeconds(350.0)) .SetPackSizeMin(1u) .SetPackSizeMax(1u) .SetMaxSpawned(2u) .SetConditionAltitudeMin(10f) .SetSpawnAtDistanceToPlayerMin(75f) .SetSpawnAtDistanceToPlayerMax(125f); ISpawnerConfigurationCollectionWorldSpawnerExtensions.ConfigureWorldSpawner(config, 26002u).SetPrefabName("Giant_HG").SetTemplateName("Giant") .SetConditionBiomes((Biome[])(object)new Biome[1] { (Biome)16 }) .SetSpawnChance(12f) .SetSpawnInterval(TimeSpan.FromSeconds(350.0)) .SetPackSizeMin(1u) .SetPackSizeMax(1u) .SetMaxSpawned(2u) .SetConditionAltitudeMin(10f) .SetSpawnAtDistanceToPlayerMin(75f) .SetSpawnAtDistanceToPlayerMax(125f); ISpawnerConfigurationCollectionWorldSpawnerExtensions.ConfigureWorldSpawner(config, 26001u).SetPrefabName("MountainGiant_HG").SetTemplateName("Mountain Giant") .SetConditionBiomes((Biome[])(object)new Biome[1] { (Biome)4 }) .SetSpawnChance(12f) .SetSpawnInterval(TimeSpan.FromSeconds(280.0)) .SetPackSizeMin(1u) .SetPackSizeMax(1u) .SetMaxSpawned(2u) .SetConditionAltitudeMin(95f) .SetConditionAltitudeMax(2000f) .SetSpawnAtDistanceToPlayerMin(75f) .SetSpawnAtDistanceToPlayerMax(125f); ISpawnerConfigurationCollectionWorldSpawnerExtensions.ConfigureWorldSpawner(config, 26000u).SetPrefabName("HillGiant_HG").SetTemplateName("Hill Giant") .SetConditionBiomes((Biome[])(object)new Biome[1] { (Biome)1 }) .SetSpawnChance(5f) .SetSpawnInterval(TimeSpan.FromSeconds(210.0)) .SetPackSizeMin(1u) .SetPackSizeMax(1u) .SetMaxSpawned(2u) .SetConditionAltitudeMin(40f) .SetConditionAltitudeMax(70f) .SetSpawnAtDistanceToPlayerMin(75f) .SetSpawnAtDistanceToPlayerMax(125f); } catch (Exception ex) { Log.LogError((object)ex); } } }