Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of ExtradimensionalItems v0.5.11
plugins/viliger-ExtradimensionalItems/ExtradimensionalItems.dll
Decompiled a year ago
The result has been truncated due to the large size, download it to view full contents!
using System; 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 System.Text.RegularExpressions; using BepInEx; using BepInEx.Bootstrap; using BepInEx.Configuration; using BepInEx.Logging; using EntityStates; using ExtradimensionalItems.Modules.Content; using ExtradimensionalItems.Modules.Effects; using ExtradimensionalItems.Modules.Equipment; using ExtradimensionalItems.Modules.Interactables; using ExtradimensionalItems.Modules.Items; using ExtradimensionalItems.Modules.Items.ItemBehaviors; using ExtradimensionalItems.Modules.SkillStates; using ExtradimensionalItems.Modules.UI; using HG; using HG.Reflection; using HarmonyLib; using IL.RoR2.UI; using KinematicCharacterController; using Mono.Cecil.Cil; using MonoMod.Cil; using On.RoR2; using On.RoR2.Items; using On.RoR2.UI; using R2API; using R2API.Networking; using R2API.Networking.Interfaces; using RiskOfOptions; using RiskOfOptions.Components.Panel; using RiskOfOptions.OptionConfigs; using RiskOfOptions.Options; using RoR2; using RoR2.Artifacts; using RoR2.Audio; using RoR2.ExpansionManagement; using RoR2.Skills; using RoR2.UI; using ShrineOfRepair.Modules; using SimpleJSON; using TMPro; using UnityEngine; using UnityEngine.AddressableAssets; using UnityEngine.Bindings; using UnityEngine.Networking; using UnityEngine.Rendering; using UnityEngine.UI; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyTitle("ExtradimensionalItems")] [assembly: AssemblyProduct("ExtradimensionalItems")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] [assembly: OptIn] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyCompany("ExtradimensionalItems")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] namespace ExtradimensionalItems.Modules { public static class ExtensionMethods { public static void AddOrReplace(this Dictionary<CharacterBody, bool> dictionary, CharacterBody key, bool value) { if (dictionary.ContainsKey(key)) { dictionary[key] = value; } else { dictionary.Add(key, value); } } public static TimedBuff GetTimedBuff(this CharacterBody body, BuffDef buff, bool getLowest = false) { //IL_0015: Unknown result type (might be due to invalid IL or missing references) if (!NetworkServer.active) { MyLogger.LogWarning("[Server] extension function 'System.Void RoR2.CharacterBody::GetTimedBuff(RoR2.BuffDef, bool)' called on client"); return null; } return body.GetTimedBuff(buff.buffIndex, getLowest); } public static TimedBuff GetTimedBuff(this CharacterBody body, BuffIndex buff, bool getLowest = false) { //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_0031: Unknown result type (might be due to invalid IL or missing references) if (!NetworkServer.active) { MyLogger.LogWarning("[Server] extension function 'System.Void RoR2.CharacterBody::GetTimedBuff(RoR2.BuffIndex, bool)' called on client"); return null; } TimedBuff val = null; foreach (TimedBuff timedBuff in body.timedBuffs) { if (timedBuff.buffIndex == buff) { if (!getLowest) { return timedBuff; } if (val == null || val?.timer > timedBuff.timer) { val = timedBuff; } } } return val; } } [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInPlugin("com.Viliger.ExtradimensionalItems", "ExtradimensionalItems", "0.5.11")] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] public class ExtradimensionalItemsPlugin : BaseUnityPlugin { public static ConfigEntry<bool> ExtensiveLogging; public static PluginInfo PInfo; public const string BundleFolder = "Assets"; public const string SoundBanksFolder = "Soundbanks"; public const string LanguageFolder = "Languages"; public static Dictionary<string, string> ShaderLookup = new Dictionary<string, string> { { "Stubbed Hopoo Games/Deferred/Standard", "shaders/deferred/hgstandard" }, { "Hopoo Games/FX/Cloud Remap", "shaders/fx/hgcloudremap" }, { "Stubbed Hopoo Games/FX/Cloud Remap", "shaders/fx/hgcloudremap" } }; private void Awake() { ExtensiveLogging = ((BaseUnityPlugin)this).Config.Bind<bool>("Logging", "Enable extensive logging?", false, "Enables extensive logging, logs every major event related to new content. Might result in worse performance because it logs a lot."); MyLogger.Init(((BaseUnityPlugin)this).Logger); PInfo = ((BaseUnityPlugin)this).Info; foreach (Type item in from type in Assembly.GetExecutingAssembly().GetTypes() where !type.IsAbstract && type.IsSubclassOf(typeof(ItemBase)) select type) { ItemBase itemBase = (ItemBase)Activator.CreateInstance(item); if (ValidateItem(itemBase)) { itemBase.Init(((BaseUnityPlugin)this).Config); MyLogger.LogInfo("Item: " + itemBase.ItemLangTokenName + " loaded."); } } foreach (Type item2 in from type in Assembly.GetExecutingAssembly().GetTypes() where !type.IsAbstract && type.IsSubclassOf(typeof(EquipmentBase)) select type) { EquipmentBase equipmentBase = (EquipmentBase)Activator.CreateInstance(item2); if (ValidateEquipment(equipmentBase)) { equipmentBase.Init(((BaseUnityPlugin)this).Config); MyLogger.LogInfo("Equipment: " + equipmentBase.EquipmentLangTokenName + " loaded."); } } NetworkingAPI.RegisterMessageType<Chronoshift.ChronoshiftStartMovingOnClient>(); NetworkingAPI.RegisterMessageType<Chronoshift.ChronoshiftRestoreStateOnServer>(); NetworkingAPI.RegisterMessageType<DamageOnCooldowns.DamageOnCooldownsSendNumberBuffs>(); if (RiskOfOptionsCompat.enabled) { RiskOfOptionsCompat.SetDescription(); RiskOfOptionsCompat.SetIcon(); RiskOfOptionsCompat.CreateNewOption(ExtensiveLogging); } } public bool ValidateEquipment(EquipmentBase equipment) { return ((BaseUnityPlugin)this).Config.Bind<bool>("Equipment: " + equipment.EquipmentName, "Enable Equipment?", true, "Should this equipment appear in runs?").Value; } public bool ValidateItem(ItemBase item) { return ((BaseUnityPlugin)this).Config.Bind<bool>("Item: " + item.ItemName, "Enable item?", true, "Should this item appear in runs?").Value; } } public static class MyLogger { private static ManualLogSource logger; public static void Init(ManualLogSource log) { logger = log; } public static void LogWarning(object data) { logger.LogWarning(data); } public static void LogInfo(object data) { logger.LogInfo(data); } public static void LogError(object data) { logger.LogError(data); } public static void LogMessage(string data, params string[] args) { if (ExtradimensionalItemsPlugin.ExtensiveLogging.Value) { logger.LogMessage((object)string.Format(data, args)); } } } public static class RiskOfOptionsCompat { private static bool? _enabled; public static bool enabled { get { if (!_enabled.HasValue) { _enabled = Chainloader.PluginInfos.ContainsKey("com.rune580.riskofoptions"); } return _enabled.Value; } } [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] public static void AddDelegateOnModOptionsExit(Action action) { ModOptionPanelController.OnModOptionsExit = (Action)Delegate.Combine(ModOptionPanelController.OnModOptionsExit, action); } [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] public static void SetDescription() { ModSettingsManager.SetModDescription("Items from different worlds.", "com.Viliger.ExtradimensionalItems", "ExtradimensionalItems"); } [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] public static void SetIcon() { ModSettingsManager.SetModIcon(AssetBundle.LoadFromFile(Path.Combine(Path.GetDirectoryName(ExtradimensionalItemsPlugin.PInfo.Location), "Assets", "config")).LoadAsset<Sprite>("ModIcon.png"), "com.Viliger.ExtradimensionalItems", "ExtradimensionalItems"); } [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] public static void CreateNewOption(ConfigEntry<float> entry, bool restartRequired = false) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_0012: Expected O, but got Unknown //IL_000d: Unknown result type (might be due to invalid IL or missing references) //IL_0017: Expected O, but got Unknown ModSettingsManager.AddOption((BaseOption)new StepSliderOption(entry, new StepSliderConfig { restartRequired = restartRequired })); } [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] public static void CreateNewOption(ConfigEntry<float> entry, float min, float max, float increment = 1f, bool restartRequired = false) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_000d: Unknown result type (might be due to invalid IL or missing references) //IL_0014: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Unknown result type (might be due to invalid IL or missing references) //IL_0028: Expected O, but got Unknown //IL_0023: Unknown result type (might be due to invalid IL or missing references) //IL_002d: Expected O, but got Unknown ModSettingsManager.AddOption((BaseOption)new StepSliderOption(entry, new StepSliderConfig { min = min, max = max, increment = increment, restartRequired = restartRequired })); } [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] public static void CreateNewOption(ConfigEntry<bool> entry, bool restartRequired = false) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_0012: Expected O, but got Unknown //IL_000d: Unknown result type (might be due to invalid IL or missing references) //IL_0017: Expected O, but got Unknown ModSettingsManager.AddOption((BaseOption)new CheckBoxOption(entry, new CheckBoxConfig { restartRequired = restartRequired })); } [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] public static void CreateNewOption(ConfigEntry<int> entry, int min = 0, int max = 200, bool restartRequired = false) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_000d: Unknown result type (might be due to invalid IL or missing references) //IL_0014: Unknown result type (might be due to invalid IL or missing references) //IL_0020: Expected O, but got Unknown //IL_001b: Unknown result type (might be due to invalid IL or missing references) //IL_0025: Expected O, but got Unknown ModSettingsManager.AddOption((BaseOption)new IntSliderOption(entry, new IntSliderConfig { min = min, max = max, restartRequired = restartRequired })); } [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] public static void CreateNewOption(ConfigEntry<RoyalGuard.ItemType> entry, bool restartRequired = false) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_0012: Expected O, but got Unknown //IL_000d: Unknown result type (might be due to invalid IL or missing references) //IL_0017: Expected O, but got Unknown ModSettingsManager.AddOption((BaseOption)new ChoiceOption((ConfigEntryBase)(object)entry, new ChoiceConfig { restartRequired = restartRequired })); } } public static class ShrineOfRepairCompat { private static bool? _enabled; public static bool enabled { get { if (!_enabled.HasValue) { _enabled = Chainloader.PluginInfos.ContainsKey("com.Viliger.ShrineOfRepair"); } return _enabled.Value; } } [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] public static void AddListenerToFillDictionary() { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_0011: Expected O, but got Unknown ModExtension.AddItemsListener(new DictionaryFillItemsDelegate(AddFuelCellDepletedToRepairList)); } [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] public static void AddFuelCellDepletedToRepairList() { //IL_0005: Unknown result type (might be due to invalid IL or missing references) //IL_000f: Unknown result type (might be due to invalid IL or missing references) ModExtension.AddItemsToList(ExtradimensionalItems.Modules.Content.Items.FuelCellDepleted.itemIndex, Items.EquipmentMagazine.itemIndex, "ExtradimensionalItems"); } } public static class Utils { public static bool RegisterNetworkSound(string eventName) { NetworkSoundEventDef obj = ScriptableObject.CreateInstance<NetworkSoundEventDef>(); ((Object)obj).name = eventName; obj.eventName = eventName; return ContentAddition.AddNetworkSoundEventDef(obj); } public static void ShaderConversion(AssetBundle assets) { assets.LoadAllAssets<Material>(); foreach (Material item in from material in assets.LoadAllAssets<Material>() where ((Object)material.shader).name.Contains("Hopoo Games") select material) { Shader val = LegacyResourcesAPI.Load<Shader>(ExtradimensionalItemsPlugin.ShaderLookup[((Object)item.shader).name]); if (Object.op_Implicit((Object)(object)val)) { item.shader = val; } } } public static RendererInfo[] ItemDisplaySetup(GameObject obj) { //IL_0040: Unknown result type (might be due to invalid IL or missing references) //IL_008a: Unknown result type (might be due to invalid IL or missing references) //IL_0097: Unknown result type (might be due to invalid IL or missing references) //IL_0099: Unknown result type (might be due to invalid IL or missing references) List<Renderer> list = new List<Renderer>(); MeshRenderer[] componentsInChildren = obj.GetComponentsInChildren<MeshRenderer>(); if (componentsInChildren.Length != 0) { list.AddRange((IEnumerable<Renderer>)(object)componentsInChildren); } SkinnedMeshRenderer[] componentsInChildren2 = obj.GetComponentsInChildren<SkinnedMeshRenderer>(); if (componentsInChildren2.Length != 0) { list.AddRange((IEnumerable<Renderer>)(object)componentsInChildren2); } RendererInfo[] array = (RendererInfo[])(object)new RendererInfo[list.Count]; for (int i = 0; i < list.Count; i++) { array[i] = new RendererInfo { defaultMaterial = ((list[i] is SkinnedMeshRenderer) ? list[i].sharedMaterial : list[i].material), renderer = list[i], defaultShadowCastingMode = (ShadowCastingMode)1, ignoreOverlays = false }; } return array; } [ConCommand(/*Could not decode attribute arguments.*/)] private static void CCGiveItemAI(ConCommandArgs args) { //IL_0052: Unknown result type (might be due to invalid IL or missing references) //IL_0057: Unknown result type (might be due to invalid IL or missing references) //IL_0058: Unknown result type (might be due to invalid IL or missing references) //IL_005a: Invalid comparison between Unknown and I4 //IL_0081: 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_00e1: Unknown result type (might be due to invalid IL or missing references) //IL_00f3: Unknown result type (might be due to invalid IL or missing references) if (((ConCommandArgs)(ref args)).Count == 0) { Debug.Log((object)"No parameters specified. Requires 2 arguments: {item} [count:1]"); return; } int result = 1; if (((ConCommandArgs)(ref args)).Count >= 2 && ((ConCommandArgs)(ref args))[1] != "") { result = ((!int.TryParse(((ConCommandArgs)(ref args))[1], out result)) ? 1 : result); } ItemIndex itemFromPartial = GetItemFromPartial(((ConCommandArgs)(ref args))[0]); if ((int)itemFromPartial != -1) { if (RunArtifactManager.instance.IsArtifactEnabled(Artifacts.monsterTeamGainsItemsArtifactDef) && Object.op_Implicit((Object)(object)MonsterTeamGainsItemsArtifactManager.monsterTeamInventory)) { MonsterTeamGainsItemsArtifactManager.monsterTeamInventory.GiveItem(itemFromPartial, result); Debug.Log((object)$"Gave {result} {itemFromPartial} to AIs"); } else if ((Object)(object)SceneCatalog.GetSceneDefForCurrentScene() == (Object)(object)SceneCatalog.GetSceneDefFromSceneName("arena") && Object.op_Implicit((Object)(object)ArenaMissionController.instance) && Object.op_Implicit((Object)(object)ArenaMissionController.instance.inventory)) { ArenaMissionController.instance.inventory.GiveItem(itemFromPartial, result); Debug.Log((object)$"Gave {result} {itemFromPartial} to AIs"); } else { Debug.Log((object)"Only works when Artifact of Evolution is enabled or if players are in Void Fields."); } } else { Debug.Log((object)$"Item {((ConCommandArgs)(ref args))[0]} is not found."); } } [ConCommand(/*Could not decode attribute arguments.*/)] private static void CCGiveAllEDItems(ConCommandArgs args) { int result = 1; if (((ConCommandArgs)(ref args)).Count >= 1) { result = ((!int.TryParse(((ConCommandArgs)(ref args))[0], out result)) ? 1 : result); } CharacterMaster senderMaster = ((ConCommandArgs)(ref args)).senderMaster; if ((Object)(object)senderMaster == (Object)null) { Debug.Log((object)"Couldn't find target to add items to."); } Inventory inventory = senderMaster.inventory; if ((Object)(object)inventory == (Object)null) { Debug.Log((object)"Target has no inventory."); } inventory.GiveItem(ExtradimensionalItems.Modules.Content.Items.Atma, result); inventory.GiveItem(ExtradimensionalItems.Modules.Content.Items.DamageOnPing, result); inventory.GiveItem(ExtradimensionalItems.Modules.Content.Items.DamageOnCooldowns, result); inventory.GiveItem(ExtradimensionalItems.Modules.Content.Items.RoyalGuard, result); inventory.GiveItem(ExtradimensionalItems.Modules.Content.Items.FuelCellDepleted, result); inventory.GiveItem(ExtradimensionalItems.Modules.Content.Items.ReturnalAdrenaline, result); inventory.GiveItem(ExtradimensionalItems.Modules.Content.Items.Sheen, result); inventory.GiveItem(ExtradimensionalItems.Modules.Content.Items.VoidCooldownReduction, result); Debug.Log((object)$"Gave {result} of all Extradimensional items."); } private static ItemIndex GetItemFromPartial(string name) { //IL_0016: Unknown result type (might be due to invalid IL or missing references) //IL_001b: 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_0023: Unknown result type (might be due to invalid IL or missing references) //IL_0014: 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_008c: Unknown result type (might be due to invalid IL or missing references) //IL_00ab: Unknown result type (might be due to invalid IL or missing references) if (Enum.TryParse<ItemIndex>(name, ignoreCase: true, out ItemIndex result) && ItemCatalog.IsIndexValid(ref result)) { return result; } Enumerator<ItemDef> enumerator = ItemCatalog.allItemDefs.GetEnumerator(); try { while (enumerator.MoveNext()) { ItemDef current = enumerator.Current; string langInvar = GetLangInvar(current.nameToken.ToUpper()); if (((Object)current).name.ToUpper().Contains(name.ToUpper()) || langInvar.ToUpper().Contains(name.ToUpper()) || langInvar.ToUpper().Contains(RemoveSpacesAndAlike(name.ToUpper()))) { return current.itemIndex; } } } finally { ((IDisposable)enumerator).Dispose(); } return (ItemIndex)(-1); } private static string GetLangInvar(string baseToken) { return RemoveSpacesAndAlike(Language.GetString(baseToken)); } private static string RemoveSpacesAndAlike(string input) { return Regex.Replace(input, "[ '-]", string.Empty); } } } namespace ExtradimensionalItems.Modules.UI { public class ReturnalAdrenalineUI : MonoBehaviour { private static List<ReturnalAdrenalineUI> instancesList = new List<ReturnalAdrenalineUI>(); private HGTextMeshProUGUI textMesh; private Image levelBar; private HUD hud; private void Update() { if (Object.op_Implicit((Object)(object)hud) && Object.op_Implicit((Object)(object)hud.targetMaster)) { ReturnalAdrenalineItemBehavior component = ((Component)hud.targetMaster).GetComponent<ReturnalAdrenalineItemBehavior>(); if (Object.op_Implicit((Object)(object)component) && hud.targetMaster.inventory.GetItemCount(ExtradimensionalItems.Modules.Content.Items.ReturnalAdrenaline) > 0) { UpdateUI(component.adrenalineLevel, component.adrenalinePerLevel); } } } private void OnDestroy() { if (instancesList != null) { instancesList.Remove(this); } } private void UpdateUI(int adrenalineLevel, float adrenalinePerLevel) { if (Object.op_Implicit((Object)(object)textMesh)) { ((TMP_Text)textMesh).SetText(string.Format(Language.GetString("ITEM_RETURNAL_ADRENALINE_LEVEL"), (int)((float)adrenalineLevel / adrenalinePerLevel)), true); } if (Object.op_Implicit((Object)(object)levelBar)) { if ((float)adrenalineLevel >= adrenalinePerLevel * 5f) { levelBar.fillAmount = 1f; } else { levelBar.fillAmount = Mathf.Clamp((float)adrenalineLevel % adrenalinePerLevel / adrenalinePerLevel, 0f, 1f); } } } public static void CreateUI(HUD HUD) { //IL_003d: Unknown result type (might be due to invalid IL or missing references) //IL_0043: Expected O, but got Unknown //IL_007a: Unknown result type (might be due to invalid IL or missing references) //IL_008b: Unknown result type (might be due to invalid IL or missing references) //IL_00a0: Unknown result type (might be due to invalid IL or missing references) //IL_00b5: Unknown result type (might be due to invalid IL or missing references) //IL_00c0: Unknown result type (might be due to invalid IL or missing references) //IL_00d5: Unknown result type (might be due to invalid IL or missing references) //IL_00ea: Unknown result type (might be due to invalid IL or missing references) //IL_00ff: Unknown result type (might be due to invalid IL or missing references) //IL_0118: Unknown result type (might be due to invalid IL or missing references) //IL_0127: Unknown result type (might be due to invalid IL or missing references) //IL_012c: Unknown result type (might be due to invalid IL or missing references) //IL_0133: Unknown result type (might be due to invalid IL or missing references) //IL_014c: Unknown result type (might be due to invalid IL or missing references) //IL_0157: Unknown result type (might be due to invalid IL or missing references) //IL_0162: Unknown result type (might be due to invalid IL or missing references) //IL_016d: Unknown result type (might be due to invalid IL or missing references) //IL_0182: Unknown result type (might be due to invalid IL or missing references) //IL_0197: Unknown result type (might be due to invalid IL or missing references) //IL_01b1: Unknown result type (might be due to invalid IL or missing references) //IL_01d1: Unknown result type (might be due to invalid IL or missing references) //IL_01d6: Unknown result type (might be due to invalid IL or missing references) //IL_01fd: Unknown result type (might be due to invalid IL or missing references) //IL_0202: Unknown result type (might be due to invalid IL or missing references) //IL_020a: Unknown result type (might be due to invalid IL or missing references) //IL_0227: Unknown result type (might be due to invalid IL or missing references) //IL_023d: Unknown result type (might be due to invalid IL or missing references) //IL_0253: Unknown result type (might be due to invalid IL or missing references) //IL_026e: Unknown result type (might be due to invalid IL or missing references) //IL_027a: Unknown result type (might be due to invalid IL or missing references) //IL_0290: 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_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_02d3: Unknown result type (might be due to invalid IL or missing references) Image val = default(Image); if (Object.op_Implicit((Object)(object)HUD) && Object.op_Implicit((Object)(object)HUD.healthBar) && Object.op_Implicit((Object)(object)HUD.itemInventoryDisplay) && ((Component)HUD.itemInventoryDisplay).gameObject.TryGetComponent<Image>(ref val)) { GameObject val2 = new GameObject("AdrenalineHUD"); ReturnalAdrenalineUI returnalAdrenalineUI = val2.AddComponent<ReturnalAdrenalineUI>(); RectTransform obj = val2.AddComponent<RectTransform>(); val2.transform.SetParent(((Component)HUD.healthBar).transform); Image obj2 = val2.AddComponent<Image>(); obj2.sprite = val.sprite; ((Graphic)obj2).color = ((Graphic)val).color; obj2.type = (Type)1; ((Transform)obj).localPosition = Vector3.zero; obj.anchorMin = new Vector2(0f, 0f); obj.anchorMax = new Vector2(0f, 0f); ((Transform)obj).localScale = Vector3.one; obj.pivot = new Vector2(0f, 1f); obj.sizeDelta = new Vector2(421f, 15f); obj.anchoredPosition = new Vector2(-1f, -5f); ((Transform)obj).eulerAngles = new Vector3(0f, -6f, 0f); GameObject val3 = new GameObject("AdrenalineLevelText"); RectTransform val4 = val3.AddComponent<RectTransform>(); HGTextMeshProUGUI val5 = val3.AddComponent<HGTextMeshProUGUI>(); val3.transform.SetParent(val2.transform); ((Transform)val4).localPosition = Vector3.zero; val4.anchorMin = Vector2.zero; val4.anchorMax = Vector2.one; ((Transform)val4).localScale = Vector3.one; val4.sizeDelta = new Vector2(0f, 0f); val4.anchoredPosition = new Vector2(380f, 0f); ((Transform)val4).eulerAngles = new Vector3(0f, -6f, 0f); ((TMP_Text)val5).enableAutoSizing = true; ((TMP_Text)val5).fontSizeMax = 256f; ((TMP_Text)val5).faceColor = Color32.op_Implicit(Color.white); ((TMP_Text)val5).alignment = (TextAlignmentOptions)4097; ((TMP_Text)val5).text = "Testing"; GameObject val6 = new GameObject("AdrenalineLevelBar"); RectTransform val7 = val6.AddComponent<RectTransform>(); val6.transform.SetParent(val2.transform); val7.anchorMin = new Vector2(0f, 1f); val7.anchorMax = new Vector2(0f, 1f); val7.pivot = new Vector2(0f, 1f); ((Transform)val7).eulerAngles = new Vector3(0f, -6f, 0f); ((Transform)val7).localScale = Vector3.one; val7.anchoredPosition = new Vector2(12f, 2f); val7.sizeDelta = new Vector2(360f, 8f); Image val8 = val6.AddComponent<Image>(); val8.sprite = Addressables.LoadAssetAsync<Sprite>((object)"RoR2/Base/UI/texUINonsegmentedHealthbar.png").WaitForCompletion(); ((Graphic)val8).color = Color.yellow; val8.type = (Type)3; val8.fillMethod = (FillMethod)0; val8.fillOrigin = 0; val8.fillAmount = 0.5f; returnalAdrenalineUI.hud = HUD; returnalAdrenalineUI.textMesh = val5; returnalAdrenalineUI.levelBar = val8; val2.gameObject.SetActive(false); instancesList.Add(returnalAdrenalineUI); } } public static ReturnalAdrenalineUI FindInstance(CharacterMaster master) { foreach (ReturnalAdrenalineUI instances in instancesList) { if ((Object)(object)instances.hud.targetMaster == (Object)(object)master) { return instances; } } return null; } public void Enable() { if (Object.op_Implicit((Object)(object)((Component)this).gameObject)) { ((Component)this).gameObject.SetActive(true); } } public void Disable() { if (Object.op_Implicit((Object)(object)((Component)this).gameObject)) { ((Component)this).gameObject.SetActive(false); } } } } namespace ExtradimensionalItems.Modules.SkillStates { public class Explode : BaseSkillState { public override void OnEnter() { ((BaseState)this).OnEnter(); ExplodeNow(); } public override void FixedUpdate() { ((EntityState)this).FixedUpdate(); if (!((EntityState)this).characterBody.HasBuff(Buffs.RoyalGuardDamage)) { ((EntityState)this).outer.SetNextStateToMain(); MyLogger.LogMessage("Player {0}({1}) has left parry state because they don't have damage buff after using Release.", ((EntityState)this).characterBody.GetUserName(), ((Object)((EntityState)this).characterBody).name); } } private void ExplodeNow() { //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_001a: 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_0035: 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) //IL_0041: Unknown result type (might be due to invalid IL or missing references) //IL_0046: Unknown result type (might be due to invalid IL or missing references) //IL_0057: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_0097: Unknown result type (might be due to invalid IL or missing references) //IL_0099: Unknown result type (might be due to invalid IL or missing references) //IL_009e: Unknown result type (might be due to invalid IL or missing references) //IL_00a9: Unknown result type (might be due to invalid IL or missing references) //IL_00b5: Unknown result type (might be due to invalid IL or missing references) //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) //IL_00c5: Unknown result type (might be due to invalid IL or missing references) //IL_00ca: Unknown result type (might be due to invalid IL or missing references) //IL_00cf: Unknown result type (might be due to invalid IL or missing references) //IL_00d1: Unknown result type (might be due to invalid IL or missing references) //IL_00d7: Expected O, but got Unknown //IL_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00e9: Unknown result type (might be due to invalid IL or missing references) //IL_0116: Unknown result type (might be due to invalid IL or missing references) //IL_011c: Expected O, but got Unknown //IL_0123: Unknown result type (might be due to invalid IL or missing references) if (((EntityState)this).characterBody.HasBuff(Buffs.RoyalGuardDamage)) { BlastAttack val = new BlastAttack { radius = RoyalGuard.DamageRadius.Value, procCoefficient = 2f, position = ((EntityState)this).characterBody.corePosition, attacker = ((Component)((EntityState)this).characterBody).gameObject, crit = ((BaseState)this).RollCrit(), baseDamage = ((EntityState)this).characterBody.baseDamage * (float)((EntityState)this).characterBody.GetBuffCount(Buffs.RoyalGuardDamage) * (RoyalGuard.DamageModifier.Value / 100f), falloffModel = (FalloffModel)2, baseForce = 1f, teamIndex = TeamComponent.GetObjectTeam(((Component)((EntityState)this).characterBody).gameObject), damageType = DamageTypeCombo.op_Implicit((DamageType)131072), attackerFiltering = (AttackerFiltering)2 }; val.Fire(); ((EntityState)this).characterBody.SetBuffCount(Buffs.RoyalGuardDamage.buffIndex, 0); if (((EntityState)this).characterBody.HasBuff(Buffs.RoyalGuardParryState)) { ((EntityState)this).characterBody.RemoveOldestTimedBuff(Buffs.RoyalGuardParryState); } EffectData val2 = new EffectData(); val2.origin = ((EntityState)this).characterBody.footPosition; val2.scale = 10f; EffectManager.SpawnEffect(RoyalGuard.RoyalGuardExplodeEffectInstance, val2, true); MyLogger.LogMessage("Player {0}({1}) used Release, dealing to everyone around {2} damage.", ((EntityState)this).characterBody.GetUserName(), ((Object)((EntityState)this).characterBody).name, val.baseDamage.ToString()); } } } public class Parry : BaseSkillState { private float duration; private bool buffAdded; public override void OnEnter() { ((BaseState)this).OnEnter(); duration = RoyalGuard.GetParryStateDuration(((EntityState)this).characterBody); if (NetworkServer.active) { ((EntityState)this).characterBody.AddTimedBuff(Buffs.RoyalGuardParryState, duration); MyLogger.LogMessage("Player {0}({1}) entered parry state for {2} seconds.", ((EntityState)this).characterBody.GetUserName(), ((Object)((EntityState)this).characterBody).name, duration.ToString()); } if (((EntityState)this).isAuthority && Object.op_Implicit((Object)(object)((EntityState)this).characterBody.skillLocator) && ((EntityState)this).characterBody.HasBuff(Buffs.RoyalGuardDamage)) { ((EntityState)this).characterBody.skillLocator.primary.SetSkillOverride((object)((EntityState)this).characterBody, Skills.Explode, (SkillOverridePriority)3); } } public override void OnExit() { if (NetworkServer.active && ((EntityState)this).characterBody.HasBuff(Buffs.RoyalGuardParryState)) { ((EntityState)this).characterBody.RemoveOldestTimedBuff(Buffs.RoyalGuardParryState); } if (((EntityState)this).isAuthority && Object.op_Implicit((Object)(object)((EntityState)this).characterBody.skillLocator)) { ((EntityState)this).characterBody.skillLocator.primary.UnsetSkillOverride((object)((EntityState)this).characterBody, Skills.Explode, (SkillOverridePriority)3); } ((EntityState)this).OnExit(); } public override void FixedUpdate() { ((EntityState)this).FixedUpdate(); if (((EntityState)this).characterBody.HasBuff(Buffs.RoyalGuardParryState)) { buffAdded = true; } if (((EntityState)this).fixedAge >= duration && ((EntityState)this).isAuthority) { ((EntityState)this).outer.SetNextStateToMain(); MyLogger.LogMessage("Player {0}({1}) has left parry state due to timeout without being damaged.", ((EntityState)this).characterBody.GetUserName(), ((Object)((EntityState)this).characterBody).name); } if (buffAdded && !((EntityState)this).characterBody.HasBuff(Buffs.RoyalGuardParryState) && ((EntityState)this).isAuthority) { ((EntityState)this).outer.SetNextStateToMain(); MyLogger.LogMessage("Player {0}({1}) has left parry state because they don't have parry state buff after being damaged.", ((EntityState)this).characterBody.GetUserName(), ((Object)((EntityState)this).characterBody).name); } } public override void Update() { ((EntityState)this).Update(); if (((EntityState)this).isAuthority && Object.op_Implicit((Object)(object)((EntityState)this).inputBank) && ((EntityState)this).characterBody.HasBuff(Buffs.RoyalGuardDamage) && ((ButtonState)(ref ((EntityState)this).inputBank.skill1)).justPressed) { ((EntityState)this).skillLocator.primary.ExecuteIfReady(); } } public override InterruptPriority GetMinimumInterruptPriority() { return (InterruptPriority)2; } } } namespace ExtradimensionalItems.Modules.NetworkAttachments { public class ChronoshiftController : NetworkBehaviour { public enum ChronoshiftState { Saving, Moving, Restoring } private static readonly List<ChronoshiftController> instancesList; private NetworkedBodyAttachment networkedBodyAttachment; private SyncList<int> syncList; public static ChronoshiftController FindChronoshiftController(GameObject body) { if (!Object.op_Implicit((Object)(object)body)) { return null; } foreach (ChronoshiftController instances in instancesList) { if ((Object)(object)instances.networkedBodyAttachment.attachedBodyObject == (Object)(object)body) { return instances; } } return null; } private void Awake() { networkedBodyAttachment = ((Component)this).GetComponent<NetworkedBodyAttachment>(); } private void OnEnabled() { instancesList.Add(this); } private void OnDisable() { instancesList.Remove(this); } private void UNetVersion() { } public override bool OnSerialize(NetworkWriter writer, bool forceAll) { bool result = default(bool); return result; } public override void OnDeserialize(NetworkReader reader, bool initialState) { } } } namespace ExtradimensionalItems.Modules.Items { public class Atma : ItemBase<Atma> { public static ConfigEntry<float> HealthPerLevel; public static ConfigEntry<float> PerStackScaling; public override string ItemName => "AtmasImpaler"; public override string ItemLangTokenName => "ATMAS_IMPALER"; public override ItemTier Tier => (ItemTier)1; public override string BundleName => "atma"; public override ItemTag[] ItemTags => (ItemTag[])(object)new ItemTag[1] { (ItemTag)1 }; public override GameObject ItemModel => AssetBundle.LoadAsset<GameObject>("atma"); public override Sprite ItemIcon => AssetBundle.LoadAsset<Sprite>("texAtmaIcon"); public override ItemDisplayRuleDict CreateItemDisplayRules() { //IL_002e: Unknown result type (might be due to invalid IL or missing references) //IL_0034: Expected O, but got Unknown //IL_0044: Unknown result type (might be due to invalid IL or missing references) //IL_004d: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_006b: Expected O, but got Unknown //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_00a3: Unknown result type (might be due to invalid IL or missing references) //IL_00a8: Unknown result type (might be due to invalid IL or missing references) //IL_00be: Unknown result type (might be due to invalid IL or missing references) //IL_00c3: Unknown result type (might be due to invalid IL or missing references) //IL_00c8: Unknown result type (might be due to invalid IL or missing references) //IL_00c9: Unknown result type (might be due to invalid IL or missing references) //IL_00e3: 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_0100: Unknown result type (might be due to invalid IL or missing references) //IL_010a: Expected O, but got Unknown //IL_0127: Unknown result type (might be due to invalid IL or missing references) //IL_012c: Unknown result type (might be due to invalid IL or missing references) //IL_0142: Unknown result type (might be due to invalid IL or missing references) //IL_0147: Unknown result type (might be due to invalid IL or missing references) //IL_015d: Unknown result type (might be due to invalid IL or missing references) //IL_0162: Unknown result type (might be due to invalid IL or missing references) //IL_0167: Unknown result type (might be due to invalid IL or missing references) //IL_0168: Unknown result type (might be due to invalid IL or missing references) //IL_0182: Unknown result type (might be due to invalid IL or missing references) //IL_018b: Unknown result type (might be due to invalid IL or missing references) //IL_019f: Unknown result type (might be due to invalid IL or missing references) //IL_01a9: Expected O, but got Unknown //IL_01c6: Unknown result type (might be due to invalid IL or missing references) //IL_01cb: Unknown result type (might be due to invalid IL or missing references) //IL_01e1: Unknown result type (might be due to invalid IL or missing references) //IL_01e6: Unknown result type (might be due to invalid IL or missing references) //IL_01fc: Unknown result type (might be due to invalid IL or missing references) //IL_0201: 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_0207: Unknown result type (might be due to invalid IL or missing references) //IL_0221: Unknown result type (might be due to invalid IL or missing references) //IL_022a: Unknown result type (might be due to invalid IL or missing references) //IL_023e: Unknown result type (might be due to invalid IL or missing references) //IL_0248: Expected O, but got Unknown //IL_0265: Unknown result type (might be due to invalid IL or missing references) //IL_026a: Unknown result type (might be due to invalid IL or missing references) //IL_0280: Unknown result type (might be due to invalid IL or missing references) //IL_0285: Unknown result type (might be due to invalid IL or missing references) //IL_029b: Unknown result type (might be due to invalid IL or missing references) //IL_02a0: Unknown result type (might be due to invalid IL or missing references) //IL_02a5: 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_02c0: Unknown result type (might be due to invalid IL or missing references) //IL_02c9: Unknown result type (might be due to invalid IL or missing references) //IL_02dd: Unknown result type (might be due to invalid IL or missing references) //IL_02e7: Expected O, but got Unknown //IL_0304: Unknown result type (might be due to invalid IL or missing references) //IL_0309: Unknown result type (might be due to invalid IL or missing references) //IL_031f: Unknown result type (might be due to invalid IL or missing references) //IL_0324: Unknown result type (might be due to invalid IL or missing references) //IL_033a: 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_0344: Unknown result type (might be due to invalid IL or missing references) //IL_0345: Unknown result type (might be due to invalid IL or missing references) //IL_035f: Unknown result type (might be due to invalid IL or missing references) //IL_0368: Unknown result type (might be due to invalid IL or missing references) //IL_037c: Unknown result type (might be due to invalid IL or missing references) //IL_0386: Expected O, but got Unknown //IL_03a3: Unknown result type (might be due to invalid IL or missing references) //IL_03a8: Unknown result type (might be due to invalid IL or missing references) //IL_03be: Unknown result type (might be due to invalid IL or missing references) //IL_03c3: Unknown result type (might be due to invalid IL or missing references) //IL_03d9: Unknown result type (might be due to invalid IL or missing references) //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_03e4: Unknown result type (might be due to invalid IL or missing references) //IL_03fe: Unknown result type (might be due to invalid IL or missing references) //IL_0407: Unknown result type (might be due to invalid IL or missing references) //IL_041b: Unknown result type (might be due to invalid IL or missing references) //IL_0425: Expected O, but got Unknown //IL_0442: Unknown result type (might be due to invalid IL or missing references) //IL_0447: Unknown result type (might be due to invalid IL or missing references) //IL_045d: Unknown result type (might be due to invalid IL or missing references) //IL_0462: Unknown result type (might be due to invalid IL or missing references) //IL_0478: Unknown result type (might be due to invalid IL or missing references) //IL_047d: Unknown result type (might be due to invalid IL or missing references) //IL_0482: Unknown result type (might be due to invalid IL or missing references) //IL_0483: Unknown result type (might be due to invalid IL or missing references) //IL_049d: Unknown result type (might be due to invalid IL or missing references) //IL_04a6: Unknown result type (might be due to invalid IL or missing references) //IL_04ba: Unknown result type (might be due to invalid IL or missing references) //IL_04c4: Expected O, but got Unknown //IL_04e1: Unknown result type (might be due to invalid IL or missing references) //IL_04e6: Unknown result type (might be due to invalid IL or missing references) //IL_04fc: Unknown result type (might be due to invalid IL or missing references) //IL_0501: Unknown result type (might be due to invalid IL or missing references) //IL_0517: Unknown result type (might be due to invalid IL or missing references) //IL_051c: Unknown result type (might be due to invalid IL or missing references) //IL_0521: Unknown result type (might be due to invalid IL or missing references) //IL_0522: Unknown result type (might be due to invalid IL or missing references) //IL_053c: Unknown result type (might be due to invalid IL or missing references) //IL_0545: Unknown result type (might be due to invalid IL or missing references) //IL_0559: Unknown result type (might be due to invalid IL or missing references) //IL_0563: Expected O, but got Unknown //IL_0580: Unknown result type (might be due to invalid IL or missing references) //IL_0585: Unknown result type (might be due to invalid IL or missing references) //IL_059b: Unknown result type (might be due to invalid IL or missing references) //IL_05a0: Unknown result type (might be due to invalid IL or missing references) //IL_05b6: Unknown result type (might be due to invalid IL or missing references) //IL_05bb: Unknown result type (might be due to invalid IL or missing references) //IL_05c0: Unknown result type (might be due to invalid IL or missing references) //IL_05c1: Unknown result type (might be due to invalid IL or missing references) //IL_05db: Unknown result type (might be due to invalid IL or missing references) //IL_05e4: Unknown result type (might be due to invalid IL or missing references) //IL_05f8: Unknown result type (might be due to invalid IL or missing references) //IL_0602: Expected O, but got Unknown //IL_061f: Unknown result type (might be due to invalid IL or missing references) //IL_0624: Unknown result type (might be due to invalid IL or missing references) //IL_063a: Unknown result type (might be due to invalid IL or missing references) //IL_063f: 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_065a: Unknown result type (might be due to invalid IL or missing references) //IL_065f: Unknown result type (might be due to invalid IL or missing references) //IL_0660: Unknown result type (might be due to invalid IL or missing references) //IL_067a: Unknown result type (might be due to invalid IL or missing references) //IL_0683: Unknown result type (might be due to invalid IL or missing references) //IL_0697: Unknown result type (might be due to invalid IL or missing references) //IL_06a1: Expected O, but got Unknown //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_06d9: Unknown result type (might be due to invalid IL or missing references) //IL_06de: Unknown result type (might be due to invalid IL or missing references) //IL_06f4: Unknown result type (might be due to invalid IL or missing references) //IL_06f9: Unknown result type (might be due to invalid IL or missing references) //IL_06fe: Unknown result type (might be due to invalid IL or missing references) //IL_06ff: Unknown result type (might be due to invalid IL or missing references) //IL_0719: Unknown result type (might be due to invalid IL or missing references) //IL_0722: 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_0740: Expected O, but got Unknown //IL_075d: Unknown result type (might be due to invalid IL or missing references) //IL_0762: Unknown result type (might be due to invalid IL or missing references) //IL_0778: Unknown result type (might be due to invalid IL or missing references) //IL_077d: Unknown result type (might be due to invalid IL or missing references) //IL_0793: Unknown result type (might be due to invalid IL or missing references) //IL_0798: Unknown result type (might be due to invalid IL or missing references) //IL_079d: Unknown result type (might be due to invalid IL or missing references) //IL_079e: Unknown result type (might be due to invalid IL or missing references) //IL_07b8: Unknown result type (might be due to invalid IL or missing references) //IL_07c1: Unknown result type (might be due to invalid IL or missing references) //IL_07d5: Unknown result type (might be due to invalid IL or missing references) //IL_07df: Expected O, but got Unknown //IL_07fc: Unknown result type (might be due to invalid IL or missing references) //IL_0801: Unknown result type (might be due to invalid IL or missing references) //IL_0817: Unknown result type (might be due to invalid IL or missing references) //IL_081c: Unknown result type (might be due to invalid IL or missing references) //IL_0832: Unknown result type (might be due to invalid IL or missing references) //IL_0837: Unknown result type (might be due to invalid IL or missing references) //IL_083c: Unknown result type (might be due to invalid IL or missing references) //IL_083d: Unknown result type (might be due to invalid IL or missing references) //IL_0857: Unknown result type (might be due to invalid IL or missing references) //IL_0860: Unknown result type (might be due to invalid IL or missing references) //IL_0874: Unknown result type (might be due to invalid IL or missing references) //IL_087e: Expected O, but got Unknown //IL_089b: Unknown result type (might be due to invalid IL or missing references) //IL_08a0: Unknown result type (might be due to invalid IL or missing references) //IL_08b6: Unknown result type (might be due to invalid IL or missing references) //IL_08bb: Unknown result type (might be due to invalid IL or missing references) //IL_08d1: Unknown result type (might be due to invalid IL or missing references) //IL_08d6: Unknown result type (might be due to invalid IL or missing references) //IL_08db: Unknown result type (might be due to invalid IL or missing references) //IL_08dc: Unknown result type (might be due to invalid IL or missing references) //IL_08f6: Unknown result type (might be due to invalid IL or missing references) //IL_08ff: Unknown result type (might be due to invalid IL or missing references) //IL_0913: Unknown result type (might be due to invalid IL or missing references) //IL_091d: Expected O, but got Unknown //IL_093a: Unknown result type (might be due to invalid IL or missing references) //IL_093f: Unknown result type (might be due to invalid IL or missing references) //IL_0955: Unknown result type (might be due to invalid IL or missing references) //IL_095a: Unknown result type (might be due to invalid IL or missing references) //IL_0970: Unknown result type (might be due to invalid IL or missing references) //IL_0975: Unknown result type (might be due to invalid IL or missing references) //IL_097a: Unknown result type (might be due to invalid IL or missing references) //IL_097b: Unknown result type (might be due to invalid IL or missing references) //IL_0995: Unknown result type (might be due to invalid IL or missing references) //IL_099e: Unknown result type (might be due to invalid IL or missing references) //IL_09b2: Unknown result type (might be due to invalid IL or missing references) //IL_09bc: Expected O, but got Unknown //IL_09d9: Unknown result type (might be due to invalid IL or missing references) //IL_09de: Unknown result type (might be due to invalid IL or missing references) //IL_09f4: Unknown result type (might be due to invalid IL or missing references) //IL_09f9: Unknown result type (might be due to invalid IL or missing references) //IL_0a0f: Unknown result type (might be due to invalid IL or missing references) //IL_0a14: Unknown result type (might be due to invalid IL or missing references) //IL_0a19: Unknown result type (might be due to invalid IL or missing references) //IL_0a1a: Unknown result type (might be due to invalid IL or missing references) //IL_0a34: Unknown result type (might be due to invalid IL or missing references) //IL_0a3d: Unknown result type (might be due to invalid IL or missing references) //IL_0a51: Unknown result type (might be due to invalid IL or missing references) //IL_0a5b: Expected O, but got Unknown //IL_0a78: Unknown result type (might be due to invalid IL or missing references) //IL_0a7d: Unknown result type (might be due to invalid IL or missing references) //IL_0a93: Unknown result type (might be due to invalid IL or missing references) //IL_0a98: Unknown result type (might be due to invalid IL or missing references) //IL_0aae: Unknown result type (might be due to invalid IL or missing references) //IL_0ab3: Unknown result type (might be due to invalid IL or missing references) //IL_0ab8: Unknown result type (might be due to invalid IL or missing references) //IL_0ab9: Unknown result type (might be due to invalid IL or missing references) //IL_0ad3: Unknown result type (might be due to invalid IL or missing references) //IL_0adc: Unknown result type (might be due to invalid IL or missing references) //IL_0af0: Unknown result type (might be due to invalid IL or missing references) //IL_0afa: Expected O, but got Unknown //IL_0b17: Unknown result type (might be due to invalid IL or missing references) //IL_0b1c: Unknown result type (might be due to invalid IL or missing references) //IL_0b32: Unknown result type (might be due to invalid IL or missing references) //IL_0b37: Unknown result type (might be due to invalid IL or missing references) //IL_0b4d: Unknown result type (might be due to invalid IL or missing references) //IL_0b52: Unknown result type (might be due to invalid IL or missing references) //IL_0b57: Unknown result type (might be due to invalid IL or missing references) //IL_0b58: Unknown result type (might be due to invalid IL or missing references) //IL_0b72: Unknown result type (might be due to invalid IL or missing references) //IL_0b7b: Unknown result type (might be due to invalid IL or missing references) //IL_0b8f: Unknown result type (might be due to invalid IL or missing references) //IL_0b99: Expected O, but got Unknown //IL_0bb6: Unknown result type (might be due to invalid IL or missing references) //IL_0bbb: Unknown result type (might be due to invalid IL or missing references) //IL_0bd1: Unknown result type (might be due to invalid IL or missing references) //IL_0bd6: Unknown result type (might be due to invalid IL or missing references) //IL_0bec: Unknown result type (might be due to invalid IL or missing references) //IL_0bf1: Unknown result type (might be due to invalid IL or missing references) //IL_0bf6: Unknown result type (might be due to invalid IL or missing references) //IL_0bf7: Unknown result type (might be due to invalid IL or missing references) //IL_0c11: Unknown result type (might be due to invalid IL or missing references) //IL_0c1a: Unknown result type (might be due to invalid IL or missing references) //IL_0c2e: Unknown result type (might be due to invalid IL or missing references) //IL_0c38: Expected O, but got Unknown //IL_0c55: Unknown result type (might be due to invalid IL or missing references) //IL_0c5a: Unknown result type (might be due to invalid IL or missing references) //IL_0c70: Unknown result type (might be due to invalid IL or missing references) //IL_0c75: Unknown result type (might be due to invalid IL or missing references) //IL_0c8b: Unknown result type (might be due to invalid IL or missing references) //IL_0c90: Unknown result type (might be due to invalid IL or missing references) //IL_0c95: Unknown result type (might be due to invalid IL or missing references) //IL_0c96: Unknown result type (might be due to invalid IL or missing references) GameObject val = AssetBundle.LoadAsset<GameObject>("atma"); val.AddComponent<ItemDisplay>(); val.GetComponent<ItemDisplay>().rendererInfos = Utils.ItemDisplaySetup(val); ItemDisplayRuleDict val2 = new ItemDisplayRuleDict(Array.Empty<ItemDisplayRule>()); val2.Add("mdlCommandoDualies", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Chest", localPos = new Vector3(0.05931f, 0.11769f, -0.21938f), localAngles = new Vector3(23.27695f, 5.91633f, 22.06631f), localScale = new Vector3(2.11112f, 2.11112f, 2.11112f) } }); val2.Add("mdlHuntress", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Chest", localPos = new Vector3(-0.00121f, -0.01595f, -0.11217f), localAngles = new Vector3(9.08415f, 326.9416f, 324.1578f), localScale = new Vector3(2.18992f, 2.18992f, 2.18992f) } }); val2.Add("mdlToolbot", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "LowerArmR", localPos = new Vector3(0.53324f, 2.89081f, 0.01006f), localAngles = new Vector3(20.63849f, 243.5134f, 358.9025f), localScale = new Vector3(18.88126f, 18.88126f, 18.88126f) } }); val2.Add("mdlEngi", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Chest", localPos = new Vector3(-0.03588f, 0.0123f, -0.2605f), localAngles = new Vector3(19.14014f, 357.4113f, 346.8241f), localScale = new Vector3(2.76281f, 2.76281f, 2.76281f) } }); val2.Add("mdlMage", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Chest", localPos = new Vector3(-0.03411f, -0.30607f, -0.12951f), localAngles = new Vector3(9.03134f, 359.823f, 356.4779f), localScale = new Vector3(2.64689f, 2.64689f, 2.64689f) } }); val2.Add("mdlMerc", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "HandR", localPos = new Vector3(-0.25078f, 0.078f, 0.04389f), localAngles = new Vector3(337.2337f, 332.8286f, 305.9801f), localScale = new Vector3(3.25417f, 3.25417f, 3.25417f) } }); val2.Add("mdlTreebot", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "FlowerBase", localPos = new Vector3(-0.10445f, -0.35228f, -0.6879f), localAngles = new Vector3(28.78763f, 36.88558f, 97.3734f), localScale = new Vector3(3.71836f, 3.71836f, 3.71836f) } }); val2.Add("mdlLoader", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "MechHandR", localPos = new Vector3(0.0391f, -0.27704f, 0.07467f), localAngles = new Vector3(18.69483f, 16.37429f, 359.6162f), localScale = new Vector3(3f, 3f, 3f) } }); val2.Add("mdlCroco", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Chest", localPos = new Vector3(-1.51356f, 3.06965f, 9.13635f), localAngles = new Vector3(16.712f, 35.78552f, 237.5622f), localScale = new Vector3(20f, 15f, 20f) } }); val2.Add("mdlCaptain", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Head", localPos = new Vector3(0.0603f, 0.06345f, -0.00892f), localAngles = new Vector3(345.2615f, 324.2955f, 335.8669f), localScale = new Vector3(2f, 1f, 2f) } }); val2.Add("mdlBandit2", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "MainWeapon", localPos = new Vector3(-0.01876f, 0.67848f, 0.01137f), localAngles = new Vector3(16.80556f, 356.7202f, 359.0283f), localScale = new Vector3(1.47453f, 1.47453f, 1.47453f) } }); val2.Add("mdlHeretic", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Chest", localPos = new Vector3(0.33803f, -0.34522f, 0.16156f), localAngles = new Vector3(286.6828f, 287.9903f, 141.7693f), localScale = new Vector3(5f, 5f, 5f) } }); val2.Add("mdlRailGunner", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Backpack", localPos = new Vector3(0.23427f, -0.10423f, -0.05527f), localAngles = new Vector3(19.80791f, 840f / MathF.PI, 0.90511f), localScale = new Vector3(3f, 3f, 3f) } }); val2.Add("mdlVoidSurvivor", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "LargeExhaust2R", localPos = new Vector3(0.02325f, -0.07614f, -0.01583f), localAngles = new Vector3(53.4817f, 5.6685f, 127f / 160f), localScale = new Vector3(3f, 1f, 3f) } }); val2.Add("mdlMiner", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Chest", localPos = new Vector3(0.00079f, 0.00048f, -0.00194f), localAngles = new Vector3(11.8281f, 9.81263f, 17.99667f), localScale = new Vector3(0.02779f, 0.02779f, 0.02779f) } }); val2.Add("mdlNemforcer(Clone)", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Chest", localPos = new Vector3(0.01594f, -0.00074f, 0.00416f), localAngles = new Vector3(352.4106f, 77.70187f, 339.1572f), localScale = new Vector3(0.12158f, 0.12158f, 0.12158f) } }); val2.Add("mdlEnforcer", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Chest", localPos = new Vector3(0.31749f, -0.1789f, 0.11174f), localAngles = new Vector3(20.46696f, 83.04866f, 334.5096f), localScale = new Vector3(3.92409f, 3.92409f, 3.92409f) } }); val2.Add("mdlPaladin", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Chest", localPos = new Vector3(0.15985f, -0.69306f, -0.13191f), localAngles = new Vector3(1.69802f, 8.71632f, 15.83549f), localScale = new Vector3(4.30285f, 5.79825f, 4.30285f) } }); val2.Add("mdlRocket", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "Chest", localPos = new Vector3(-0.18752f, -0.52693f, 0.03871f), localAngles = new Vector3(34.70107f, 248.6318f, 354.8853f), localScale = new Vector3(3.94916f, 3.94916f, 3.94916f) } }); val2.Add("mdlSniper", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "GunBarrel", localPos = new Vector3(0.00144f, 0.02943f, 0.3023f), localAngles = new Vector3(70.40952f, 185.3266f, 184.8057f), localScale = new Vector3(1.80279f, 1.80279f, 1.80279f) } }); return val2; } public override void Init(ConfigFile config) { CreateConfig(config); LoadAssetBundle(); SetLogbookCameraPosition(); LoadLanguageFile(); CreateItem(ref ExtradimensionalItems.Modules.Content.Items.Atma); Hooks(); } protected override void Hooks() { //IL_000d: Unknown result type (might be due to invalid IL or missing references) //IL_0017: Expected O, but got Unknown base.Hooks(); RecalculateStatsAPI.GetStatCoefficients += new StatHookEventHandler(RecalculateStatsAPI_GetStatCoefficients); } private void RecalculateStatsAPI_GetStatCoefficients(CharacterBody sender, StatHookEventArgs args) { int count = GetCount(sender); if (count > 0) { float num = sender.maxHealth / (HealthPerLevel.Value * ((100f - Util.ConvertAmplificationPercentageIntoReductionPercentage(PerStackScaling.Value * (float)(count - 1))) / 100f)); if (num < 1f) { num = 1f; } args.baseDamageAdd += num * sender.levelDamage; } } public override string GetOverlayDescription(string value, JSONNode tokensNode) { return string.Format(value, HealthPerLevel.Value, (PerStackScaling.Value / 100f).ToString("0.#%")); } public override void CreateConfig(ConfigFile config) { HealthPerLevel = config.Bind<float>("Item: " + ItemName, "Health Per Level", 250f, "How much health item requires to grand additional level of damage."); PerStackScaling = config.Bind<float>("Item: " + ItemName, "Per Stack Scaling", 25f, "By how much, in percent, health requirement lowers per stack."); if (RiskOfOptionsCompat.enabled) { RiskOfOptionsCompat.CreateNewOption(HealthPerLevel, 10f, 500f); RiskOfOptionsCompat.CreateNewOption(PerStackScaling, 1f, 100f, 0.5f); RiskOfOptionsCompat.AddDelegateOnModOptionsExit(OnModOptionsExit); } } } public class DamageOnCooldowns : ItemBase<DamageOnCooldowns> { public class DamageOnCooldownsSendNumberBuffs : INetMessage, ISerializableObject { private NetworkInstanceId netId; private int numberOfBuffsFromClient; public DamageOnCooldownsSendNumberBuffs() { } public DamageOnCooldownsSendNumberBuffs(NetworkInstanceId netId, int buffsCount) { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_0008: Unknown result type (might be due to invalid IL or missing references) this.netId = netId; numberOfBuffsFromClient = buffsCount; } public void Deserialize(NetworkReader reader) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Unknown result type (might be due to invalid IL or missing references) netId = reader.ReadNetworkId(); numberOfBuffsFromClient = reader.ReadInt32(); } public void OnReceived() { //IL_0013: Unknown result type (might be due to invalid IL or missing references) if (!NetworkServer.active) { MyLogger.LogInfo("Recieved ChronoshiftRestoreStateOnServer message on client, doing nothing..."); return; } GameObject val = Util.FindNetworkObject(netId); CharacterBody body = default(CharacterBody); if (Object.op_Implicit((Object)(object)val) && val.TryGetComponent<CharacterBody>(ref body)) { ApplyBuffs(body, numberOfBuffsFromClient); } } public void Serialize(NetworkWriter writer) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) writer.Write(netId); writer.Write(numberOfBuffsFromClient); } } public static ConfigEntry<float> DamageBonus; public static ConfigEntry<float> DamageBonusPerStack; public override string ItemName => "DamageOnCooldowns"; public override string ItemLangTokenName => "DAMAGE_ON_COOLDOWNS"; public override ItemTier Tier => (ItemTier)1; public override string BundleName => "damageoncooldowns"; public override ItemTag[] ItemTags => (ItemTag[])(object)new ItemTag[1] { (ItemTag)1 }; public override GameObject ItemModel => AssetBundle.LoadAsset<GameObject>("damageoncooldowns"); public override Sprite ItemIcon => AssetBundle.LoadAsset<Sprite>("texDamageOnCooldownIcon"); public override ItemDisplayRuleDict CreateItemDisplayRules() { //IL_002e: Unknown result type (might be due to invalid IL or missing references) //IL_0034: Expected O, but got Unknown //IL_0044: Unknown result type (might be due to invalid IL or missing references) //IL_004d: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_006b: Expected O, but got Unknown //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_00a3: Unknown result type (might be due to invalid IL or missing references) //IL_00a8: Unknown result type (might be due to invalid IL or missing references) //IL_00be: Unknown result type (might be due to invalid IL or missing references) //IL_00c3: Unknown result type (might be due to invalid IL or missing references) //IL_00c8: Unknown result type (might be due to invalid IL or missing references) //IL_00c9: Unknown result type (might be due to invalid IL or missing references) //IL_00e3: 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_0100: Unknown result type (might be due to invalid IL or missing references) //IL_010a: Expected O, but got Unknown //IL_0127: Unknown result type (might be due to invalid IL or missing references) //IL_012c: Unknown result type (might be due to invalid IL or missing references) //IL_0142: Unknown result type (might be due to invalid IL or missing references) //IL_0147: Unknown result type (might be due to invalid IL or missing references) //IL_015d: Unknown result type (might be due to invalid IL or missing references) //IL_0162: Unknown result type (might be due to invalid IL or missing references) //IL_0167: Unknown result type (might be due to invalid IL or missing references) //IL_0168: Unknown result type (might be due to invalid IL or missing references) //IL_0182: Unknown result type (might be due to invalid IL or missing references) //IL_018b: Unknown result type (might be due to invalid IL or missing references) //IL_019f: Unknown result type (might be due to invalid IL or missing references) //IL_01a9: Expected O, but got Unknown //IL_01c6: Unknown result type (might be due to invalid IL or missing references) //IL_01cb: Unknown result type (might be due to invalid IL or missing references) //IL_01e1: Unknown result type (might be due to invalid IL or missing references) //IL_01e6: Unknown result type (might be due to invalid IL or missing references) //IL_01fc: Unknown result type (might be due to invalid IL or missing references) //IL_0201: 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_0207: Unknown result type (might be due to invalid IL or missing references) //IL_0221: Unknown result type (might be due to invalid IL or missing references) //IL_022a: Unknown result type (might be due to invalid IL or missing references) //IL_023e: Unknown result type (might be due to invalid IL or missing references) //IL_0248: Expected O, but got Unknown //IL_0265: Unknown result type (might be due to invalid IL or missing references) //IL_026a: Unknown result type (might be due to invalid IL or missing references) //IL_0280: Unknown result type (might be due to invalid IL or missing references) //IL_0285: Unknown result type (might be due to invalid IL or missing references) //IL_029b: Unknown result type (might be due to invalid IL or missing references) //IL_02a0: Unknown result type (might be due to invalid IL or missing references) //IL_02a5: 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_02c0: Unknown result type (might be due to invalid IL or missing references) //IL_02c9: Unknown result type (might be due to invalid IL or missing references) //IL_02dd: Unknown result type (might be due to invalid IL or missing references) //IL_02e7: Expected O, but got Unknown //IL_0304: Unknown result type (might be due to invalid IL or missing references) //IL_0309: Unknown result type (might be due to invalid IL or missing references) //IL_031f: Unknown result type (might be due to invalid IL or missing references) //IL_0324: Unknown result type (might be due to invalid IL or missing references) //IL_033a: 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_0344: Unknown result type (might be due to invalid IL or missing references) //IL_0345: Unknown result type (might be due to invalid IL or missing references) //IL_035f: Unknown result type (might be due to invalid IL or missing references) //IL_0368: Unknown result type (might be due to invalid IL or missing references) //IL_037c: Unknown result type (might be due to invalid IL or missing references) //IL_0386: Expected O, but got Unknown //IL_03a3: Unknown result type (might be due to invalid IL or missing references) //IL_03a8: Unknown result type (might be due to invalid IL or missing references) //IL_03be: Unknown result type (might be due to invalid IL or missing references) //IL_03c3: Unknown result type (might be due to invalid IL or missing references) //IL_03d9: Unknown result type (might be due to invalid IL or missing references) //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_03e4: Unknown result type (might be due to invalid IL or missing references) //IL_03fe: Unknown result type (might be due to invalid IL or missing references) //IL_0407: Unknown result type (might be due to invalid IL or missing references) //IL_041b: Unknown result type (might be due to invalid IL or missing references) //IL_0425: Expected O, but got Unknown //IL_0442: Unknown result type (might be due to invalid IL or missing references) //IL_0447: Unknown result type (might be due to invalid IL or missing references) //IL_045d: Unknown result type (might be due to invalid IL or missing references) //IL_0462: Unknown result type (might be due to invalid IL or missing references) //IL_0478: Unknown result type (might be due to invalid IL or missing references) //IL_047d: Unknown result type (might be due to invalid IL or missing references) //IL_0482: Unknown result type (might be due to invalid IL or missing references) //IL_0483: Unknown result type (might be due to invalid IL or missing references) //IL_049d: Unknown result type (might be due to invalid IL or missing references) //IL_04a6: Unknown result type (might be due to invalid IL or missing references) //IL_04ba: Unknown result type (might be due to invalid IL or missing references) //IL_04c4: Expected O, but got Unknown //IL_04e1: Unknown result type (might be due to invalid IL or missing references) //IL_04e6: Unknown result type (might be due to invalid IL or missing references) //IL_04fc: Unknown result type (might be due to invalid IL or missing references) //IL_0501: Unknown result type (might be due to invalid IL or missing references) //IL_0517: Unknown result type (might be due to invalid IL or missing references) //IL_051c: Unknown result type (might be due to invalid IL or missing references) //IL_0521: Unknown result type (might be due to invalid IL or missing references) //IL_0522: Unknown result type (might be due to invalid IL or missing references) //IL_053c: Unknown result type (might be due to invalid IL or missing references) //IL_0545: Unknown result type (might be due to invalid IL or missing references) //IL_0559: Unknown result type (might be due to invalid IL or missing references) //IL_0563: Expected O, but got Unknown //IL_0580: Unknown result type (might be due to invalid IL or missing references) //IL_0585: Unknown result type (might be due to invalid IL or missing references) //IL_059b: Unknown result type (might be due to invalid IL or missing references) //IL_05a0: Unknown result type (might be due to invalid IL or missing references) //IL_05b6: Unknown result type (might be due to invalid IL or missing references) //IL_05bb: Unknown result type (might be due to invalid IL or missing references) //IL_05c0: Unknown result type (might be due to invalid IL or missing references) //IL_05c1: Unknown result type (might be due to invalid IL or missing references) //IL_05db: Unknown result type (might be due to invalid IL or missing references) //IL_05e4: Unknown result type (might be due to invalid IL or missing references) //IL_05f8: Unknown result type (might be due to invalid IL or missing references) //IL_0602: Expected O, but got Unknown //IL_061f: Unknown result type (might be due to invalid IL or missing references) //IL_0624: Unknown result type (might be due to invalid IL or missing references) //IL_063a: Unknown result type (might be due to invalid IL or missing references) //IL_063f: 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_065a: Unknown result type (might be due to invalid IL or missing references) //IL_065f: Unknown result type (might be due to invalid IL or missing references) //IL_0660: Unknown result type (might be due to invalid IL or missing references) //IL_067a: Unknown result type (might be due to invalid IL or missing references) //IL_0683: Unknown result type (might be due to invalid IL or missing references) //IL_0697: Unknown result type (might be due to invalid IL or missing references) //IL_06a1: Expected O, but got Unknown //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_06d9: Unknown result type (might be due to invalid IL or missing references) //IL_06de: Unknown result type (might be due to invalid IL or missing references) //IL_06f4: Unknown result type (might be due to invalid IL or missing references) //IL_06f9: Unknown result type (might be due to invalid IL or missing references) //IL_06fe: Unknown result type (might be due to invalid IL or missing references) //IL_06ff: Unknown result type (might be due to invalid IL or missing references) //IL_0719: Unknown result type (might be due to invalid IL or missing references) //IL_0722: 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_0740: Expected O, but got Unknown //IL_075d: Unknown result type (might be due to invalid IL or missing references) //IL_0762: Unknown result type (might be due to invalid IL or missing references) //IL_0778: Unknown result type (might be due to invalid IL or missing references) //IL_077d: Unknown result type (might be due to invalid IL or missing references) //IL_0793: Unknown result type (might be due to invalid IL or missing references) //IL_0798: Unknown result type (might be due to invalid IL or missing references) //IL_079d: Unknown result type (might be due to invalid IL or missing references) //IL_079e: Unknown result type (might be due to invalid IL or missing references) //IL_07b8: Unknown result type (might be due to invalid IL or missing references) //IL_07c1: Unknown result type (might be due to invalid IL or missing references) //IL_07d5: Unknown result type (might be due to invalid IL or missing references) //IL_07df: Expected O, but got Unknown //IL_07fc: Unknown result type (might be due to invalid IL or missing references) //IL_0801: Unknown result type (might be due to invalid IL or missing references) //IL_0817: Unknown result type (might be due to invalid IL or missing references) //IL_081c: Unknown result type (might be due to invalid IL or missing references) //IL_0832: Unknown result type (might be due to invalid IL or missing references) //IL_0837: Unknown result type (might be due to invalid IL or missing references) //IL_083c: Unknown result type (might be due to invalid IL or missing references) //IL_083d: Unknown result type (might be due to invalid IL or missing references) //IL_0857: Unknown result type (might be due to invalid IL or missing references) //IL_0860: Unknown result type (might be due to invalid IL or missing references) //IL_0874: Unknown result type (might be due to invalid IL or missing references) //IL_087e: Expected O, but got Unknown //IL_089b: Unknown result type (might be due to invalid IL or missing references) //IL_08a0: Unknown result type (might be due to invalid IL or missing references) //IL_08b6: Unknown result type (might be due to invalid IL or missing references) //IL_08bb: Unknown result type (might be due to invalid IL or missing references) //IL_08d1: Unknown result type (might be due to invalid IL or missing references) //IL_08d6: Unknown result type (might be due to invalid IL or missing references) //IL_08db: Unknown result type (might be due to invalid IL or missing references) //IL_08dc: Unknown result type (might be due to invalid IL or missing references) //IL_08f6: Unknown result type (might be due to invalid IL or missing references) //IL_08ff: Unknown result type (might be due to invalid IL or missing references) //IL_0913: Unknown result type (might be due to invalid IL or missing references) //IL_091d: Expected O, but got Unknown //IL_093a: Unknown result type (might be due to invalid IL or missing references) //IL_093f: Unknown result type (might be due to invalid IL or missing references) //IL_0955: Unknown result type (might be due to invalid IL or missing references) //IL_095a: Unknown result type (might be due to invalid IL or missing references) //IL_0970: Unknown result type (might be due to invalid IL or missing references) //IL_0975: Unknown result type (might be due to invalid IL or missing references) //IL_097a: Unknown result type (might be due to invalid IL or missing references) //IL_097b: Unknown result type (might be due to invalid IL or missing references) //IL_0995: Unknown result type (might be due to invalid IL or missing references) //IL_099e: Unknown result type (might be due to invalid IL or missing references) //IL_09b2: Unknown result type (might be due to invalid IL or missing references) //IL_09bc: Expected O, but got Unknown //IL_09d9: Unknown result type (might be due to invalid IL or missing references) //IL_09de: Unknown result type (might be due to invalid IL or missing references) //IL_09f4: Unknown result type (might be due to invalid IL or missing references) //IL_09f9: Unknown result type (might be due to invalid IL or missing references) //IL_0a0f: Unknown result type (might be due to invalid IL or missing references) //IL_0a14: Unknown result type (might be due to invalid IL or missing references) //IL_0a19: Unknown result type (might be due to invalid IL or missing references) //IL_0a1a: Unknown result type (might be due to invalid IL or missing references) //IL_0a34: Unknown result type (might be due to invalid IL or missing references) //IL_0a3d: Unknown result type (might be due to invalid IL or missing references) //IL_0a51: Unknown result type (might be due to invalid IL or missing references) //IL_0a5b: Expected O, but got Unknown //IL_0a78: Unknown result type (might be due to invalid IL or missing references) //IL_0a7d: Unknown result type (might be due to invalid IL or missing references) //IL_0a93: Unknown result type (might be due to invalid IL or missing references) //IL_0a98: Unknown result type (might be due to invalid IL or missing references) //IL_0aae: Unknown result type (might be due to invalid IL or missing references) //IL_0ab3: Unknown result type (might be due to invalid IL or missing references) //IL_0ab8: Unknown result type (might be due to invalid IL or missing references) //IL_0ab9: Unknown result type (might be due to invalid IL or missing references) //IL_0ad3: Unknown result type (might be due to invalid IL or missing references) //IL_0adc: Unknown result type (might be due to invalid IL or missing references) //IL_0af0: Unknown result type (might be due to invalid IL or missing references) //IL_0afa: Expected O, but got Unknown //IL_0b17: Unknown result type (might be due to invalid IL or missing references) //IL_0b1c: Unknown result type (might be due to invalid IL or missing references) //IL_0b32: Unknown result type (might be due to invalid IL or missing references) //IL_0b37: Unknown result type (might be due to invalid IL or missing references) //IL_0b4d: Unknown result type (might be due to invalid IL or missing references) //IL_0b52: Unknown result type (might be due to invalid IL or missing references) //IL_0b57: Unknown result type (might be due to invalid IL or missing references) //IL_0b58: Unknown result type (might be due to invalid IL or missing references) //IL_0b72: Unknown result type (might be due to invalid IL or missing references) //IL_0b7b: Unknown result type (might be due to invalid IL or missing references) //IL_0b8f: Unknown result type (might be due to invalid IL or missing references) //IL_0b99: Expected O, but got Unknown //IL_0bb6: Unknown result type (might be due to invalid IL or missing references) //IL_0bbb: Unknown result type (might be due to invalid IL or missing references) //IL_0bd1: Unknown result type (might be due to invalid IL or missing references) //IL_0bd6: Unknown result type (might be due to invalid IL or missing references) //IL_0bec: Unknown result type (might be due to invalid IL or missing references) //IL_0bf1: Unknown result type (might be due to invalid IL or missing references) //IL_0bf6: Unknown result type (might be due to invalid IL or missing references) //IL_0bf7: Unknown result type (might be due to invalid IL or missing references) //IL_0c11: Unknown result type (might be due to invalid IL or missing references) //IL_0c1a: Unknown result type (might be due to invalid IL or missing references) //IL_0c2e: Unknown result type (might be due to invalid IL or missing references) //IL_0c38: Expected O, but got Unknown //IL_0c55: Unknown result type (might be due to invalid IL or missing references) //IL_0c5a: Unknown result type (might be due to invalid IL or missing references) //IL_0c70: Unknown result type (might be due to invalid IL or missing references) //IL_0c75: Unknown result type (might be due to invalid IL or missing references) //IL_0c8b: Unknown result type (might be due to invalid IL or missing references) //IL_0c90: Unknown result type (might be due to invalid IL or missing references) //IL_0c95: Unknown result type (might be due to invalid IL or missing references) //IL_0c96: Unknown result type (might be due to invalid IL or missing references) GameObject val = AssetBundle.LoadAsset<GameObject>("damageoncooldowns"); val.AddComponent<ItemDisplay>(); val.GetComponent<ItemDisplay>().rendererInfos = Utils.ItemDisplaySetup(val); ItemDisplayRuleDict val2 = new ItemDisplayRuleDict(Array.Empty<ItemDisplayRule>()); val2.Add("mdlCommandoDualies", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(-0.09552f, 0.11592f, 0.06752f), localAngles = new Vector3(27.08141f, 304.4822f, 189.2228f), localScale = new Vector3(0.20751f, 0.20751f, 0.20751f) } }); val2.Add("mdlHuntress", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(-0.11649f, 0.18389f, 0.06237f), localAngles = new Vector3(28.06488f, 266.8881f, 196.0231f), localScale = new Vector3(0.19636f, 0.19636f, 0.19636f) } }); val2.Add("mdlToolbot", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(0.12048f, 0.90659f, 0.87745f), localAngles = new Vector3(23.94655f, 178.5852f, 175.6136f), localScale = new Vector3(2f, 2f, 2f) } }); val2.Add("mdlEngi", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(-0.18828f, 0.13572f, 0.00151f), localAngles = new Vector3(30.69436f, 274.8616f, 176.1863f), localScale = new Vector3(0.22972f, 0.22972f, 0.22972f) } }); val2.Add("mdlMage", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(-0.11235f, 0.22891f, 0.05888f), localAngles = new Vector3(25.38397f, 272.8091f, 189.4688f), localScale = new Vector3(0.17773f, 0.17773f, 0.17773f) } }); val2.Add("mdlMerc", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(-0.10393f, 0.20613f, 0.06577f), localAngles = new Vector3(29.68564f, 300.2674f, 182.2623f), localScale = new Vector3(0.23426f, 0.23426f, 0.23426f) } }); val2.Add("mdlTreebot", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighBackR", localPos = new Vector3(0.32198f, 0.39853f, 0.15919f), localAngles = new Vector3(333.9132f, 289.5818f, 57.39796f), localScale = new Vector3(0.34275f, 0.34275f, 0.34275f) } }); val2.Add("mdlLoader", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(-0.12364f, 0.15695f, 0.09189f), localAngles = new Vector3(37.29633f, 301.3473f, 186.7303f), localScale = new Vector3(0.22691f, 0.22691f, 0.22691f) } }); val2.Add("mdlCroco", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(-1.14331f, 1.28121f, -0.09511f), localAngles = new Vector3(29.22408f, 243.6448f, 166.6056f), localScale = new Vector3(2.34388f, 2.34388f, 2.34388f) } }); val2.Add("mdlCaptain", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "CalfR", localPos = new Vector3(0.12231f, 0.10491f, 0.03471f), localAngles = new Vector3(20.49907f, 97.37933f, 172.5078f), localScale = new Vector3(0.24559f, 0.24559f, 0.24559f) } }); val2.Add("mdlBandit2", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(-0.07267f, 0.24929f, 0.03758f), localAngles = new Vector3(28.44042f, 288.6184f, 185.2202f), localScale = new Vector3(0.19305f, 0.19305f, 0.19305f) } }); val2.Add("mdlHeretic", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(-0.22414f, 0.16346f, 0.20641f), localAngles = new Vector3(343.4409f, 25.48389f, 270.7061f), localScale = new Vector3(0.42563f, 0.42563f, 0.42563f) } }); val2.Add("mdlRailGunner", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(-0.10685f, 0.08854f, 0.03331f), localAngles = new Vector3(34.29095f, 98.02614f, 174.7414f), localScale = new Vector3(0.19173f, 0.19173f, 0.19173f) } }); val2.Add("mdlVoidSurvivor", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(-0.04302f, 0.27724f, -0.11008f), localAngles = new Vector3(39.20871f, 5.40946f, 183.1687f), localScale = new Vector3(0.21219f, 0.21219f, 0.21219f) } }); val2.Add("mdlMiner", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "LegR", localPos = new Vector3(0.00047f, 0.00182f, 0.0011f), localAngles = new Vector3(36.96081f, 203.9341f, 184.2606f), localScale = new Vector3(0.00194f, 0.00194f, 0.00194f) } }); val2.Add("mdlNemforcer(Clone)", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "LegR", localPos = new Vector3(-0.00262f, 0.00736f, -0.00406f), localAngles = new Vector3(38.16177f, 26.56483f, 169.9774f), localScale = new Vector3(0.00825f, 0.00825f, 0.00825f) } }); val2.Add("mdlEnforcer", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighL", localPos = new Vector3(-0.05615f, 0.31438f, 0.13046f), localAngles = new Vector3(32.51384f, 163.4914f, 191.6256f), localScale = new Vector3(0.23618f, 0.23618f, 0.23618f) } }); val2.Add("mdlPaladin", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "ThighR", localPos = new Vector3(0.15149f, 0.49419f, -0.18609f), localAngles = new Vector3(38.69322f, 308.8141f, 179.926f), localScale = new Vector3(0.31299f, 0.31299f, 0.31299f) } }); val2.Add("mdlRocket", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "thigh.L", localPos = new Vector3(-0.08023f, 0.29315f, 0.1616f), localAngles = new Vector3(37.44303f, 145.909f, 184.9257f), localScale = new Vector3(0.18108f, 0.18108f, 0.18108f) } }); val2.Add("mdlSniper", (ItemDisplayRule[])(object)new ItemDisplayRule[1] { new ItemDisplayRule { ruleType = (ItemDisplayRuleType)0, followerPrefab = val, followerPrefabAddress = new AssetReferenceGameObject(""), childName = "UpperArmR", localPos = new Vector3(-0.00577f, 0.15569f, -0.08032f), localAngles = new Vector3(21.31146f, 187.8139f, 174.2495f), localScale = new Vector3(0.17465f, 0.17465f, 0.17465f) } }); return val2; } public override string GetOverlayDescription(string value, JSONNode tokensNode) { return string.Format(value, (DamageBonus.Value / 100f).ToString("###%"), (DamageBonusPerStack.Value / 100f).ToString("###%")); } public override void Init(ConfigFile config) { LoadAssetBundle(); SetLogbookCameraPosition(); CreateConfig(config); LoadLanguageFile(); CreateBuffs(); CreateItem(ref ExtradimensionalItems.Modules.Content.Items.DamageOnCooldowns);