using System; using System.Collections.Immutable; using System.Diagnostics; using System.Reflection; using System.Resources; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using Bifrost.LocalizationData; using CrowbarForAll; using HarmonyLib; using ItemsAPI.Builders; using ItemsAPI.Descriptors; using ItemsAPI.Helpers; using MelonLoader; using Microsoft.CodeAnalysis; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: MelonInfo(typeof(global::CrowbarForAll.CrowbarForAll), "CrowbarForAll", "0.1.0", "Shlygly", null)] [assembly: MelonGame("ReLUGames", "MIMESIS")] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("Shlygly")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0+e772a921ea931845552cdcaa033105748a017d48")] [assembly: AssemblyProduct("CrowbarForAll")] [assembly: AssemblyTitle("CrowbarForAll")] [assembly: NeutralResourcesLanguage("en-US")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] [module: RefSafetyRules(11)] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)] internal sealed class RefSafetyRulesAttribute : Attribute { public readonly int Version; public RefSafetyRulesAttribute(int P_0) { Version = P_0; } } } namespace CrowbarForAll { public class CrowbarForAll : MelonMod { public override void OnInitializeMelon() { //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_0033: Unknown result type (might be due to invalid IL or missing references) //IL_003d: Unknown result type (might be due to invalid IL or missing references) //IL_0042: Unknown result type (might be due to invalid IL or missing references) //IL_004e: Unknown result type (might be due to invalid IL or missing references) //IL_005a: Unknown result type (might be due to invalid IL or missing references) //IL_0067: Expected O, but got Unknown VendingMachineDescriptor val = new VendingMachineDescriptor(2900, 180, new Vector3(-7.141f, 0.33200002f, 31.07f), (Quaternion?)new Quaternion(0f, -0.8407627f, 0f, 0.5414039f)) { ItemYOffset = 0.2f, ItemXRotation = 60f, ItemScale = 1.5f }; VendingMachineBuilder.RegisterVendingMachine(val); } } } namespace CrowbarForAll.Patches { [HarmonyPatch(typeof(Hub), "Start")] internal static class Hub_Start { private static void Postfix() { //IL_0020: Unknown result type (might be due to invalid IL or missing references) //IL_0025: Unknown result type (might be due to invalid IL or missing references) //IL_0030: Unknown result type (might be due to invalid IL or missing references) //IL_003b: 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_0051: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) //IL_0067: Unknown result type (might be due to invalid IL or missing references) //IL_0072: Unknown result type (might be due to invalid IL or missing references) //IL_007d: Unknown result type (might be due to invalid IL or missing references) //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_0093: 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_00b4: 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_00ca: 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_00e0: Unknown result type (might be due to invalid IL or missing references) //IL_00ec: Expected O, but got Unknown DataManager val = ReflectionTools.GetFieldOrProperty((object)Hub.s, "k__BackingField") ?? throw new NullReferenceException("DataManager not ready."); LocalizationData_MasterData val2 = new LocalizationData_MasterData { key = "STRING_CROWBAR_VENDING_MACHINE_TOOLTIP", ar = "إذا كان بإمكانك الدفاع عن نفسك بها، فيمكنك القتال بها أيضا\u064b!", de = "Wenn man sich damit verteidigen kann, kann man auch damit kämpfen!", en = "If you can defend yourself with it, you can fight with it too!", es = "¡Si puedes defenderte con ella, también puedes pelear con ella!", fr = "Si on peut se défendre avec, c'est qu'on peut aussi se battre avec !", it = "Se puoi difenderti con essa, puoi anche combattere con essa!", ja = "身を守れるなら、戦うことだってできる!", ko = "이걸로 자신을 지킬 수 있다면, 싸울 수도 있다!", pl = "Jeśli możesz się tym bronić, możesz też tym walczyć!", pt_br = "Se dá para se defender com isso, também dá para lutar!", ru = "Если этим можно защищаться, значит этим можно и драться!", th = "ถ\u0e49าใช\u0e49ป\u0e49องก\u0e31นต\u0e31วได\u0e49 ก\u0e47ใช\u0e49ส\u0e39\u0e49ได\u0e49เหม\u0e37อนก\u0e31น!", tr = "Kendini bununla savunabiliyorsan, bununla dövüşebilirsin de!", uk = "Якщо цим можна захищатися, то цим можна й битися!", vi = "Nếu có thể dùng nó để tự vệ, thì cũng có thể dùng nó để chiến đấu!", zh_cn = "既然能用它自卫,那当然也能用它来战斗!", zh_tw = "既然能用它自衛,那當然也能拿來戰鬥!" }; ImmutableDictionary value = val.ExcelDataManager.LocalizationDict.Remove(val2.key).Add(val2.key, val2); PropertyInfo propertyInfo = typeof(ExcelDataManager).GetProperty("LocalizationDict", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic) ?? throw new Exception("Could not find ExcelDataManager.LocalizationDict property."); propertyInfo.SetValue(val.ExcelDataManager, value); ReflectionTools.SetFieldOrProperty((object)val.ExcelDataManager.ItemInfoDict[2900], "VendingMachineTooltip", (object)val2.key); } } }