using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using System.Security.Permissions;
using BepInEx;
using Jotunn;
using Jotunn.Configs;
using Jotunn.Entities;
using Jotunn.Managers;
using Jotunn.Utils;
using UnityEngine;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: AssemblyTitle("CopperRoof")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("CopperRoof")]
[assembly: AssemblyCopyright("Copyright © 2021")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("e3243d22-4307-4008-ba36-9f326008cde5")]
[assembly: AssemblyFileVersion("0.0.1.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.6.2", FrameworkDisplayName = ".NET Framework 4.6.2")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("0.0.1.0")]
namespace CopperRoofs;
[BepInPlugin("org.bepinex.plugins.bid.copperroofs", "CopperRoofs", "0.2.1")]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[NetworkCompatibility(/*Could not decode attribute arguments.*/)]
internal class CopperRoofs : BaseUnityPlugin
{
public const string PluginGUID = "org.bepinex.plugins.bid.copperroofs";
public const string PluginName = "CopperRoofs";
public const string PluginVersion = "0.2.1";
private void Awake()
{
//IL_0069: Unknown result type (might be due to invalid IL or missing references)
//IL_0070: Expected O, but got Unknown
//IL_0086: 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_0096: Unknown result type (might be due to invalid IL or missing references)
//IL_009d: Unknown result type (might be due to invalid IL or missing references)
//IL_00a5: Expected O, but got Unknown
//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
//IL_00ca: Expected O, but got Unknown
//IL_010c: Unknown result type (might be due to invalid IL or missing references)
//IL_0111: Unknown result type (might be due to invalid IL or missing references)
//IL_0115: Unknown result type (might be due to invalid IL or missing references)
//IL_0129: Unknown result type (might be due to invalid IL or missing references)
//IL_013d: Unknown result type (might be due to invalid IL or missing references)
//IL_0155: Unknown result type (might be due to invalid IL or missing references)
//IL_0163: Unknown result type (might be due to invalid IL or missing references)
//IL_016a: Expected O, but got Unknown
//IL_0180: Unknown result type (might be due to invalid IL or missing references)
//IL_0185: Unknown result type (might be due to invalid IL or missing references)
//IL_0190: 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_019f: Expected O, but got Unknown
//IL_01ba: Unknown result type (might be due to invalid IL or missing references)
//IL_01c4: Expected O, but got Unknown
//IL_020a: Unknown result type (might be due to invalid IL or missing references)
//IL_020f: Unknown result type (might be due to invalid IL or missing references)
//IL_0213: 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_023b: Unknown result type (might be due to invalid IL or missing references)
//IL_0254: Unknown result type (might be due to invalid IL or missing references)
//IL_0263: Unknown result type (might be due to invalid IL or missing references)
//IL_026a: Expected O, but got Unknown
//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_0290: Unknown result type (might be due to invalid IL or missing references)
//IL_0297: Unknown result type (might be due to invalid IL or missing references)
//IL_029f: Expected O, but got Unknown
//IL_02ba: Unknown result type (might be due to invalid IL or missing references)
//IL_02c4: Expected O, but got Unknown
//IL_02fe: Unknown result type (might be due to invalid IL or missing references)
//IL_0305: Expected O, but got Unknown
//IL_031b: Unknown result type (might be due to invalid IL or missing references)
//IL_0320: Unknown result type (might be due to invalid IL or missing references)
//IL_032b: Unknown result type (might be due to invalid IL or missing references)
//IL_0332: Unknown result type (might be due to invalid IL or missing references)
//IL_033a: Expected O, but got Unknown
//IL_0355: Unknown result type (might be due to invalid IL or missing references)
//IL_035f: Expected O, but got Unknown
//IL_03a1: Unknown result type (might be due to invalid IL or missing references)
//IL_03a6: Unknown result type (might be due to invalid IL or missing references)
//IL_03aa: 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_03d2: Unknown result type (might be due to invalid IL or missing references)
//IL_03ea: Unknown result type (might be due to invalid IL or missing references)
//IL_03f8: Unknown result type (might be due to invalid IL or missing references)
//IL_03ff: Expected O, but got Unknown
//IL_0415: Unknown result type (might be due to invalid IL or missing references)
//IL_041a: Unknown result type (might be due to invalid IL or missing references)
//IL_0425: Unknown result type (might be due to invalid IL or missing references)
//IL_042c: Unknown result type (might be due to invalid IL or missing references)
//IL_0434: Expected O, but got Unknown
//IL_044f: Unknown result type (might be due to invalid IL or missing references)
//IL_0459: Expected O, but got Unknown
//IL_049f: Unknown result type (might be due to invalid IL or missing references)
//IL_04a4: Unknown result type (might be due to invalid IL or missing references)
//IL_04a8: Unknown result type (might be due to invalid IL or missing references)
//IL_04bc: Unknown result type (might be due to invalid IL or missing references)
//IL_04d0: Unknown result type (might be due to invalid IL or missing references)
//IL_04e9: Unknown result type (might be due to invalid IL or missing references)
//IL_04f8: Unknown result type (might be due to invalid IL or missing references)
//IL_04ff: Expected O, but got Unknown
//IL_0515: Unknown result type (might be due to invalid IL or missing references)
//IL_051a: Unknown result type (might be due to invalid IL or missing references)
//IL_0525: Unknown result type (might be due to invalid IL or missing references)
//IL_052c: Unknown result type (might be due to invalid IL or missing references)
//IL_0534: Expected O, but got Unknown
//IL_054f: Unknown result type (might be due to invalid IL or missing references)
//IL_0559: Expected O, but got Unknown
Logger.LogInfo((object)"CopperRoof has landed");
string category = "copper_roofs";
AssetBundle val = AssetUtils.LoadAssetBundleFromResources("copperroofs");
if ((Object)(object)val == (Object)null)
{
MonoBehaviour.print((object)"Error loading assetbundle copperroof");
return;
}
try
{
GameObject val2 = val.LoadAsset<GameObject>("bid_dome_sphere_1m");
val2.GetComponent<Piece>().m_name = "$piece_dome_sphere 1m";
val2.GetComponent<Piece>().m_icon = val.LoadAsset<Sprite>("dome_sphere_icon1");
PieceManager instance = PieceManager.Instance;
GameObject obj = val2;
PieceConfig val3 = new PieceConfig();
val3.PieceTable = "Hammer";
val3.Requirements = (RequirementConfig[])(object)new RequirementConfig[1]
{
new RequirementConfig
{
Item = "Copper",
Recover = true,
Amount = 1
}
};
val3.CraftingStation = "forge";
val3.Category = category;
instance.AddPiece(new CustomPiece(obj, true, val3));
GameObject val4 = PrefabManager.Instance.CreateClonedPrefab("bid_dome_sphere_2m", "bid_dome_sphere_1m");
val4.GetComponent<Piece>().m_name = "$piece_dome_sphere 2m";
val4.GetComponent<Piece>().m_icon = val.LoadAsset<Sprite>("dome_sphere_icon2");
Vector3 localScale = val4.transform.localScale;
localScale.x *= 2f;
localScale.y *= 2f;
localScale.z *= 2f;
val4.transform.localScale = localScale;
PieceManager instance2 = PieceManager.Instance;
GameObject obj2 = val4;
val3 = new PieceConfig();
val3.PieceTable = "Hammer";
val3.Requirements = (RequirementConfig[])(object)new RequirementConfig[1]
{
new RequirementConfig
{
Item = "Copper",
Recover = true,
Amount = 2
}
};
val3.CraftingStation = "forge";
val3.Category = category;
instance2.AddPiece(new CustomPiece(obj2, true, val3));
GameObject val5 = PrefabManager.Instance.CreateClonedPrefab("bid_dome_sphere_4m", "bid_dome_sphere_1m");
val5.GetComponent<Piece>().m_name = "$piece_dome_sphere 4m";
val5.GetComponent<Piece>().m_icon = val.LoadAsset<Sprite>("dome_sphere_icon4");
localScale = val5.transform.localScale;
localScale.x *= 4f;
localScale.y *= 4f;
localScale.z *= 4f;
val5.transform.localScale = localScale;
PieceManager instance3 = PieceManager.Instance;
GameObject obj3 = val5;
val3 = new PieceConfig();
val3.PieceTable = "Hammer";
val3.Requirements = (RequirementConfig[])(object)new RequirementConfig[1]
{
new RequirementConfig
{
Item = "Copper",
Recover = true,
Amount = 4
}
};
val3.CraftingStation = "forge";
val3.Category = category;
instance3.AddPiece(new CustomPiece(obj3, true, val3));
val2 = val.LoadAsset<GameObject>("bid_dome_cone_1m");
val2.GetComponent<Piece>().m_name = "$piece_dome_cone 1m";
val2.GetComponent<Piece>().m_icon = val.LoadAsset<Sprite>("dome_cone_icon1");
PieceManager instance4 = PieceManager.Instance;
GameObject obj4 = val2;
val3 = new PieceConfig();
val3.PieceTable = "Hammer";
val3.Requirements = (RequirementConfig[])(object)new RequirementConfig[1]
{
new RequirementConfig
{
Item = "Copper",
Recover = true,
Amount = 1
}
};
val3.CraftingStation = "forge";
val3.Category = category;
instance4.AddPiece(new CustomPiece(obj4, true, val3));
val4 = PrefabManager.Instance.CreateClonedPrefab("bid_dome_cone_2m", "bid_dome_cone_1m");
val4.GetComponent<Piece>().m_name = "$piece_dome_cone 2m";
val4.GetComponent<Piece>().m_icon = val.LoadAsset<Sprite>("dome_cone_icon2");
localScale = val4.transform.localScale;
localScale.x *= 2f;
localScale.y *= 2f;
localScale.z *= 2f;
val4.transform.localScale = localScale;
PieceManager instance5 = PieceManager.Instance;
GameObject obj5 = val4;
val3 = new PieceConfig();
val3.PieceTable = "Hammer";
val3.Requirements = (RequirementConfig[])(object)new RequirementConfig[1]
{
new RequirementConfig
{
Item = "Copper",
Recover = true,
Amount = 2
}
};
val3.CraftingStation = "forge";
val3.Category = category;
instance5.AddPiece(new CustomPiece(obj5, true, val3));
val5 = PrefabManager.Instance.CreateClonedPrefab("bid_dome_cone_4m", "bid_dome_cone_1m");
val5.GetComponent<Piece>().m_name = "$piece_dome_cone 4m";
val5.GetComponent<Piece>().m_icon = val.LoadAsset<Sprite>("dome_cone_icon4");
localScale = val5.transform.localScale;
localScale.x *= 4f;
localScale.y *= 4f;
localScale.z *= 4f;
val5.transform.localScale = localScale;
PieceManager instance6 = PieceManager.Instance;
GameObject obj6 = val5;
val3 = new PieceConfig();
val3.PieceTable = "Hammer";
val3.Requirements = (RequirementConfig[])(object)new RequirementConfig[1]
{
new RequirementConfig
{
Item = "Copper",
Recover = true,
Amount = 4
}
};
val3.CraftingStation = "forge";
val3.Category = category;
instance6.AddPiece(new CustomPiece(obj6, true, val3));
}
finally
{
val.Unload(false);
}
}
}