Decompiled source of OdinsKingdom v1.4.4
OdinsKingdom.dll
Decompiled 2 days ago
The result has been truncated due to the large size, download it to view full contents!
using System; using System.Collections; using System.Collections.Concurrent; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Globalization; using System.IO; using System.IO.Compression; using System.Linq; using System.Linq.Expressions; using System.Reflection; using System.Reflection.Emit; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Serialization; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using System.Text; using System.Text.RegularExpressions; using BepInEx; using BepInEx.Bootstrap; using BepInEx.Configuration; using HarmonyLib; using ItemManager; using JetBrains.Annotations; using LocalizationManager; using Microsoft.CodeAnalysis; using PieceManager; using ServerSync; using TMPro; using UnityEngine; using UnityEngine.UI; using YamlDotNet.Core; using YamlDotNet.Core.Events; using YamlDotNet.Core.Tokens; using YamlDotNet.Helpers; using YamlDotNet.Serialization; using YamlDotNet.Serialization.Converters; using YamlDotNet.Serialization.EventEmitters; using YamlDotNet.Serialization.NamingConventions; using YamlDotNet.Serialization.NodeDeserializers; using YamlDotNet.Serialization.NodeTypeResolvers; using YamlDotNet.Serialization.ObjectFactories; using YamlDotNet.Serialization.ObjectGraphTraversalStrategies; using YamlDotNet.Serialization.ObjectGraphVisitors; using YamlDotNet.Serialization.Schemas; using YamlDotNet.Serialization.TypeInspectors; using YamlDotNet.Serialization.TypeResolvers; using YamlDotNet.Serialization.Utilities; using YamlDotNet.Serialization.ValueDeserializers; [assembly: Guid("504E7E7A-066A-43C2-A491-2AF7FAE3FCBE")] [assembly: ComVisible(false)] [assembly: AssemblyTrademark("")] [assembly: AssemblyCopyright("Copyright © 2021")] [assembly: AssemblyProduct("OdinsKingdom")] [assembly: AssemblyCompany("")] [assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] [assembly: AssemblyDescription("")] [assembly: AssemblyTitle("OdinsKingdom")] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: CompilationRelaxations(8)] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyConfiguration("")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [<f718b400-e55d-48d5-9b7f-ba250e068c8b>Embedded] internal sealed class <f718b400-e55d-48d5-9b7f-ba250e068c8b>EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)] [<f718b400-e55d-48d5-9b7f-ba250e068c8b>Embedded] internal sealed class <992b5b43-cc3e-48d1-bf92-e867fc643891>NullableAttribute : Attribute { public readonly byte[] NullableFlags; public <992b5b43-cc3e-48d1-bf92-e867fc643891>NullableAttribute(byte P_0) { NullableFlags = new byte[1] { P_0 }; } public <992b5b43-cc3e-48d1-bf92-e867fc643891>NullableAttribute(byte[] P_0) { NullableFlags = P_0; } } [CompilerGenerated] [<f718b400-e55d-48d5-9b7f-ba250e068c8b>Embedded] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false)] internal sealed class <35bcee46-6f45-4185-a3b6-5a6d6005b209>NullableContextAttribute : Attribute { public readonly byte Flag; public <35bcee46-6f45-4185-a3b6-5a6d6005b209>NullableContextAttribute(byte P_0) { Flag = P_0; } } } namespace OdinsKingdom { [BepInPlugin("odinplus.plugins.odinskingdom", "OdinsKingdom", "1.4.4")] public class OdinsKingdom : BaseUnityPlugin { private enum Toggle { On = 1, Off = 0 } private const string ModName = "OdinsKingdom"; private const string ModVersion = "1.4.4"; private const string ModGUID = "odinplus.plugins.odinskingdom"; private static readonly ConfigSync configSync = new ConfigSync("OdinsKingdom") { DisplayName = "OdinsKingdom", CurrentVersion = "1.4.4", MinimumRequiredVersion = "1.4.4" }; public ConfigEntry<float> fermentationDurationConfig; public ConfigEntry<int> producedItemsConfig; public ConfigEntry<float> durationConfig; public ConfigEntry<float> repeatIntervalConfig; public ConfigEntry<float> healthIncreaseConfig; public ConfigEntry<float> staminaIncreaseConfig; public ConfigEntry<float> healthRegenMultiplierConfig; public ConfigEntry<float> staminaRegenMultiplierConfig; public ConfigEntry<float> eitrOverTimeConfig; public ConfigEntry<float> eitrOverTimeDurationConfig; public ConfigEntry<float> eitrRegenMultiplierConfig; public ConfigEntry<int> stackSizeConfig; public ConfigEntry<string> categoryConfig; public ConfigEntry<bool> cooldownIconConfig; public ConfigEntry<float> tickIntervalConfig; public ConfigEntry<float> m_healthOverTimeIntervalConfig; public ConfigEntry<float> m_healthPerTickMinHealthPercentageConfig; public ConfigEntry<float> m_healthOverTimeConfig; public ConfigEntry<float> m_healthOverTimeDurationConfig; public void Awake() { //IL_0022: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Expected O, but got Unknown //IL_004e: Unknown result type (might be due to invalid IL or missing references) //IL_0058: Expected O, but got Unknown //IL_007e: Unknown result type (might be due to invalid IL or missing references) //IL_0088: Expected O, but got Unknown //IL_00ae: Unknown result type (might be due to invalid IL or missing references) //IL_00b8: Expected O, but got Unknown //IL_00de: Unknown result type (might be due to invalid IL or missing references) //IL_00e8: Expected O, but got Unknown //IL_010e: Unknown result type (might be due to invalid IL or missing references) //IL_0118: Expected O, but got Unknown //IL_013e: Unknown result type (might be due to invalid IL or missing references) //IL_0148: Expected O, but got Unknown //IL_016e: Unknown result type (might be due to invalid IL or missing references) //IL_0178: Expected O, but got Unknown //IL_019e: Unknown result type (might be due to invalid IL or missing references) //IL_01a8: Expected O, but got Unknown //IL_01ce: Unknown result type (might be due to invalid IL or missing references) //IL_01d8: Expected O, but got Unknown //IL_01fe: Unknown result type (might be due to invalid IL or missing references) //IL_0208: Expected O, but got Unknown //IL_022e: Unknown result type (might be due to invalid IL or missing references) //IL_0238: Expected O, but got Unknown //IL_025e: Unknown result type (might be due to invalid IL or missing references) //IL_0268: Expected O, but got Unknown //IL_028e: Unknown result type (might be due to invalid IL or missing references) //IL_0298: Expected O, but got Unknown //IL_02be: Unknown result type (might be due to invalid IL or missing references) //IL_02c8: Expected O, but got Unknown //IL_02ee: Unknown result type (might be due to invalid IL or missing references) //IL_02f8: Expected O, but got Unknown //IL_031e: Unknown result type (might be due to invalid IL or missing references) //IL_0328: Expected O, but got Unknown //IL_034a: Unknown result type (might be due to invalid IL or missing references) //IL_0354: Expected O, but got Unknown //IL_0377: Unknown result type (might be due to invalid IL or missing references) //IL_0381: Expected O, but got Unknown //IL_96b6: Unknown result type (might be due to invalid IL or missing references) //IL_96bf: Expected O, but got Unknown fermentationDurationConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale Keg", "FermentationDuration", 1200f, new ConfigDescription("Duration of fermentation in seconds.", (AcceptableValueBase)null, Array.Empty<object>())); producedItemsConfig = ((BaseUnityPlugin)this).Config.Bind<int>("Kingdom Ale Keg", "ProducedItems", 4, new ConfigDescription("Number of items produced per fermentation cycle.", (AcceptableValueBase)null, Array.Empty<object>())); durationConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "Time to Live", 60f, new ConfigDescription("Time until you can consume another Ale.", (AcceptableValueBase)null, Array.Empty<object>())); repeatIntervalConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "RepeatInterval", 0f, new ConfigDescription("Interval before the item can be used again in seconds (cooldown).", (AcceptableValueBase)null, Array.Empty<object>())); healthIncreaseConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "HealthIncrease", 75f, new ConfigDescription("Total health increase over time.", (AcceptableValueBase)null, Array.Empty<object>())); staminaIncreaseConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "StaminaIncrease", 10f, new ConfigDescription("Total stamina increase over time.", (AcceptableValueBase)null, Array.Empty<object>())); healthRegenMultiplierConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "HealthRegenMultiplier", 1f, new ConfigDescription("Multiplier for health regeneration rate (0.5 means 50% of normal rate).", (AcceptableValueBase)null, Array.Empty<object>())); staminaRegenMultiplierConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "StaminaRegenMultiplier", 1f, new ConfigDescription("Multiplier for stamina regeneration rate (2 means 200% of normal rate).", (AcceptableValueBase)null, Array.Empty<object>())); eitrOverTimeConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "EitrOverTime", 0f, new ConfigDescription("Total Eitr increase over time (default is 0, meaning no increase).", (AcceptableValueBase)null, Array.Empty<object>())); eitrOverTimeDurationConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "EitrOverTimeDuration", 0f, new ConfigDescription("Duration of Eitr increase effect in seconds (default is 0, meaning no effect).", (AcceptableValueBase)null, Array.Empty<object>())); eitrRegenMultiplierConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "EitrRegenMultiplier", 1f, new ConfigDescription("Multiplier for Eitr regeneration rate (1 means 100% of normal rate).", (AcceptableValueBase)null, Array.Empty<object>())); tickIntervalConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "TickInterval", 0f, new ConfigDescription("Time interval between each tick of the effect in seconds.", (AcceptableValueBase)null, Array.Empty<object>())); m_healthOverTimeIntervalConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "HealthOverTimeInterval", 1f, new ConfigDescription("Interval between health over time ticks in seconds.", (AcceptableValueBase)null, Array.Empty<object>())); m_healthPerTickMinHealthPercentageConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "HealthPerTickMinHealthPercentage", 0f, new ConfigDescription("Minimum health percentage per tick.", (AcceptableValueBase)null, Array.Empty<object>())); m_healthOverTimeConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "HealthOverTime", 75f, new ConfigDescription("Health over time increase.", (AcceptableValueBase)null, Array.Empty<object>())); m_healthOverTimeDurationConfig = ((BaseUnityPlugin)this).Config.Bind<float>("Kingdom Ale", "HealthOverTimeDuration", 10f, new ConfigDescription("Duration of health over time effect in seconds.", (AcceptableValueBase)null, Array.Empty<object>())); categoryConfig = ((BaseUnityPlugin)this).Config.Bind<string>("Kingdom Ale", "Category", "healthpotion", new ConfigDescription("Category of the effect.", (AcceptableValueBase)null, Array.Empty<object>())); cooldownIconConfig = ((BaseUnityPlugin)this).Config.Bind<bool>("Kingdom Ale", "CooldownIcon", true, new ConfigDescription("Show cooldown icon (true/false).", (AcceptableValueBase)null, Array.Empty<object>())); stackSizeConfig = ((BaseUnityPlugin)this).Config.Bind<int>("Kingdom Ale", "StackSize", 20, new ConfigDescription("Maximum stack size for Kingdom Ale.", (AcceptableValueBase)null, Array.Empty<object>())); Localizer.Load(); AssetBundle bundle = PiecePrefabManager.RegisterAssetBundle("gbcastles"); BuildPiece buildPiece = new BuildPiece(bundle, "GB_Kingdom_Ale_Keg"); buildPiece.Tool.Add("GB_Parchment_Tool"); buildPiece.RequiredItems.Add("Wood", 10, recover: true); buildPiece.RequiredItems.Add("IronNails", 2, recover: true); buildPiece.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece.Category.Set("Furniture"); Fermenter componentInChildren = buildPiece.Prefab.GetComponentInChildren<Fermenter>(true); if ((Object)(object)componentInChildren != (Object)null) { componentInChildren.m_fermentationDuration = fermentationDurationConfig.Value; foreach (ItemConversion item7 in componentInChildren.m_conversion) { item7.m_producedItems = producedItemsConfig.Value; } Item item = new Item("gbcastles", "GB_Kingdom_Ale_Base"); item.Crafting.Add("GB_Odins_Book", 1); item.RequiredItems.Add("Barley", 10); item.RequiredItems.Add("MushroomYellow", 1); item.CraftAmount = 1; Item item2 = new Item("gbcastles", "GB_Kingdom_Ale"); item2.Prefab.GetComponentInChildren<ItemDrop>().m_itemData.m_shared.m_maxStackSize = stackSizeConfig.Value; Utils.SEValue(item2, delegate(SE_Stats effect, float value) { ((StatusEffect)effect).m_ttl = value; }, durationConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { effect.m_healthOverTime = value; }, m_healthOverTimeConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { effect.m_healthOverTimeDuration = value; }, m_healthOverTimeDurationConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { effect.m_healthOverTimeInterval = value; }, m_healthOverTimeIntervalConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { effect.m_healthPerTickMinHealthPercentage = value; }, m_healthPerTickMinHealthPercentageConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { effect.m_staminaOverTime = value; }, staminaIncreaseConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { ((StatusEffect)effect).m_repeatInterval = value; }, repeatIntervalConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { effect.m_tickInterval = value; }, tickIntervalConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { effect.m_eitrOverTime = value; }, eitrOverTimeConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { effect.m_eitrOverTimeDuration = value; }, eitrOverTimeDurationConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { effect.m_healthRegenMultiplier = value; }, healthRegenMultiplierConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { effect.m_staminaRegenMultiplier = value; }, staminaRegenMultiplierConfig); Utils.SEValue(item2, delegate(SE_Stats effect, float value) { effect.m_eitrRegenMultiplier = value; }, eitrRegenMultiplierConfig); Utils.SEValue(item2, delegate(SE_Stats effect, string value) { ((StatusEffect)effect).m_category = value; }, categoryConfig); Utils.SEValue(item2, delegate(SE_Stats effect, bool value) { ((StatusEffect)effect).m_cooldownIcon = value; }, cooldownIconConfig); Item item3 = new Item("gbcastles", "GB_Parchment_Tool"); item3.Crafting.Add(ItemManager.CraftingTable.Workbench, 1); item3.RequiredItems.Add("FineWood", 10); item3.CraftAmount = 1; PrefabManager.RegisterPrefab("gbcastles", "GB_Repair_Scroll"); Item item4 = new Item("gbcastles", "GB_Gold_Cup"); item4.Crafting.Add("GB_Odins_Book", 1); item4.RequiredItems.Add("BlackMetal", 1); item4.CraftAmount = 1; Item item5 = new Item("gbcastles", "GB_Silver_Cup"); item5.Crafting.Add("GB_Odins_Book", 1); item5.RequiredItems.Add("Silver", 1); item5.CraftAmount = 1; Item item6 = new Item("gbcastles", "GB_Bronze_Cup"); item6.Crafting.Add("GB_Odins_Book", 1); item6.RequiredItems.Add("Bronze", 1); item6.CraftAmount = 1; BuildPiece buildPiece2 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Odins_Book"); buildPiece2.Tool.Add("GB_Parchment_Tool"); buildPiece2.RequiredItems.Add("LeatherScraps", 6, recover: true); buildPiece2.RequiredItems.Add("Coal", 4, recover: true); buildPiece2.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece2.Category.Set("Deco"); BuildPiece buildPiece3 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wall_Shield_1"); buildPiece3.Tool.Add("GB_Parchment_Tool"); buildPiece3.RequiredItems.Add("IronScrap", 1, recover: true); buildPiece3.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece3.Category.Set("Deco"); BuildPiece buildPiece4 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wall_Shield_2"); buildPiece4.Tool.Add("GB_Parchment_Tool"); buildPiece4.RequiredItems.Add("IronScrap", 1, recover: true); buildPiece4.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece4.Category.Set("Deco"); BuildPiece buildPiece5 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wall_Shield_3"); buildPiece5.Tool.Add("GB_Parchment_Tool"); buildPiece5.RequiredItems.Add("IronScrap", 1, recover: true); buildPiece5.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece5.Category.Set("Deco"); BuildPiece buildPiece6 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wall_Shield_4"); buildPiece6.Tool.Add("GB_Parchment_Tool"); buildPiece6.RequiredItems.Add("IronScrap", 1, recover: true); buildPiece6.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece6.Category.Set("Deco"); BuildPiece buildPiece7 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_Gate"); buildPiece7.Tool.Add("GB_Parchment_Tool"); buildPiece7.RequiredItems.Add("Stone", 10, recover: true); buildPiece7.RequiredItems.Add("Iron", 1, recover: true); buildPiece7.RequiredItems.Add("IronNails", 10, recover: true); buildPiece7.RequiredItems.Add("Wood", 10, recover: true); buildPiece7.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece7.Category.Set("Stone Building"); WearNTear component = buildPiece7.Prefab.GetComponent<WearNTear>(); component.m_ashDamageImmune = false; component.m_ashDamageResist = false; component.m_burnable = false; BuildPiece buildPiece8 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_Gate_Bridge"); buildPiece8.Tool.Add("GB_Parchment_Tool"); buildPiece8.RequiredItems.Add("Chain", 2, recover: true); buildPiece8.RequiredItems.Add("Iron", 1, recover: true); buildPiece8.RequiredItems.Add("Stone", 10, recover: true); buildPiece8.RequiredItems.Add("Wood", 6, recover: true); buildPiece8.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece8.Category.Set("Stone Building"); WearNTear component2 = buildPiece8.Prefab.GetComponent<WearNTear>(); component2.m_ashDamageImmune = false; component2.m_ashDamageResist = false; component2.m_burnable = false; BuildPiece buildPiece9 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_Portcullis"); buildPiece9.Tool.Add("GB_Parchment_Tool"); buildPiece9.RequiredItems.Add("Stone", 20, recover: true); buildPiece9.RequiredItems.Add("Iron", 5, recover: true); buildPiece9.RequiredItems.Add("Chain", 2, recover: true); buildPiece9.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece9.Category.Set("Stone Building"); WearNTear component3 = buildPiece9.Prefab.GetComponent<WearNTear>(); component3.m_ashDamageImmune = false; component3.m_ashDamageResist = false; component3.m_burnable = false; BuildPiece buildPiece10 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_StoneWindow"); buildPiece10.Tool.Add("GB_Parchment_Tool"); buildPiece10.RequiredItems.Add("Stone", 5, recover: true); buildPiece10.RequiredItems.Add("Crystal", 5, recover: true); buildPiece10.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece10.Category.Set("Stone Building"); WearNTear component4 = buildPiece10.Prefab.GetComponent<WearNTear>(); component4.m_ashDamageImmune = false; component4.m_ashDamageResist = false; component4.m_burnable = false; BuildPiece buildPiece11 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_StoneWindow_OdinPlus"); buildPiece11.Tool.Add("GB_Parchment_Tool"); buildPiece11.RequiredItems.Add("Stone", 5, recover: true); buildPiece11.RequiredItems.Add("Crystal", 5, recover: true); buildPiece11.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece11.Category.Set("Stone Building"); WearNTear component5 = buildPiece11.Prefab.GetComponent<WearNTear>(); component5.m_ashDamageImmune = false; component5.m_ashDamageResist = false; component5.m_burnable = false; BuildPiece buildPiece12 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_Window_OdinPlus"); buildPiece12.Tool.Add("GB_Parchment_Tool"); buildPiece12.RequiredItems.Add("Stone", 10, recover: true); buildPiece12.RequiredItems.Add("Crystal", 10, recover: true); buildPiece12.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece12.Category.Set("Stone Building"); WearNTear component6 = buildPiece11.Prefab.GetComponent<WearNTear>(); component6.m_ashDamageImmune = false; component6.m_ashDamageResist = false; component6.m_burnable = false; BuildPiece buildPiece13 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_Window"); buildPiece13.Tool.Add("GB_Parchment_Tool"); buildPiece13.RequiredItems.Add("Stone", 10, recover: true); buildPiece13.RequiredItems.Add("Crystal", 10, recover: true); buildPiece13.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece13.Category.Set("Stone Building"); WearNTear component7 = buildPiece13.Prefab.GetComponent<WearNTear>(); component7.m_ashDamageImmune = false; component7.m_ashDamageResist = false; component7.m_burnable = false; BuildPiece buildPiece14 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Archway_Wall"); buildPiece14.Tool.Add("GB_Parchment_Tool"); buildPiece14.RequiredItems.Add("Stone", 6, recover: true); buildPiece14.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece14.Category.Set("Stone Building"); WearNTear component8 = buildPiece14.Prefab.GetComponent<WearNTear>(); component8.m_ashDamageImmune = false; component8.m_ashDamageResist = false; component8.m_burnable = false; BuildPiece buildPiece15 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_Tile_Floor"); buildPiece15.Tool.Add("GB_Parchment_Tool"); buildPiece15.RequiredItems.Add("Stone", 10, recover: true); buildPiece15.RequiredItems.Add("Flint", 4, recover: true); buildPiece15.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece15.Category.Set("Stone Building"); WearNTear component9 = buildPiece15.Prefab.GetComponent<WearNTear>(); component9.m_ashDamageImmune = false; component9.m_ashDamageResist = false; component9.m_burnable = false; BuildPiece buildPiece16 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Tile_4x4"); buildPiece16.Tool.Add("GB_Parchment_Tool"); buildPiece16.RequiredItems.Add("Stone", 6, recover: true); buildPiece16.RequiredItems.Add("Flint", 3, recover: true); buildPiece16.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece16.Category.Set("Stone Building"); WearNTear component10 = buildPiece16.Prefab.GetComponent<WearNTear>(); component10.m_ashDamageImmune = false; component10.m_ashDamageResist = false; component10.m_burnable = false; BuildPiece buildPiece17 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Tile"); buildPiece17.Tool.Add("GB_Parchment_Tool"); buildPiece17.RequiredItems.Add("Stone", 4, recover: true); buildPiece17.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece17.Category.Set("Stone Building"); WearNTear component11 = buildPiece17.Prefab.GetComponent<WearNTear>(); component11.m_ashDamageImmune = false; component11.m_ashDamageResist = false; component11.m_burnable = false; BuildPiece buildPiece18 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Tile_1x1"); buildPiece18.Tool.Add("GB_Parchment_Tool"); buildPiece18.RequiredItems.Add("Stone", 2, recover: true); buildPiece18.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece18.Category.Set("Stone Building"); WearNTear component12 = buildPiece18.Prefab.GetComponent<WearNTear>(); component12.m_ashDamageImmune = false; component12.m_ashDamageResist = false; component12.m_burnable = false; BuildPiece buildPiece19 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Angle_Floor"); buildPiece19.Tool.Add("GB_Parchment_Tool"); buildPiece19.RequiredItems.Add("Stone", 4, recover: true); buildPiece19.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece19.Category.Set("Stone Building"); WearNTear component13 = buildPiece19.Prefab.GetComponent<WearNTear>(); component13.m_ashDamageImmune = false; component13.m_ashDamageResist = false; component13.m_burnable = false; BuildPiece buildPiece20 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Angle_Tile_1x1"); buildPiece20.Tool.Add("GB_Parchment_Tool"); buildPiece20.RequiredItems.Add("Stone", 2, recover: true); buildPiece20.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece20.Category.Set("Stone Building"); WearNTear component14 = buildPiece20.Prefab.GetComponent<WearNTear>(); component14.m_ashDamageImmune = false; component14.m_ashDamageResist = false; component14.m_burnable = false; BuildPiece buildPiece21 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Round_Tile"); buildPiece21.Tool.Add("GB_Parchment_Tool"); buildPiece21.RequiredItems.Add("Stone", 4, recover: true); buildPiece21.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece21.Category.Set("Stone Building"); WearNTear component15 = buildPiece21.Prefab.GetComponent<WearNTear>(); component15.m_ashDamageImmune = false; component15.m_ashDamageResist = false; component15.m_burnable = false; BuildPiece buildPiece22 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_Solid_Wood_Floor"); buildPiece22.Tool.Add("GB_Parchment_Tool"); buildPiece22.RequiredItems.Add("Wood", 16, recover: true); buildPiece22.RequiredItems.Add("FineWood", 6, recover: true); buildPiece22.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece22.Category.Set("Wood Building"); BuildPiece buildPiece23 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Solid_Wood_Tile_4x4"); buildPiece23.Tool.Add("GB_Parchment_Tool"); buildPiece23.RequiredItems.Add("Wood", 8, recover: true); buildPiece23.RequiredItems.Add("FineWood", 4, recover: true); buildPiece23.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece23.Category.Set("Wood Building"); BuildPiece buildPiece24 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Solid_Wood_Round_Tile"); buildPiece24.Tool.Add("GB_Parchment_Tool"); buildPiece24.RequiredItems.Add("Wood", 4, recover: true); buildPiece24.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece24.Category.Set("Wood Building"); BuildPiece buildPiece25 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Solid_Wood_Tile"); buildPiece25.Tool.Add("GB_Parchment_Tool"); buildPiece25.RequiredItems.Add("Wood", 4, recover: true); buildPiece25.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece25.Category.Set("Wood Building"); BuildPiece buildPiece26 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Solid_Wood_Tile_1x1"); buildPiece26.Tool.Add("GB_Parchment_Tool"); buildPiece26.RequiredItems.Add("Wood", 2, recover: true); buildPiece26.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece26.Category.Set("Wood Building"); BuildPiece buildPiece27 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wood_Tile"); buildPiece27.Tool.Add("GB_Parchment_Tool"); buildPiece27.RequiredItems.Add("Wood", 4, recover: true); buildPiece27.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece27.Category.Set("Wood Building"); BuildPiece buildPiece28 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wood_1x1_Floor"); buildPiece28.Tool.Add("GB_Parchment_Tool"); buildPiece28.RequiredItems.Add("Wood", 2, recover: true); buildPiece28.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece28.Category.Set("Wood Building"); BuildPiece buildPiece29 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wood_Angle_Floor"); buildPiece29.Tool.Add("GB_Parchment_Tool"); buildPiece29.RequiredItems.Add("Wood", 4, recover: true); buildPiece29.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece29.Category.Set("Wood Building"); BuildPiece buildPiece30 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wood_Angle_Tile_1x1"); buildPiece30.Tool.Add("GB_Parchment_Tool"); buildPiece30.RequiredItems.Add("Wood", 2, recover: true); buildPiece30.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece30.Category.Set("Wood Building"); BuildPiece buildPiece31 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Arch"); buildPiece31.Tool.Add("GB_Parchment_Tool"); buildPiece31.RequiredItems.Add("Stone", 5, recover: true); buildPiece31.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece31.Category.Set("Stone Building"); WearNTear component16 = buildPiece31.Prefab.GetComponent<WearNTear>(); component16.m_ashDamageImmune = false; component16.m_ashDamageResist = false; component16.m_burnable = false; BuildPiece buildPiece32 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Doorframe"); buildPiece32.Tool.Add("GB_Parchment_Tool"); buildPiece32.RequiredItems.Add("Stone", 10, recover: true); buildPiece32.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece32.Category.Set("Stone Building"); WearNTear component17 = buildPiece32.Prefab.GetComponent<WearNTear>(); component17.m_ashDamageImmune = false; component17.m_ashDamageResist = false; component17.m_burnable = false; BuildPiece buildPiece33 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_StoneWall"); buildPiece33.Tool.Add("GB_Parchment_Tool"); buildPiece33.RequiredItems.Add("Stone", 4, recover: true); buildPiece33.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece33.Category.Set("Stone Building"); WearNTear component18 = buildPiece33.Prefab.GetComponent<WearNTear>(); component18.m_ashDamageImmune = false; component18.m_ashDamageResist = false; component18.m_burnable = false; BuildPiece buildPiece34 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Circle_Window"); buildPiece34.Tool.Add("GB_Parchment_Tool"); buildPiece34.RequiredItems.Add("Stone", 4, recover: true); buildPiece34.RequiredItems.Add("Crystal", 2, recover: true); buildPiece34.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece34.Category.Set("Stone Building"); WearNTear component19 = buildPiece34.Prefab.GetComponent<WearNTear>(); component19.m_ashDamageImmune = false; component19.m_ashDamageResist = false; component19.m_burnable = false; BuildPiece buildPiece35 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Aperture"); buildPiece35.Tool.Add("GB_Parchment_Tool"); buildPiece35.RequiredItems.Add("Stone", 6, recover: true); buildPiece35.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece35.Category.Set("Stone Building"); WearNTear component20 = buildPiece35.Prefab.GetComponent<WearNTear>(); component20.m_ashDamageImmune = false; component20.m_ashDamageResist = false; component20.m_burnable = false; BuildPiece buildPiece36 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Halfwall_Aperture"); buildPiece36.Tool.Add("GB_Parchment_Tool"); buildPiece36.RequiredItems.Add("Stone", 4, recover: true); buildPiece36.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece36.Category.Set("Stone Building"); WearNTear component21 = buildPiece36.Prefab.GetComponent<WearNTear>(); component21.m_ashDamageImmune = false; component21.m_ashDamageResist = false; component21.m_burnable = false; BuildPiece buildPiece37 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Halfwall"); buildPiece37.Tool.Add("GB_Parchment_Tool"); buildPiece37.RequiredItems.Add("Stone", 2, recover: true); buildPiece37.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece37.Category.Set("Stone Building"); WearNTear component22 = buildPiece37.Prefab.GetComponent<WearNTear>(); component22.m_ashDamageImmune = false; component22.m_ashDamageResist = false; component22.m_burnable = false; BuildPiece buildPiece38 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Halfwall_Arch"); buildPiece38.Tool.Add("GB_Parchment_Tool"); buildPiece38.RequiredItems.Add("Stone", 2, recover: true); buildPiece38.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece38.Category.Set("Stone Building"); WearNTear component23 = buildPiece38.Prefab.GetComponent<WearNTear>(); component23.m_ashDamageImmune = false; component23.m_ashDamageResist = false; component23.m_burnable = false; BuildPiece buildPiece39 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wooden_Ladder"); buildPiece39.Tool.Add("GB_Parchment_Tool"); buildPiece39.RequiredItems.Add("RoundLog", 10, recover: true); buildPiece39.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece39.Category.Set("Wood Building"); BuildPiece buildPiece40 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Small_Wooden_Ladder"); buildPiece40.Tool.Add("GB_Parchment_Tool"); buildPiece40.RequiredItems.Add("RoundLog", 10, recover: true); buildPiece40.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece40.Category.Set("Wood Building"); BuildPiece buildPiece41 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Black_Curtains"); buildPiece41.Tool.Add("GB_Parchment_Tool"); buildPiece41.RequiredItems.Add("Bronze", 1, recover: true); buildPiece41.RequiredItems.Add("LeatherScraps", 6, recover: true); buildPiece41.RequiredItems.Add("Coal", 4, recover: true); buildPiece41.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece41.Category.Set("Deco"); BuildPiece buildPiece42 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Single_Candle_1"); buildPiece42.Tool.Add("GB_Parchment_Tool"); buildPiece42.RequiredItems.Add("Honey", 2, recover: true); buildPiece42.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece42.Category.Set("Lights and Storage"); BuildPiece buildPiece43 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Single_Candle_2"); buildPiece43.Tool.Add("GB_Parchment_Tool"); buildPiece43.RequiredItems.Add("Honey", 2, recover: true); buildPiece43.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece43.Category.Set("Lights and Storage"); BuildPiece buildPiece44 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Candle_Stick"); buildPiece44.Tool.Add("GB_Parchment_Tool"); buildPiece44.RequiredItems.Add("Honey", 5, recover: true); buildPiece44.RequiredItems.Add("Resin", 5, recover: true); buildPiece44.RequiredItems.Add("Tin", 1, recover: true); buildPiece44.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece44.Category.Set("Lights and Storage"); BuildPiece buildPiece45 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Standing_Candles"); buildPiece45.Tool.Add("GB_Parchment_Tool"); buildPiece45.RequiredItems.Add("Honey", 5, recover: true); buildPiece45.RequiredItems.Add("Resin", 5, recover: true); buildPiece45.RequiredItems.Add("Tin", 2, recover: true); buildPiece45.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece45.Category.Set("Lights and Storage"); BuildPiece buildPiece46 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Leather_Chair"); buildPiece46.Tool.Add("GB_Parchment_Tool"); buildPiece46.RequiredItems.Add("LeatherScraps", 5, recover: true); buildPiece46.RequiredItems.Add("FineWood", 5, recover: true); buildPiece46.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece46.Category.Set("Furniture"); BuildPiece buildPiece47 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Old_Wood_Throne"); buildPiece47.Tool.Add("GB_Parchment_Tool"); buildPiece47.RequiredItems.Add("FineWood", 5, recover: true); buildPiece47.RequiredItems.Add("DeerHide", 5, recover: true); buildPiece47.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece47.Category.Set("Furniture"); BuildPiece buildPiece48 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wood_Chair_1"); buildPiece48.Tool.Add("GB_Parchment_Tool"); buildPiece48.RequiredItems.Add("FineWood", 5, recover: true); buildPiece48.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece48.Category.Set("Furniture"); BuildPiece buildPiece49 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wood_Chair_2"); buildPiece49.Tool.Add("GB_Parchment_Tool"); buildPiece49.RequiredItems.Add("FineWood", 5, recover: true); buildPiece49.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece49.Category.Set("Furniture"); BuildPiece buildPiece50 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wood_Stool"); buildPiece50.Tool.Add("GB_Parchment_Tool"); buildPiece50.RequiredItems.Add("FineWood", 4, recover: true); buildPiece50.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece50.Category.Set("Furniture"); BuildPiece buildPiece51 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wall_Torch"); buildPiece51.Tool.Add("GB_Parchment_Tool"); buildPiece51.RequiredItems.Add("Wood", 1, recover: true); buildPiece51.RequiredItems.Add("Resin", 2, recover: true); buildPiece51.RequiredItems.Add("Tin", 5, recover: true); buildPiece51.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece51.Category.Set("Lights and Storage"); BuildPiece buildPiece52 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wood_Table"); buildPiece52.Tool.Add("GB_Parchment_Tool"); buildPiece52.RequiredItems.Add("FineWood", 5, recover: true); buildPiece52.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece52.Category.Set("Furniture"); BuildPiece buildPiece53 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Old_Wood_Table"); buildPiece53.Tool.Add("GB_Parchment_Tool"); buildPiece53.RequiredItems.Add("Wood", 5, recover: true); buildPiece53.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece53.Category.Set("Furniture"); BuildPiece buildPiece54 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Casket_Lid"); buildPiece54.Tool.Add("GB_Parchment_Tool"); buildPiece54.RequiredItems.Add("Wood", 2, recover: true); buildPiece54.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece54.Category.Set("Furniture"); BuildPiece buildPiece55 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Casket"); buildPiece55.Tool.Add("GB_Parchment_Tool"); buildPiece55.RequiredItems.Add("Wood", 10, recover: true); buildPiece55.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece55.Category.Set("Furniture"); BuildPiece buildPiece56 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Barrel_O_Skulls"); buildPiece56.Tool.Add("GB_Parchment_Tool"); buildPiece56.RequiredItems.Add("RoundLog", 5, recover: true); buildPiece56.RequiredItems.Add("BoneFragments", 5, recover: true); buildPiece56.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece56.Category.Set("Deco"); BuildPiece buildPiece57 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Pile_O_Skulls"); buildPiece57.Tool.Add("GB_Parchment_Tool"); buildPiece57.RequiredItems.Add("BoneFragments", 5, recover: true); buildPiece57.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece57.Category.Set("Deco"); BuildPiece buildPiece58 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Black_Banner"); buildPiece58.Tool.Add("GB_Parchment_Tool"); buildPiece58.RequiredItems.Add("Iron", 1, recover: true); buildPiece58.RequiredItems.Add("Chain", 2, recover: true); buildPiece58.RequiredItems.Add("DeerHide", 2, recover: true); buildPiece58.RequiredItems.Add("Coal", 4, recover: true); buildPiece58.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece58.Category.Set("Deco"); BuildPiece buildPiece59 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Black_Half_Curtains"); buildPiece59.Tool.Add("GB_Parchment_Tool"); buildPiece59.RequiredItems.Add("Bronze", 1, recover: true); buildPiece59.RequiredItems.Add("LeatherScraps", 3, recover: true); buildPiece59.RequiredItems.Add("Coal", 2, recover: true); buildPiece59.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece59.Category.Set("Deco"); BuildPiece buildPiece60 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Book_Shelf"); buildPiece60.Tool.Add("GB_Parchment_Tool"); buildPiece60.RequiredItems.Add("Wood", 5, recover: true); buildPiece60.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece60.Category.Set("Furniture"); BuildPiece buildPiece61 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Book_Shelf_Full"); buildPiece61.Tool.Add("GB_Parchment_Tool"); buildPiece61.RequiredItems.Add("Wood", 8, recover: true); buildPiece61.RequiredItems.Add("LeatherScraps", 6, recover: true); buildPiece61.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece61.Category.Set("Furniture"); BuildPiece buildPiece62 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Book_Shelf_Full_2"); buildPiece62.Tool.Add("GB_Parchment_Tool"); buildPiece62.RequiredItems.Add("Wood", 8, recover: true); buildPiece62.RequiredItems.Add("LeatherScraps", 6, recover: true); buildPiece62.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece62.Category.Set("Furniture"); BuildPiece buildPiece63 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Hanging_Cage"); buildPiece63.Tool.Add("GB_Parchment_Tool"); buildPiece63.RequiredItems.Add("Iron", 2, recover: true); buildPiece63.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece63.Category.Set("Furniture"); WearNTear component24 = buildPiece63.Prefab.GetComponent<WearNTear>(); component24.m_ashDamageImmune = false; component24.m_ashDamageResist = false; component24.m_burnable = false; BuildPiece buildPiece64 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Skull_Orn"); buildPiece64.Tool.Add("GB_Parchment_Tool"); buildPiece64.RequiredItems.Add("TrophySkeleton", 1, recover: true); buildPiece64.RequiredItems.Add("Stone", 2, recover: true); buildPiece64.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece64.Category.Set("Deco"); WearNTear component25 = buildPiece64.Prefab.GetComponent<WearNTear>(); component25.m_ashDamageImmune = false; component25.m_ashDamageResist = false; component25.m_burnable = false; BuildPiece buildPiece65 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Skeleton_Orn"); buildPiece65.Tool.Add("GB_Parchment_Tool"); buildPiece65.RequiredItems.Add("TrophySkeleton", 1, recover: true); buildPiece65.RequiredItems.Add("Stone", 5, recover: true); buildPiece65.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece65.Category.Set("Deco"); WearNTear component26 = buildPiece65.Prefab.GetComponent<WearNTear>(); component26.m_ashDamageImmune = false; component26.m_ashDamageResist = false; component26.m_burnable = false; BuildPiece buildPiece66 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Hanging_Skeleton"); buildPiece66.Tool.Add("GB_Parchment_Tool"); buildPiece66.RequiredItems.Add("TrophySkeleton", 1, recover: true); buildPiece66.RequiredItems.Add("BoneFragments", 5, recover: true); buildPiece66.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece66.Category.Set("Deco"); BuildPiece buildPiece67 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Purple_Curtains"); buildPiece67.Tool.Add("GB_Parchment_Tool"); buildPiece67.RequiredItems.Add("Bronze", 1, recover: true); buildPiece67.RequiredItems.Add("LeatherScraps", 6, recover: true); buildPiece67.RequiredItems.Add("Raspberry", 6, recover: true); buildPiece67.RequiredItems.Add("Blueberries", 6, recover: true); buildPiece67.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece67.Category.Set("Deco"); BuildPiece buildPiece68 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Purple_Half_Curtains"); buildPiece68.Tool.Add("GB_Parchment_Tool"); buildPiece68.RequiredItems.Add("Bronze", 1, recover: true); buildPiece68.RequiredItems.Add("LeatherScraps", 3, recover: true); buildPiece68.RequiredItems.Add("Raspberry", 3, recover: true); buildPiece68.RequiredItems.Add("Blueberries", 3, recover: true); buildPiece68.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece68.Category.Set("Deco"); BuildPiece buildPiece69 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Single_Shelf"); buildPiece69.Tool.Add("GB_Parchment_Tool"); buildPiece69.RequiredItems.Add("Wood", 2, recover: true); buildPiece69.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece69.Category.Set("Furniture"); BuildPiece buildPiece70 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Sitting_Skeleton"); buildPiece70.Tool.Add("GB_Parchment_Tool"); buildPiece70.RequiredItems.Add("TrophySkeleton", 1, recover: true); buildPiece70.RequiredItems.Add("BoneFragments", 5, recover: true); buildPiece70.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece70.Category.Set("Deco"); BuildPiece buildPiece71 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Skeleton_Pole"); buildPiece71.Tool.Add("GB_Parchment_Tool"); buildPiece71.RequiredItems.Add("TrophySkeleton", 1, recover: true); buildPiece71.RequiredItems.Add("BoneFragments", 5, recover: true); buildPiece71.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece71.Category.Set("Deco"); BuildPiece buildPiece72 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Pillar_1x1"); buildPiece72.Tool.Add("GB_Parchment_Tool"); buildPiece72.RequiredItems.Add("Stone", 2, recover: true); buildPiece72.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece72.Category.Set("Stone Building"); WearNTear component27 = buildPiece72.Prefab.GetComponent<WearNTear>(); component27.m_ashDamageImmune = false; component27.m_ashDamageResist = false; component27.m_burnable = false; BuildPiece buildPiece73 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Pillar_Base"); buildPiece73.Tool.Add("GB_Parchment_Tool"); buildPiece73.RequiredItems.Add("Stone", 5, recover: true); buildPiece73.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece73.Category.Set("Stone Building"); WearNTear component28 = buildPiece73.Prefab.GetComponent<WearNTear>(); component28.m_ashDamageImmune = false; component28.m_ashDamageResist = false; component28.m_burnable = false; BuildPiece buildPiece74 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Pillar_Bottom"); buildPiece74.Tool.Add("GB_Parchment_Tool"); buildPiece74.RequiredItems.Add("Stone", 4, recover: true); buildPiece74.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece74.Category.Set("Stone Building"); WearNTear component29 = buildPiece74.Prefab.GetComponent<WearNTear>(); component29.m_ashDamageImmune = false; component29.m_ashDamageResist = false; component29.m_burnable = false; BuildPiece buildPiece75 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Pillar_Middle"); buildPiece75.Tool.Add("GB_Parchment_Tool"); buildPiece75.RequiredItems.Add("Stone", 3, recover: true); buildPiece75.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece75.Category.Set("Stone Building"); WearNTear component30 = buildPiece75.Prefab.GetComponent<WearNTear>(); component30.m_ashDamageImmune = false; component30.m_ashDamageResist = false; component30.m_burnable = false; BuildPiece buildPiece76 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Pillar_Small"); buildPiece76.Tool.Add("GB_Parchment_Tool"); buildPiece76.RequiredItems.Add("Stone", 6, recover: true); buildPiece76.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece76.Category.Set("Stone Building"); WearNTear component31 = buildPiece76.Prefab.GetComponent<WearNTear>(); component31.m_ashDamageImmune = false; component31.m_ashDamageResist = false; component31.m_burnable = false; BuildPiece buildPiece77 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Pillar_Top"); buildPiece77.Tool.Add("GB_Parchment_Tool"); buildPiece77.RequiredItems.Add("Stone", 4, recover: true); buildPiece77.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece77.Category.Set("Stone Building"); WearNTear component32 = buildPiece77.Prefab.GetComponent<WearNTear>(); component32.m_ashDamageImmune = false; component32.m_ashDamageResist = false; component32.m_burnable = false; BuildPiece buildPiece78 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Pillar_Base_Round"); buildPiece78.Tool.Add("GB_Parchment_Tool"); buildPiece78.RequiredItems.Add("Stone", 6, recover: true); buildPiece78.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece78.Category.Set("Stone Building"); WearNTear component33 = buildPiece78.Prefab.GetComponent<WearNTear>(); component33.m_ashDamageImmune = false; component33.m_ashDamageResist = false; component33.m_burnable = false; BuildPiece buildPiece79 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Square_Pillar_Middle"); buildPiece79.Tool.Add("GB_Parchment_Tool"); buildPiece79.RequiredItems.Add("Stone", 10, recover: true); buildPiece79.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece79.Category.Set("Stone Building"); WearNTear component34 = buildPiece79.Prefab.GetComponent<WearNTear>(); component34.m_ashDamageImmune = false; component34.m_ashDamageResist = false; component34.m_burnable = false; BuildPiece buildPiece80 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Table"); buildPiece80.Tool.Add("GB_Parchment_Tool"); buildPiece80.RequiredItems.Add("Stone", 10, recover: true); buildPiece80.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece80.Category.Set("Furniture"); WearNTear component35 = buildPiece80.Prefab.GetComponent<WearNTear>(); component35.m_ashDamageImmune = false; component35.m_ashDamageResist = false; component35.m_burnable = false; BuildPiece buildPiece81 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wooden_Awning"); buildPiece81.Tool.Add("GB_Parchment_Tool"); buildPiece81.RequiredItems.Add("FineWood", 10, recover: true); buildPiece81.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece81.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece81.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece82 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Cloth_Bag"); buildPiece82.Tool.Add("GB_Parchment_Tool"); buildPiece82.RequiredItems.Add("LeatherScraps", 10, recover: true); buildPiece82.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece82.Category.Set("Lights and Storage"); BuildPiece buildPiece83 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Old_Book"); buildPiece83.Tool.Add("GB_Parchment_Tool"); buildPiece83.RequiredItems.Add("LeatherScraps", 5, recover: true); buildPiece83.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece83.Category.Set("Deco"); BuildPiece buildPiece84 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Old_Jug"); buildPiece84.Tool.Add("GB_Parchment_Tool"); buildPiece84.RequiredItems.Add("Wood", 2, recover: true); buildPiece84.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece84.Category.Set("Deco"); BuildPiece buildPiece85 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Small_Bottle"); buildPiece85.Tool.Add("GB_Parchment_Tool"); buildPiece85.RequiredItems.Add("Crystal", 1, recover: true); buildPiece85.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece85.Category.Set("Deco"); BuildPiece buildPiece86 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Old_Kettle"); buildPiece86.Tool.Add("GB_Parchment_Tool"); buildPiece86.RequiredItems.Add("Iron", 1, recover: true); buildPiece86.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece86.Category.Set("Deco"); BuildPiece buildPiece87 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wooden_Barrel"); buildPiece87.Tool.Add("GB_Parchment_Tool"); buildPiece87.RequiredItems.Add("Wood", 4, recover: true); buildPiece87.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece87.Category.Set("Lights and Storage"); BuildPiece buildPiece88 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Fireplace"); buildPiece88.Tool.Add("GB_Parchment_Tool"); buildPiece88.RequiredItems.Add("Stone", 20, recover: true); buildPiece88.RequiredItems.Add("Wood", 4, recover: true); buildPiece88.RequiredItems.Add("Coal", 2, recover: true); buildPiece88.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece88.Category.Set("Lights and Storage"); WearNTear component36 = buildPiece88.Prefab.GetComponent<WearNTear>(); component36.m_ashDamageImmune = false; component36.m_ashDamageResist = false; component36.m_burnable = false; BuildPiece buildPiece89 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wooden_Bucket"); buildPiece89.Tool.Add("GB_Parchment_Tool"); buildPiece89.RequiredItems.Add("Wood", 4, recover: true); buildPiece89.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece89.Category.Set("Deco"); BuildPiece buildPiece90 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Old_Open_Book"); buildPiece90.Tool.Add("GB_Parchment_Tool"); buildPiece90.RequiredItems.Add("LeatherScraps", 5, recover: true); buildPiece90.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece90.Category.Set("Deco"); BuildPiece buildPiece91 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Beam"); buildPiece91.Tool.Add("GB_Parchment_Tool"); buildPiece91.RequiredItems.Add("Stone", 3, recover: true); buildPiece91.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece91.Category.Set("Stone Building"); WearNTear component37 = buildPiece91.Prefab.GetComponent<WearNTear>(); component37.m_ashDamageImmune = false; component37.m_ashDamageResist = false; component37.m_burnable = false; BuildPiece buildPiece92 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Pole"); buildPiece92.Tool.Add("GB_Parchment_Tool"); buildPiece92.RequiredItems.Add("Stone", 3, recover: true); buildPiece92.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece92.Category.Set("Stone Building"); WearNTear component38 = buildPiece92.Prefab.GetComponent<WearNTear>(); component38.m_ashDamageImmune = false; component38.m_ashDamageResist = false; component38.m_burnable = false; BuildPiece buildPiece93 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Pole_Small"); buildPiece93.Tool.Add("GB_Parchment_Tool"); buildPiece93.RequiredItems.Add("Stone", 1, recover: true); buildPiece93.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece93.Category.Set("Stone Building"); WearNTear component39 = buildPiece93.Prefab.GetComponent<WearNTear>(); component39.m_ashDamageImmune = false; component39.m_ashDamageResist = false; component39.m_burnable = false; BuildPiece buildPiece94 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Beam_Small"); buildPiece94.Tool.Add("GB_Parchment_Tool"); buildPiece94.RequiredItems.Add("Stone", 1, recover: true); buildPiece94.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece94.Category.Set("Stone Building"); WearNTear component40 = buildPiece94.Prefab.GetComponent<WearNTear>(); component40.m_ashDamageImmune = false; component40.m_ashDamageResist = false; component40.m_burnable = false; BuildPiece buildPiece95 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Beam_26"); buildPiece95.Tool.Add("GB_Parchment_Tool"); buildPiece95.RequiredItems.Add("Stone", 3, recover: true); buildPiece95.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece95.Category.Set("Stone Building"); WearNTear component41 = buildPiece95.Prefab.GetComponent<WearNTear>(); component41.m_ashDamageImmune = false; component41.m_ashDamageResist = false; component41.m_burnable = false; BuildPiece buildPiece96 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Beam_45"); buildPiece96.Tool.Add("GB_Parchment_Tool"); buildPiece96.RequiredItems.Add("Stone", 3, recover: true); buildPiece96.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece96.Category.Set("Stone Building"); WearNTear component42 = buildPiece96.Prefab.GetComponent<WearNTear>(); component42.m_ashDamageImmune = false; component42.m_ashDamageResist = false; component42.m_burnable = false; BuildPiece buildPiece97 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Wall_Roof_Top"); buildPiece97.Tool.Add("GB_Parchment_Tool"); buildPiece97.RequiredItems.Add("Stone", 5, recover: true); buildPiece97.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece97.Category.Set("Stone Building"); WearNTear component43 = buildPiece97.Prefab.GetComponent<WearNTear>(); component43.m_ashDamageImmune = false; component43.m_ashDamageResist = false; component43.m_burnable = false; BuildPiece buildPiece98 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Wall_Roof_Top_45"); buildPiece98.Tool.Add("GB_Parchment_Tool"); buildPiece98.RequiredItems.Add("Stone", 5, recover: true); buildPiece98.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece98.Category.Set("Stone Building"); WearNTear component44 = buildPiece98.Prefab.GetComponent<WearNTear>(); component44.m_ashDamageImmune = false; component44.m_ashDamageResist = false; component44.m_burnable = false; BuildPiece buildPiece99 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Wall_26"); buildPiece99.Tool.Add("GB_Parchment_Tool"); buildPiece99.RequiredItems.Add("Stone", 3, recover: true); buildPiece99.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece99.Category.Set("Stone Building"); WearNTear component45 = buildPiece99.Prefab.GetComponent<WearNTear>(); component45.m_ashDamageImmune = false; component45.m_ashDamageResist = false; component45.m_burnable = false; BuildPiece buildPiece100 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Wall_45"); buildPiece100.Tool.Add("GB_Parchment_Tool"); buildPiece100.RequiredItems.Add("Stone", 3, recover: true); buildPiece100.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece100.Category.Set("Stone Building"); WearNTear component46 = buildPiece100.Prefab.GetComponent<WearNTear>(); component46.m_ashDamageImmune = false; component46.m_ashDamageResist = false; component46.m_burnable = false; BuildPiece buildPiece101 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Wall_Invert_26"); buildPiece101.Tool.Add("GB_Parchment_Tool"); buildPiece101.RequiredItems.Add("Stone", 3, recover: true); buildPiece101.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece101.Category.Set("Stone Building"); WearNTear component47 = buildPiece101.Prefab.GetComponent<WearNTear>(); component47.m_ashDamageImmune = false; component47.m_ashDamageResist = false; component47.m_burnable = false; BuildPiece buildPiece102 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Wall_Invert_45"); buildPiece102.Tool.Add("GB_Parchment_Tool"); buildPiece102.RequiredItems.Add("Stone", 3, recover: true); buildPiece102.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece102.Category.Set("Stone Building"); WearNTear component48 = buildPiece102.Prefab.GetComponent<WearNTear>(); component48.m_ashDamageImmune = false; component48.m_ashDamageResist = false; component48.m_burnable = false; BuildPiece buildPiece103 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_Stone_Aperture"); buildPiece103.Tool.Add("GB_Parchment_Tool"); buildPiece103.RequiredItems.Add("Stone", 6, recover: true); buildPiece103.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece103.Category.Set("Stone Building"); WearNTear component49 = buildPiece103.Prefab.GetComponent<WearNTear>(); component49.m_ashDamageImmune = false; component49.m_ashDamageResist = false; component49.m_burnable = false; BuildPiece buildPiece104 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_StoneWall"); buildPiece104.Tool.Add("GB_Parchment_Tool"); buildPiece104.RequiredItems.Add("Stone", 10, recover: true); buildPiece104.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece104.Category.Set("Stone Building"); WearNTear component50 = buildPiece104.Prefab.GetComponent<WearNTear>(); component50.m_ashDamageImmune = false; component50.m_ashDamageResist = false; component50.m_burnable = false; BuildPiece buildPiece105 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Halfwall_Battlement"); buildPiece105.Tool.Add("GB_Parchment_Tool"); buildPiece105.RequiredItems.Add("Stone", 3, recover: true); buildPiece105.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece105.Category.Set("Stone Building"); WearNTear component51 = buildPiece105.Prefab.GetComponent<WearNTear>(); component51.m_ashDamageImmune = false; component51.m_ashDamageResist = false; component51.m_burnable = false; BuildPiece buildPiece106 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_StoneWall_Door"); buildPiece106.Tool.Add("GB_Parchment_Tool"); buildPiece106.RequiredItems.Add("Stone", 6, recover: true); buildPiece106.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece106.Category.Set("Stone Building"); WearNTear component52 = buildPiece106.Prefab.GetComponent<WearNTear>(); component52.m_ashDamageImmune = false; component52.m_ashDamageResist = false; component52.m_burnable = false; BuildPiece buildPiece107 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_StoneWall_Door"); buildPiece107.Tool.Add("GB_Parchment_Tool"); buildPiece107.RequiredItems.Add("Stone", 10, recover: true); buildPiece107.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece107.Category.Set("Stone Building"); WearNTear component53 = buildPiece107.Prefab.GetComponent<WearNTear>(); component53.m_ashDamageImmune = false; component53.m_ashDamageResist = false; component53.m_burnable = false; BuildPiece buildPiece108 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wall_Shelf"); buildPiece108.Tool.Add("GB_Parchment_Tool"); buildPiece108.RequiredItems.Add("Wood", 6, recover: true); buildPiece108.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece108.Category.Set("Furniture"); BuildPiece buildPiece109 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Rectangle_Rug"); buildPiece109.Tool.Add("GB_Parchment_Tool"); buildPiece109.RequiredItems.Add("DeerHide", 6, recover: true); buildPiece109.RequiredItems.Add("Coal", 2, recover: true); buildPiece109.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece109.Category.Set("Furniture"); BuildPiece buildPiece110 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Round_Rug"); buildPiece110.Tool.Add("GB_Parchment_Tool"); buildPiece110.RequiredItems.Add("DeerHide", 2, recover: true); buildPiece110.RequiredItems.Add("Coal", 2, recover: true); buildPiece110.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece110.Category.Set("Furniture"); BuildPiece buildPiece111 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Oval_Rug"); buildPiece111.Tool.Add("GB_Parchment_Tool"); buildPiece111.RequiredItems.Add("DeerHide", 4, recover: true); buildPiece111.RequiredItems.Add("Coal", 2, recover: true); buildPiece111.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece111.Category.Set("Furniture"); BuildPiece buildPiece112 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Rug_Section"); buildPiece112.Tool.Add("GB_Parchment_Tool"); buildPiece112.RequiredItems.Add("DeerHide", 4, recover: true); buildPiece112.RequiredItems.Add("Coal", 2, recover: true); buildPiece112.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece112.Category.Set("Furniture"); BuildPiece buildPiece113 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Rug_End"); buildPiece113.Tool.Add("GB_Parchment_Tool"); buildPiece113.RequiredItems.Add("DeerHide", 1, recover: true); buildPiece113.RequiredItems.Add("Coal", 1, recover: true); buildPiece113.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece113.Category.Set("Furniture"); BuildPiece buildPiece114 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Block_Stairs"); buildPiece114.Tool.Add("GB_Parchment_Tool"); buildPiece114.RequiredItems.Add("Stone", 8, recover: true); buildPiece114.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece114.Category.Set("Stone Building"); WearNTear component54 = buildPiece114.Prefab.GetComponent<WearNTear>(); component54.m_ashDamageImmune = false; component54.m_ashDamageResist = false; component54.m_burnable = false; BuildPiece buildPiece115 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Stairs"); buildPiece115.Tool.Add("GB_Parchment_Tool"); buildPiece115.RequiredItems.Add("Stone", 8, recover: true); buildPiece115.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece115.Category.Set("Stone Building"); WearNTear component55 = buildPiece115.Prefab.GetComponent<WearNTear>(); component55.m_ashDamageImmune = false; component55.m_ashDamageResist = false; component55.m_burnable = false; BuildPiece buildPiece116 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wood_Stairs"); buildPiece116.Tool.Add("GB_Parchment_Tool"); buildPiece116.RequiredItems.Add("Wood", 8, recover: true); buildPiece116.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece116.Category.Set("Wood Building"); BuildPiece buildPiece117 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Rock_Pole_Small"); buildPiece117.Tool.Add("GB_Parchment_Tool"); buildPiece117.RequiredItems.Add("Stone", 2, recover: true); buildPiece117.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece117.Category.Set("Stone Building"); WearNTear component56 = buildPiece117.Prefab.GetComponent<WearNTear>(); component56.m_ashDamageImmune = false; component56.m_ashDamageResist = false; component56.m_burnable = false; BuildPiece buildPiece118 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Rock_Pole"); buildPiece118.Tool.Add("GB_Parchment_Tool"); buildPiece118.RequiredItems.Add("Stone", 4, recover: true); buildPiece118.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece118.Category.Set("Stone Building"); WearNTear component57 = buildPiece118.Prefab.GetComponent<WearNTear>(); component57.m_ashDamageImmune = false; component57.m_ashDamageResist = false; component57.m_burnable = false; BuildPiece buildPiece119 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Rock_Beam"); buildPiece119.Tool.Add("GB_Parchment_Tool"); buildPiece119.RequiredItems.Add("Stone", 4, recover: true); buildPiece119.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece119.Category.Set("Stone Building"); WearNTear component58 = buildPiece119.Prefab.GetComponent<WearNTear>(); component58.m_ashDamageImmune = false; component58.m_ashDamageResist = false; component58.m_burnable = false; BuildPiece buildPiece120 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Rock_Beam_Small"); buildPiece120.Tool.Add("GB_Parchment_Tool"); buildPiece120.RequiredItems.Add("Stone", 2, recover: true); buildPiece120.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece120.Category.Set("Stone Building"); WearNTear component59 = buildPiece120.Prefab.GetComponent<WearNTear>(); component59.m_ashDamageImmune = false; component59.m_ashDamageResist = false; component59.m_burnable = false; BuildPiece buildPiece121 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_Stone_Orn"); buildPiece121.Tool.Add("GB_Parchment_Tool"); buildPiece121.RequiredItems.Add("Stone", 6, recover: true); buildPiece121.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece121.Category.Set("Stone Building"); WearNTear component60 = buildPiece121.Prefab.GetComponent<WearNTear>(); component60.m_ashDamageImmune = false; component60.m_ashDamageResist = false; component60.m_burnable = false; BuildPiece buildPiece122 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Small_Wall_Orn"); buildPiece122.Tool.Add("GB_Parchment_Tool"); buildPiece122.RequiredItems.Add("Stone", 2, recover: true); buildPiece122.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece122.Category.Set("Stone Building"); WearNTear component61 = buildPiece122.Prefab.GetComponent<WearNTear>(); component61.m_ashDamageImmune = false; component61.m_ashDamageResist = false; component61.m_burnable = false; BuildPiece buildPiece123 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wooden_Door"); buildPiece123.Tool.Add("GB_Parchment_Tool"); buildPiece123.RequiredItems.Add("Wood", 12, recover: true); buildPiece123.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece123.Category.Set("Wood Building"); BuildPiece buildPiece124 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Glass_Door"); buildPiece124.Tool.Add("GB_Parchment_Tool"); buildPiece124.RequiredItems.Add("Wood", 6, recover: true); buildPiece124.RequiredItems.Add("Crystal", 2, recover: true); buildPiece124.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece124.Category.Set("Wood Building"); BuildPiece buildPiece125 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Glass_Door_OdinPlus"); buildPiece125.Tool.Add("GB_Parchment_Tool"); buildPiece125.RequiredItems.Add("Wood", 6, recover: true); buildPiece125.RequiredItems.Add("Crystal", 2, recover: true); buildPiece125.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece125.Category.Set("Wood Building"); BuildPiece buildPiece126 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Iron_Floor_Grate"); buildPiece126.Tool.Add("GB_Parchment_Tool"); buildPiece126.RequiredItems.Add("Iron", 12, recover: true); buildPiece126.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece126.Category.Set("Deco"); WearNTear component62 = buildPiece126.Prefab.GetComponent<WearNTear>(); component62.m_ashDamageImmune = false; component62.m_ashDamageResist = false; component62.m_burnable = false; BuildPiece buildPiece127 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Rope_Fence"); buildPiece127.Tool.Add("GB_Parchment_Tool"); buildPiece127.RequiredItems.Add("Wood", 4, recover: true); buildPiece127.RequiredItems.Add("LinenThread", 2, recover: true); buildPiece127.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece127.Category.Set("Wood Building"); BuildPiece buildPiece128 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Iron_Fence"); buildPiece128.Tool.Add("GB_Parchment_Tool"); buildPiece128.RequiredItems.Add("Iron", 12, recover: true); buildPiece128.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece128.Category.Set("Deco"); WearNTear component63 = buildPiece128.Prefab.GetComponent<WearNTear>(); component63.m_ashDamageImmune = false; component63.m_ashDamageResist = false; component63.m_burnable = false; BuildPiece buildPiece129 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Iron_Fence_End"); buildPiece129.Tool.Add("GB_Parchment_Tool"); buildPiece129.RequiredItems.Add("Iron", 8, recover: true); buildPiece129.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece129.Category.Set("Deco"); WearNTear component64 = buildPiece129.Prefab.GetComponent<WearNTear>(); component64.m_ashDamageImmune = false; component64.m_ashDamageResist = false; component64.m_burnable = false; BuildPiece buildPiece130 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Iron_Fence_Door"); buildPiece130.Tool.Add("GB_Parchment_Tool"); buildPiece130.RequiredItems.Add("Iron", 12, recover: true); buildPiece130.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece130.Category.Set("Deco"); WearNTear component65 = buildPiece130.Prefab.GetComponent<WearNTear>(); component65.m_ashDamageImmune = false; component65.m_ashDamageResist = false; component65.m_burnable = false; BuildPiece buildPiece131 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_Chest"); buildPiece131.Tool.Add("GB_Parchment_Tool"); buildPiece131.RequiredItems.Add("Wood", 12, recover: true); buildPiece131.RequiredItems.Add("Obsidian", 4, recover: true); buildPiece131.RequiredItems.Add("Bronze", 2, recover: true); buildPiece131.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece131.Category.Set("Lights and Storage"); BuildPiece buildPiece132 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Small_Chest"); buildPiece132.Tool.Add("GB_Parchment_Tool"); buildPiece132.RequiredItems.Add("Wood", 8, recover: true); buildPiece132.RequiredItems.Add("Bronze", 1, recover: true); buildPiece132.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece132.Category.Set("Lights and Storage"); BuildPiece buildPiece133 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Red_Jute_Bed"); buildPiece133.Tool.Add("GB_Parchment_Tool"); buildPiece133.RequiredItems.Add("FineWood", 10, recover: true); buildPiece133.RequiredItems.Add("JuteRed", 2, recover: true); buildPiece133.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece133.Category.Set("Furniture"); BuildPiece buildPiece134 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Blue_Jute_Bed"); buildPiece134.Tool.Add("GB_Parchment_Tool"); buildPiece134.RequiredItems.Add("FineWood", 10, recover: true); buildPiece134.RequiredItems.Add("JuteBlue", 2, recover: true); buildPiece134.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece134.Category.Set("Furniture"); BuildPiece buildPiece135 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Black_Cloth_Bed"); buildPiece135.Tool.Add("GB_Parchment_Tool"); buildPiece135.RequiredItems.Add("FineWood", 10, recover: true); buildPiece135.RequiredItems.Add("Tar", 2, recover: true); buildPiece135.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece135.Category.Set("Furniture"); BuildPiece buildPiece136 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_RoundWall"); buildPiece136.Tool.Add("GB_Parchment_Tool"); buildPiece136.RequiredItems.Add("Stone", 12, recover: true); buildPiece136.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece136.Category.Set("Stone Building"); WearNTear component66 = buildPiece136.Prefab.GetComponent<WearNTear>(); component66.m_ashDamageImmune = false; component66.m_ashDamageResist = false; component66.m_burnable = false; BuildPiece buildPiece137 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_RoundWall_Aperture"); buildPiece137.Tool.Add("GB_Parchment_Tool"); buildPiece137.RequiredItems.Add("Stone", 12, recover: true); buildPiece137.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece137.Category.Set("Stone Building"); WearNTear component67 = buildPiece137.Prefab.GetComponent<WearNTear>(); component67.m_ashDamageImmune = false; component67.m_ashDamageResist = false; component67.m_burnable = false; BuildPiece buildPiece138 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_RoundWall_Door"); buildPiece138.Tool.Add("GB_Parchment_Tool"); buildPiece138.RequiredItems.Add("Stone", 12, recover: true); buildPiece138.RequiredItems.Add("Wood", 6, recover: true); buildPiece138.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece138.Category.Set("Stone Building"); WearNTear component68 = buildPiece138.Prefab.GetComponent<WearNTear>(); component68.m_ashDamageImmune = false; component68.m_ashDamageResist = false; component68.m_burnable = false; BuildPiece buildPiece139 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_RoundWall_DoorFrame"); buildPiece139.Tool.Add("GB_Parchment_Tool"); buildPiece139.RequiredItems.Add("Stone", 10, recover: true); buildPiece139.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece139.Category.Set("Stone Building"); WearNTear component69 = buildPiece139.Prefab.GetComponent<WearNTear>(); component69.m_ashDamageImmune = false; component69.m_ashDamageResist = false; component69.m_burnable = false; BuildPiece buildPiece140 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_RoundWall_Third"); buildPiece140.Tool.Add("GB_Parchment_Tool"); buildPiece140.RequiredItems.Add("Stone", 6, recover: true); buildPiece140.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece140.Category.Set("Stone Building"); WearNTear component70 = buildPiece140.Prefab.GetComponent<WearNTear>(); component70.m_ashDamageImmune = false; component70.m_ashDamageResist = false; component70.m_burnable = false; BuildPiece buildPiece141 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_RoundWall_Window"); buildPiece141.Tool.Add("GB_Parchment_Tool"); buildPiece141.RequiredItems.Add("Stone", 12, recover: true); buildPiece141.RequiredItems.Add("Crystal", 2, recover: true); buildPiece141.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece141.Category.Set("Stone Building"); WearNTear component71 = buildPiece141.Prefab.GetComponent<WearNTear>(); component71.m_ashDamageImmune = false; component71.m_ashDamageResist = false; component71.m_burnable = false; BuildPiece buildPiece142 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_RoundWall_Window_OP"); buildPiece142.Tool.Add("GB_Parchment_Tool"); buildPiece142.RequiredItems.Add("Stone", 12, recover: true); buildPiece142.RequiredItems.Add("Crystal", 2, recover: true); buildPiece142.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece142.Category.Set("Stone Building"); WearNTear component72 = buildPiece142.Prefab.GetComponent<WearNTear>(); component72.m_ashDamageImmune = false; component72.m_ashDamageResist = false; component72.m_burnable = false; BuildPiece buildPiece143 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Roundwall_Battlement"); buildPiece143.Tool.Add("GB_Parchment_Tool"); buildPiece143.RequiredItems.Add("Stone", 8, recover: true); buildPiece143.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece143.Category.Set("Stone Building"); WearNTear component73 = buildPiece143.Prefab.GetComponent<WearNTear>(); component73.m_ashDamageImmune = false; component73.m_ashDamageResist = false; component73.m_burnable = false; BuildPiece buildPiece144 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Wall_1x1"); buildPiece144.Tool.Add("GB_Parchment_Tool"); buildPiece144.RequiredItems.Add("Stone", 1, recover: true); buildPiece144.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece144.Category.Set("Stone Building"); WearNTear component74 = buildPiece144.Prefab.GetComponent<WearNTear>(); component74.m_ashDamageImmune = false; component74.m_ashDamageResist = false; component74.m_burnable = false; BuildPiece buildPiece145 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Hanging_Candles"); buildPiece145.Tool.Add("GB_Parchment_Tool"); buildPiece145.RequiredItems.Add("Tin", 3, recover: true); buildPiece145.RequiredItems.Add("Resin", 2, recover: true); buildPiece145.RequiredItems.Add("Honey", 2, recover: true); buildPiece145.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece145.Category.Set("Lights and Storage"); BuildPiece buildPiece146 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wooden_Cup"); buildPiece146.Tool.Add("GB_Parchment_Tool"); buildPiece146.RequiredItems.Add("FineWood", 1, recover: true); buildPiece146.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece146.Category.Set("Deco"); BuildPiece buildPiece147 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Tin_Cup"); buildPiece147.Tool.Add("GB_Parchment_Tool"); buildPiece147.RequiredItems.Add("Tin", 1, recover: true); buildPiece147.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece147.Category.Set("Deco"); BuildPiece buildPiece148 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wooden_Plate"); buildPiece148.Tool.Add("GB_Parchment_Tool"); buildPiece148.RequiredItems.Add("FineWood", 1, recover: true); buildPiece148.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece148.Category.Set("Deco"); BuildPiece buildPiece149 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Tin_Plate"); buildPiece149.Tool.Add("GB_Parchment_Tool"); buildPiece149.RequiredItems.Add("Tin", 1, recover: true); buildPiece149.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece149.Category.Set("Deco"); BuildPiece buildPiece150 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Dinner_Spoon"); buildPiece150.Tool.Add("GB_Parchment_Tool"); buildPiece150.RequiredItems.Add("Tin", 1, recover: true); buildPiece150.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece150.Category.Set("Deco"); BuildPiece buildPiece151 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Dinner_Fork"); buildPiece151.Tool.Add("GB_Parchment_Tool"); buildPiece151.RequiredItems.Add("Tin", 1, recover: true); buildPiece151.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece151.Category.Set("Deco"); BuildPiece buildPiece152 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Dinner_Knife"); buildPiece152.Tool.Add("GB_Parchment_Tool"); buildPiece152.RequiredItems.Add("Tin", 1, recover: true); buildPiece152.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece152.Category.Set("Deco"); BuildPiece buildPiece153 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Odin_Banner"); buildPiece153.Tool.Add("GB_Parchment_Tool"); buildPiece153.RequiredItems.Add("Iron", 1, recover: true); buildPiece153.RequiredItems.Add("LinenThread", 2, recover: true); buildPiece153.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece153.Category.Set("Deco"); BuildPiece buildPiece154 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Standing_Brazier"); buildPiece154.Tool.Add("GB_Parchment_Tool"); buildPiece154.RequiredItems.Add("Tin", 6, recover: true); buildPiece154.RequiredItems.Add("Wood", 4, recover: true); buildPiece154.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece154.Category.Set("Lights and Storage"); BuildPiece buildPiece155 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Standing_Torch"); buildPiece155.Tool.Add("GB_Parchment_Tool"); buildPiece155.RequiredItems.Add("Tin", 4, recover: true); buildPiece155.RequiredItems.Add("Wood", 2, recover: true); buildPiece155.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece155.Category.Set("Lights and Storage"); BuildPiece buildPiece156 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Tower_Roof"); buildPiece156.Tool.Add("GB_Parchment_Tool"); buildPiece156.RequiredItems.Add("Stone", 5, recover: true); buildPiece156.RequiredItems.Add("FineWood", 4, recover: true); buildPiece156.RequiredItems.Add("Wood", 15, recover: true); buildPiece156.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece156.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece156.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece157 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Half_Roof_26"); buildPiece157.Tool.Add("GB_Parchment_Tool"); buildPiece157.RequiredItems.Add("FineWood", 1, recover: true); buildPiece157.RequiredItems.Add("Wood", 2, recover: true); buildPiece157.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece157.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece157.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece158 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Half_Roof_45"); buildPiece158.Tool.Add("GB_Parchment_Tool"); buildPiece158.RequiredItems.Add("FineWood", 1, recover: true); buildPiece158.RequiredItems.Add("Wood", 2, recover: true); buildPiece158.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece158.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece158.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece159 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Corner_Roof_45"); buildPiece159.Tool.Add("GB_Parchment_Tool"); buildPiece159.RequiredItems.Add("FineWood", 1, recover: true); buildPiece159.RequiredItems.Add("Wood", 4, recover: true); buildPiece159.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece159.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece159.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece160 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Inverted_Corner_Roof"); buildPiece160.Tool.Add("GB_Parchment_Tool"); buildPiece160.RequiredItems.Add("FineWood", 1, recover: true); buildPiece160.RequiredItems.Add("Wood", 4, recover: true); buildPiece160.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece160.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece160.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece161 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Roof_45"); buildPiece161.Tool.Add("GB_Parchment_Tool"); buildPiece161.RequiredItems.Add("FineWood", 1, recover: true); buildPiece161.RequiredItems.Add("Wood", 4, recover: true); buildPiece161.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece161.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece161.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece162 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Roof_Top_45"); buildPiece162.Tool.Add("GB_Parchment_Tool"); buildPiece162.RequiredItems.Add("FineWood", 1, recover: true); buildPiece162.RequiredItems.Add("Wood", 4, recover: true); buildPiece162.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece162.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece162.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece163 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Corner_Roof_26"); buildPiece163.Tool.Add("GB_Parchment_Tool"); buildPiece163.RequiredItems.Add("FineWood", 1, recover: true); buildPiece163.RequiredItems.Add("Wood", 4, recover: true); buildPiece163.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece163.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece163.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece164 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Inverted_Corner_Roof_26"); buildPiece164.Tool.Add("GB_Parchment_Tool"); buildPiece164.RequiredItems.Add("FineWood", 1, recover: true); buildPiece164.RequiredItems.Add("Wood", 4, recover: true); buildPiece164.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece164.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece164.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece165 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Roof_26"); buildPiece165.Tool.Add("GB_Parchment_Tool"); buildPiece165.RequiredItems.Add("FineWood", 1, recover: true); buildPiece165.RequiredItems.Add("Wood", 4, recover: true); buildPiece165.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece165.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece165.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece166 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Roof_Top_26"); buildPiece166.Tool.Add("GB_Parchment_Tool"); buildPiece166.RequiredItems.Add("FineWood", 1, recover: true); buildPiece166.RequiredItems.Add("Wood", 4, recover: true); buildPiece166.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece166.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece166.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece167 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wood_Roof_Point"); buildPiece167.Tool.Add("GB_Parchment_Tool"); buildPiece167.RequiredItems.Add("FineWood", 4, recover: true); buildPiece167.RequiredItems.Add("Wood", 8, recover: true); buildPiece167.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece167.Category.Set("Wood Building"); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece167.Prefab, MaterialReplacer.ShaderType.UseUnityShader); BuildPiece buildPiece168 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Railing"); buildPiece168.Tool.Add("GB_Parchment_Tool"); buildPiece168.RequiredItems.Add("Stone", 4, recover: true); buildPiece168.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece168.Category.Set("Stone Building"); WearNTear component75 = buildPiece168.Prefab.GetComponent<WearNTear>(); component75.m_ashDamageImmune = false; component75.m_ashDamageResist = false; component75.m_burnable = false; BuildPiece buildPiece169 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wood_Railing"); buildPiece169.Tool.Add("GB_Parchment_Tool"); buildPiece169.RequiredItems.Add("Wood", 4, recover: true); buildPiece169.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece169.Category.Set("Wood Building"); BuildPiece buildPiece170 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Stairs_Left"); buildPiece170.Tool.Add("GB_Parchment_Tool"); buildPiece170.RequiredItems.Add("Wood", 8, recover: true); buildPiece170.RequiredItems.Add("Stone", 4, recover: true); buildPiece170.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece170.Category.Set("Wood Building"); BuildPiece buildPiece171 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Castle_Stairs_Right"); buildPiece171.Tool.Add("GB_Parchment_Tool"); buildPiece171.RequiredItems.Add("Wood", 8, recover: true); buildPiece171.RequiredItems.Add("Stone", 4, recover: true); buildPiece171.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece171.Category.Set("Wood Building"); BuildPiece buildPiece172 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Small_Cupboard"); buildPiece172.Tool.Add("GB_Parchment_Tool"); buildPiece172.RequiredItems.Add("FineWood", 6, recover: true); buildPiece172.RequiredItems.Add("BronzeNails", 2, recover: true); buildPiece172.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece172.Category.Set("Lights and Storage"); BuildPiece buildPiece173 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Large_Cupboard"); buildPiece173.Tool.Add("GB_Parchment_Tool"); buildPiece173.RequiredItems.Add("FineWood", 14, recover: true); buildPiece173.RequiredItems.Add("BronzeNails", 4, recover: true); buildPiece173.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece173.Category.Set("Lights and Storage"); BuildPiece buildPiece174 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Railing_26"); buildPiece174.Tool.Add("GB_Parchment_Tool"); buildPiece174.RequiredItems.Add("Stone", 4, recover: true); buildPiece174.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece174.Category.Set("Stone Building"); WearNTear component76 = buildPiece174.Prefab.GetComponent<WearNTear>(); component76.m_ashDamageImmune = false; component76.m_ashDamageResist = false; component76.m_burnable = false; BuildPiece buildPiece175 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Wall_Battlement_26"); buildPiece175.Tool.Add("GB_Parchment_Tool"); buildPiece175.RequiredItems.Add("Stone", 4, recover: true); buildPiece175.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece175.Category.Set("Stone Building"); WearNTear component77 = buildPiece175.Prefab.GetComponent<WearNTear>(); component77.m_ashDamageImmune = false; component77.m_ashDamageResist = false; component77.m_burnable = false; BuildPiece buildPiece176 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Wooden_Railing_26"); buildPiece176.Tool.Add("GB_Parchment_Tool"); buildPiece176.RequiredItems.Add("Wood", 4, recover: true); buildPiece176.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece176.Category.Set("Wood Building"); BuildPiece buildPiece177 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Hatch"); buildPiece177.Tool.Add("GB_Parchment_Tool"); buildPiece177.RequiredItems.Add("Stone", 4, recover: true); buildPiece177.RequiredItems.Add("Wood", 4, recover: true); buildPiece177.Crafting.Set(PieceManager.CraftingTable.StoneCutter); buildPiece177.Category.Set("Stone Building"); WearNTear component78 = buildPiece177.Prefab.GetComponent<WearNTear>(); component78.m_ashDamageImmune = false; component78.m_ashDamageResist = false; component78.m_burnable = false; BuildPiece buildPiece178 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Beam_Deco_1"); buildPiece178.Tool.Add("GB_Parchment_Tool"); buildPiece178.RequiredItems.Add("Stone", 4, recover: true); buildPiece178.Crafting.Set(PieceManager.CraftingTable.Workbench); buildPiece178.Category.Set("Deco"); WearNTear component79 = buildPiece178.Prefab.GetComponent<WearNTear>(); component79.m_ashDamageImmune = false; component79.m_ashDamageResist = false; component79.m_burnable = false; BuildPiece buildPiece179 = new BuildPiece(PiecePrefabManager.RegisterAssetBundle("gbcastles"), "GB_Stone_Beam_Deco_2"); buildPiece179.Tool.Add("GB_Parchment_Tool"); buildPiece179.RequiredItems.Add("Stone", 4, recover: true); buil