Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of RavenwoodJapan v1.0.4
plugins/RavenwoodJapan/RavenwoodJapan.dll
Decompiled 2 weeks 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 System.Threading; using BepInEx; using BepInEx.Bootstrap; using BepInEx.Configuration; using BepInEx.Logging; using HarmonyLib; 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.BufferedDeserialization; using YamlDotNet.Serialization.BufferedDeserialization.TypeDiscriminators; 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: AssemblyFileVersion("1.0.2")] [assembly: Guid("E0E2F92E-557C-4A05-9D89-AA92A0BD75C4")] [assembly: ComVisible(false)] [assembly: AssemblyTrademark("")] [assembly: AssemblyCopyright("Copyright © 2022")] [assembly: AssemblyProduct("RavenwoodJapan")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyDescription("")] [assembly: AssemblyTitle("RavenwoodJapan")] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: CompilationRelaxations(8)] [assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] [assembly: AssemblyCompany("JamesJonesTV")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.2.0")] [module: <68631f8e-ce90-4664-802b-f36f23fb86c1>RefSafetyRules(11)] [module: UnverifiableCode] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [<225beaba-9dcb-430f-8dc7-16be9ba70e41>Embedded] internal sealed class <225beaba-9dcb-430f-8dc7-16be9ba70e41>EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)] [<225beaba-9dcb-430f-8dc7-16be9ba70e41>Embedded] [CompilerGenerated] internal sealed class <b15234fa-22c7-4d7e-b9a3-b88eb5fdb6ac>NullableAttribute : Attribute { public readonly byte[] NullableFlags; public <b15234fa-22c7-4d7e-b9a3-b88eb5fdb6ac>NullableAttribute(byte P_0) { NullableFlags = new byte[1] { P_0 }; } public <b15234fa-22c7-4d7e-b9a3-b88eb5fdb6ac>NullableAttribute(byte[] P_0) { NullableFlags = P_0; } } [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false)] [<225beaba-9dcb-430f-8dc7-16be9ba70e41>Embedded] [CompilerGenerated] internal sealed class <85ae0400-9017-4a7e-99cd-5a265ab7e7fd>NullableContextAttribute : Attribute { public readonly byte Flag; public <85ae0400-9017-4a7e-99cd-5a265ab7e7fd>NullableContextAttribute(byte P_0) { Flag = P_0; } } [CompilerGenerated] [AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)] [<225beaba-9dcb-430f-8dc7-16be9ba70e41>Embedded] internal sealed class <68631f8e-ce90-4664-802b-f36f23fb86c1>RefSafetyRulesAttribute : Attribute { public readonly int Version; public <68631f8e-ce90-4664-802b-f36f23fb86c1>RefSafetyRulesAttribute(int P_0) { Version = P_0; } } } namespace RavenwoodJapan { [HarmonyPatch(typeof(WearNTear), "HaveSupport")] [<b15234fa-22c7-4d7e-b9a3-b88eb5fdb6ac>Nullable(0)] [<85ae0400-9017-4a7e-99cd-5a265ab7e7fd>NullableContext(1)] public static class PiecesPatchSupport { private static readonly string[] JapanHousePrefabs = new string[114] { "RWJ_JAPANHOUSE01", "RWJ_JAPANHOUSE02", "RWJ_JAPANHOUSE03", "RWJ_JAPANHOUSE04", "RWJ_JAPANHOUSE05", "RWJ_JAPANHOUSE06", "RWJ_JAPANHOUSE07", "RWJ_JAPANHOUSE08", "RWJ_JAPANHOUSE09", "RWJ_JAPANHOUSE10", "RWJ_JAPANHOUSE11", "RWJ_JAPANHOUSE12", "RWJ_JAPANHOUSE13", "RWJ_JAPANFLOOR_16X16", "RWJ_JAPANFLOOR_025X025", "RWJ_JAPANFLOOR_1X1", "RWJ_JAPANFLOOR_2X2", "RWJ_JAPANFLOOR_4X4", "RWJ_JAPANFLOOR_8X8", "RWJ_Tamonyagura", "RWJ_Koritsuyagura", "RWJ_Tamonyagura1", "RWJ_Tamonyagura2", "RWJ_AZUMAYA", "RWJ_JAPANHOUSE14", "RWJ_Koritsuyagura1", "RWJ_Nijunoto", "RWJ_HAIDEN", "RWJ_JAPANBAMBOOSHELTER", "RWJ_JAPANBAMBOOSHELTER1", "RWJ_JAPANBAMBOOSHELTER2", "RWJ_JAPANBAMBOOSHELTER3", "RWJ_JAPANBAMBOOSHELTER4", "RWJ_JAPANBAMBOOSHELTER5", "RWJ_JAPANBAMBOOSHELTER6", "RWJ_JAPANBAMBOOSHELTER7", "RWJ_JAPANBAMBOOSHELTER8", "RWJ_ASIANJAPANHOUSE", "RWJ_ASIANJAPANHOUSE1", "RWJ_ASIANJAPANHOUSE2", "RWJ_ASIANJAPANHOUSE3", "RWJ_ASIANJAPANHOUSE4", "RWJ_ASIANJAPANHOUSE5", "RWJ_ASIANJAPANHOUSE6", "RWJ_ASIANJAPANHOUSE7", "RWJ_ASIANJAPANHOUSE8", "RWJ_Kabukimon", "RWJ_Kankodai", "RWJ_Nijumon", "RWJ_Kankodai1", "RWJ_Kankodai2", "RWJ_Yamashiro", "RWJ_Yamashiro1", "RWJ_Sankomon", "RWJ_Enmon", "RWJ_TORIGATE", "RWJ_O_dera", "RWJ_O_dera1", "RWJ_O_dera2", "RWJ_O_dera3", "RWJ_O_dera4", "RWJ_O_dera5", "RWJ_O_dera6", "RWJ_O_dera7", "RWJ_JAPANHOUSE1", "RWJ_JAPANHOUSE2", "RWJ_JAPANHOUSE3", "RWJ_JAPANHOUSE4", "RWJ_JAPANHOUSE5", "RWJ_JAPANHOUSE6", "RWJ_JAPANHOUSE7", "RWJ_JAPANHOUSE8", "RWJ_JAPANHOUSE9", "RWJ_JAPANHOUSE10", "RWJ_JAPANHOUSE11", "RWJ_JAPANHOUSE12", "RWJ_JAPANHOUSE13", "RWJ_JAPANHOUSE14", "RWJ_JAPANHOUSE15", "RWJ_JAPANHOUSE16", "RWJ_JAPANHOUSE17", "RWJ_JAPANHOUSE18", "RWJ_JAPANHOUSE19", "RWJ_JAPANHOUSE20", "RWJ_JAPANHOUSE21", "RWJ_JAPANHOUSE22", "RWJ_JAPANHOUSE23", "RWJ_JAPANHOUSE24", "RWJ_JAPANHOUSE25", "RWJ_JAPANHOUSE26", "RWJ_JAPANHOUSE27", "RWJ_JAPANHOUSE28", "RWJ_JAPANHOUSE29", "RWJ_JAPANHOUSE30", "RWJ_JAPANHOUSE31", "RWJ_JAPANHOUSE32", "RWJ_JAPANHOUSE33", "RWJ_JAPANHOUSE34", "RWJ_JAPANHOUSE35", "RWJ_JAPANHOUSE36", "RWJ_JAPANHOUSE37", "RWJ_JAPANHOUSE38", "RWJ_JAPANHOUSE39", "RWJ_JAPANHOUSE40", "RWJ_JAPANHOUSE41", "RWJ_JAPANHOUSE42", "RWJ_JAPANHOUSE43", "RWJ_JAPANHOUSE44", "RWJ_JAPANHOUSE45", "RWJ_JAPANHOUSE46", "RWJ_JAPANHOUSE47", "RWJ_JAPANHOUSE48", "RWJ_JAPANHOUSE49", "RWJ_JAPANHOUSE50" }; private const float VerticalCheckDistance = 200f; private const float LateralCheckRadius = 4f; private static void Postfix(WearNTear __instance, ref bool __result) { //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0020: Unknown result type (might be due to invalid IL or missing references) //IL_0021: Unknown result type (might be due to invalid IL or missing references) //IL_002b: Unknown result type (might be due to invalid IL or missing references) //IL_0030: Unknown result type (might be due to invalid IL or missing references) //IL_0035: Unknown result type (might be due to invalid IL or missing references) //IL_0083: Unknown result type (might be due to invalid IL or missing references) if (((Object)(object)__instance == (Object)null) | __result) { return; } Vector3 position = ((Component)__instance).transform.position; RaycastHit val = default(RaycastHit); if (Physics.Raycast(position + Vector3.up * 0.5f, Vector3.down, ref val, 200f)) { string prefabName = Utils.GetPrefabName(((Component)((Component)((RaycastHit)(ref val)).collider).transform.root).gameObject); if (JapanHousePrefabs.Contains(prefabName)) { __result = true; return; } } Collider[] array = Physics.OverlapSphere(position, 4f); if (array == null || array.Length == 0) { return; } Collider[] array2 = array; foreach (Collider val2 in array2) { string prefabName2 = Utils.GetPrefabName(((Component)((Component)val2).transform.root).gameObject); if (JapanHousePrefabs.Contains(prefabName2)) { __result = true; break; } } } } [<b15234fa-22c7-4d7e-b9a3-b88eb5fdb6ac>Nullable(0)] [<85ae0400-9017-4a7e-99cd-5a265ab7e7fd>NullableContext(1)] [BepInPlugin("JamesJonesTV.RavenwoodJapan", "RavenwoodJapan", "1.0.2")] public class RavenwoodJapanPlugin : BaseUnityPlugin { [<85ae0400-9017-4a7e-99cd-5a265ab7e7fd>NullableContext(0)] public enum Toggle { On = 1, Off = 0 } [<85ae0400-9017-4a7e-99cd-5a265ab7e7fd>NullableContext(0)] private class ConfigurationManagerAttributes { [UsedImplicitly] public int? Order = null; [UsedImplicitly] public bool? Browsable = null; [UsedImplicitly] [<b15234fa-22c7-4d7e-b9a3-b88eb5fdb6ac>Nullable(2)] public string Category = null; [<b15234fa-22c7-4d7e-b9a3-b88eb5fdb6ac>Nullable(new byte[] { 2, 1 })] [UsedImplicitly] public Action<ConfigEntryBase> CustomDrawer = null; } [<b15234fa-22c7-4d7e-b9a3-b88eb5fdb6ac>Nullable(0)] private class AcceptableShortcuts : AcceptableValueBase { public AcceptableShortcuts() : base(typeof(KeyboardShortcut)) { } public override object Clamp(object value) { return value; } public override bool IsValid(object value) { return true; } public override string ToDescriptionString() { return "# Acceptable values: " + string.Join(", ", UnityInput.Current.SupportedKeyCodes); } } internal const string ModName = "RavenwoodJapan"; internal const string ModVersion = "1.0.2"; internal const string Author = "JamesJonesTV"; private const string ModGUID = "JamesJonesTV.RavenwoodJapan"; private static string ConfigFileName = "JamesJonesTV.RavenwoodJapan.cfg"; private static string ConfigFileFullPath; internal static string ConnectionError; private readonly Harmony _harmony = new Harmony("JamesJonesTV.RavenwoodJapan"); public static readonly ManualLogSource RavenwoodJapanLogger; private static readonly ConfigSync ConfigSync; private static ConfigEntry<Toggle> _serverConfigLocked; public void Awake() { Localizer.Load(); _serverConfigLocked = config("1 - General", "Lock Configuration", Toggle.On, "If on, the configuration is locked and can be changed by server admins only."); ConfigSync.AddLockingConfigEntry<Toggle>(_serverConfigLocked); BuildPiece.ConfigurationEnabled = true; BuildPiece buildPiece = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE01"); buildPiece.Name.English("Japanese House"); buildPiece.Description.English("A traditional Japanese-style house."); buildPiece.RequiredItems.Add("Wood", 200, recover: true); buildPiece.RequiredItems.Add("FineWood", 200, recover: true); buildPiece.RequiredItems.Add("Stone", 100, recover: true); buildPiece.RequiredItems.Add("RWc_Deer", 50, recover: true); buildPiece.Category.Set("Ravenwood"); buildPiece.Crafting.Set(CraftingTable.Workbench); buildPiece.Tool.Add("Hammer"); buildPiece.SpecialProperties.NoConfig = false; buildPiece.SpecialProperties.AdminOnly = false; buildPiece.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece2 = new BuildPiece("ravenwoodjapan", "RWJ_ShojiDoor01"); buildPiece2.Name.English("Shoji Door"); buildPiece2.Description.English("A traditional Japanese sliding door."); buildPiece2.RequiredItems.Add("FineWood", 10, recover: true); buildPiece2.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece2.Category.Set("Ravenwood"); buildPiece2.Crafting.Set(CraftingTable.Workbench); buildPiece2.Tool.Add("Hammer"); buildPiece2.SpecialProperties.NoConfig = false; buildPiece2.SpecialProperties.AdminOnly = false; buildPiece2.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece2.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece3 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE02"); buildPiece3.Name.English("Japanese House II"); buildPiece3.Description.English("A traditional Japanese-style house."); buildPiece3.RequiredItems.Add("Wood", 400, recover: true); buildPiece3.RequiredItems.Add("FineWood", 400, recover: true); buildPiece3.RequiredItems.Add("Stone", 200, recover: true); buildPiece3.RequiredItems.Add("RWc_Deer", 50, recover: true); buildPiece3.Category.Set("Ravenwood"); buildPiece3.Crafting.Set(CraftingTable.Workbench); buildPiece3.Tool.Add("Hammer"); buildPiece3.SpecialProperties.NoConfig = false; buildPiece3.SpecialProperties.AdminOnly = false; buildPiece3.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece3.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece4 = new BuildPiece("ravenwoodjapan", "RWJ_ShojiDoor02"); buildPiece4.Name.English("Shoji Door II"); buildPiece4.Description.English("A traditional Japanese sliding door."); buildPiece4.RequiredItems.Add("FineWood", 8, recover: true); buildPiece4.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece4.Category.Set("Ravenwood"); buildPiece4.Crafting.Set(CraftingTable.Workbench); buildPiece4.Tool.Add("Hammer"); buildPiece4.SpecialProperties.NoConfig = false; buildPiece4.SpecialProperties.AdminOnly = false; buildPiece4.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece4.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece5 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE03"); buildPiece5.Name.English("Japanese House III"); buildPiece5.Description.English("A traditional Japanese-style house."); buildPiece5.RequiredItems.Add("Wood", 500, recover: true); buildPiece5.RequiredItems.Add("FineWood", 400, recover: true); buildPiece5.RequiredItems.Add("Stone", 100, recover: true); buildPiece5.RequiredItems.Add("RWc_Deer", 100, recover: true); buildPiece5.Category.Set("Ravenwood"); buildPiece5.Crafting.Set(CraftingTable.Workbench); buildPiece5.Tool.Add("Hammer"); buildPiece5.SpecialProperties.NoConfig = false; buildPiece5.SpecialProperties.AdminOnly = false; buildPiece5.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece5.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece6 = new BuildPiece("ravenwoodjapan", "RWJ_ShojiDoor03"); buildPiece6.Name.English("Shoji Door III"); buildPiece6.Description.English("A traditional Japanese sliding door."); buildPiece6.RequiredItems.Add("FineWood", 8, recover: true); buildPiece6.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece6.Category.Set("Ravenwood"); buildPiece6.Crafting.Set(CraftingTable.Workbench); buildPiece6.Tool.Add("Hammer"); buildPiece6.SpecialProperties.NoConfig = false; buildPiece6.SpecialProperties.AdminOnly = false; buildPiece6.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece6.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece7 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE04"); buildPiece7.Name.English("Japanese House IV"); buildPiece7.Description.English("A traditional Japanese-style house."); buildPiece7.RequiredItems.Add("Wood", 300, recover: true); buildPiece7.RequiredItems.Add("FineWood", 300, recover: true); buildPiece7.RequiredItems.Add("Coal", 30, recover: true); buildPiece7.RequiredItems.Add("RWc_Deer", 63, recover: false); buildPiece7.Category.Set("Ravenwood"); buildPiece7.Crafting.Set(CraftingTable.Workbench); buildPiece7.Tool.Add("Hammer"); buildPiece7.SpecialProperties.NoConfig = false; buildPiece7.SpecialProperties.AdminOnly = false; buildPiece7.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece7.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece8 = new BuildPiece("ravenwoodjapan", "RWJ_ShojiDoor04"); buildPiece8.Name.English("Shoji Door IV"); buildPiece8.Description.English("A traditional Japanese sliding door."); buildPiece8.RequiredItems.Add("FineWood", 10, recover: true); buildPiece8.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece8.Category.Set("Ravenwood"); buildPiece8.Crafting.Set(CraftingTable.Workbench); buildPiece8.Tool.Add("Hammer"); buildPiece8.SpecialProperties.NoConfig = false; buildPiece8.SpecialProperties.AdminOnly = false; buildPiece8.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece8.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece9 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE05"); buildPiece9.Name.English("Japanese House V"); buildPiece9.Description.English("A traditional Japanese-style house."); buildPiece9.RequiredItems.Add("Wood", 440, recover: true); buildPiece9.RequiredItems.Add("FineWood", 400, recover: true); buildPiece9.RequiredItems.Add("Coal", 40, recover: true); buildPiece9.RequiredItems.Add("RWc_Deer", 88, recover: false); buildPiece9.Category.Set("Ravenwood"); buildPiece9.Crafting.Set(CraftingTable.Workbench); buildPiece9.Tool.Add("Hammer"); buildPiece9.SpecialProperties.NoConfig = false; buildPiece9.SpecialProperties.AdminOnly = false; buildPiece9.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece9.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece10 = new BuildPiece("ravenwoodjapan", "RWJ_ShojiDoor05"); buildPiece10.Name.English("Shoji Door V"); buildPiece10.Description.English("A traditional Japanese sliding door."); buildPiece10.RequiredItems.Add("FineWood", 8, recover: true); buildPiece10.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece10.Category.Set("Ravenwood"); buildPiece10.Crafting.Set(CraftingTable.Workbench); buildPiece10.Tool.Add("Hammer"); buildPiece10.SpecialProperties.NoConfig = false; buildPiece10.SpecialProperties.AdminOnly = false; buildPiece10.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece10.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece11 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE06"); buildPiece11.Name.English("Japanese House VI"); buildPiece11.Description.English("A traditional Japanese-style house."); buildPiece11.RequiredItems.Add("Wood", 500, recover: true); buildPiece11.RequiredItems.Add("FineWood", 400, recover: true); buildPiece11.RequiredItems.Add("Stone", 200, recover: true); buildPiece11.RequiredItems.Add("RWc_Deer", 110, recover: true); buildPiece11.Category.Set("Ravenwood"); buildPiece11.Crafting.Set(CraftingTable.Workbench); buildPiece11.Tool.Add("Hammer"); buildPiece11.SpecialProperties.NoConfig = false; buildPiece11.SpecialProperties.AdminOnly = false; buildPiece11.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece11.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece12 = new BuildPiece("ravenwoodjapan", "RWJ_TOBIRADOORHOUSE6"); buildPiece12.Name.English("Tobira Door VI"); buildPiece12.Description.English("A traditional Japanese wooden door."); buildPiece12.RequiredItems.Add("Wood", 10, recover: true); buildPiece12.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece12.Category.Set("Ravenwood"); buildPiece12.Crafting.Set(CraftingTable.Workbench); buildPiece12.Tool.Add("Hammer"); buildPiece12.SpecialProperties.NoConfig = false; buildPiece12.SpecialProperties.AdminOnly = false; buildPiece12.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece12.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece13 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE07"); buildPiece13.Name.English("Japanese House VII"); buildPiece13.Description.English("A traditional Japanese-style house."); buildPiece13.RequiredItems.Add("Wood", 150, recover: true); buildPiece13.RequiredItems.Add("FineWood", 350, recover: true); buildPiece13.RequiredItems.Add("Coal", 40, recover: true); buildPiece13.RequiredItems.Add("RWc_Deer", 54, recover: false); buildPiece13.Category.Set("Ravenwood"); buildPiece13.Crafting.Set(CraftingTable.Workbench); buildPiece13.Tool.Add("Hammer"); buildPiece13.SpecialProperties.NoConfig = false; buildPiece13.SpecialProperties.AdminOnly = false; buildPiece13.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece13.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece14 = new BuildPiece("ravenwoodjapan", "RWJ_TOBIRADOORHOUSE7"); buildPiece14.Name.English("Tobira Door VII"); buildPiece14.Description.English("A traditional Japanese wooden door."); buildPiece14.RequiredItems.Add("Wood", 8, recover: true); buildPiece14.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece14.Category.Set("Ravenwood"); buildPiece14.Crafting.Set(CraftingTable.Workbench); buildPiece14.Tool.Add("Hammer"); buildPiece14.SpecialProperties.NoConfig = false; buildPiece14.SpecialProperties.AdminOnly = false; buildPiece14.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece14.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece15 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE08"); buildPiece15.Name.English("Japanese House VIII"); buildPiece15.Description.English("A traditional Japanese-style house."); buildPiece15.RequiredItems.Add("Wood", 440, recover: true); buildPiece15.RequiredItems.Add("FineWood", 140, recover: true); buildPiece15.RequiredItems.Add("Coal", 40, recover: true); buildPiece15.RequiredItems.Add("RWc_Deer", 62, recover: false); buildPiece15.Category.Set("Ravenwood"); buildPiece15.Crafting.Set(CraftingTable.Workbench); buildPiece15.Tool.Add("Hammer"); buildPiece15.SpecialProperties.NoConfig = false; buildPiece15.SpecialProperties.AdminOnly = false; buildPiece15.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece15.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece16 = new BuildPiece("ravenwoodjapan", "RWJ_ShojiDoor08"); buildPiece16.Name.English("Shoji Door VIII"); buildPiece16.Description.English("A traditional Japanese sliding shoji door."); buildPiece16.RequiredItems.Add("FineWood", 5, recover: true); buildPiece16.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece16.Category.Set("Ravenwood"); buildPiece16.Crafting.Set(CraftingTable.Workbench); buildPiece16.Tool.Add("Hammer"); buildPiece16.SpecialProperties.NoConfig = false; buildPiece16.SpecialProperties.AdminOnly = false; buildPiece16.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece16.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece17 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE09"); buildPiece17.Name.English("Japanese House IX"); buildPiece17.Description.English("A traditional Japanese-style house."); buildPiece17.RequiredItems.Add("Wood", 200, recover: true); buildPiece17.RequiredItems.Add("FineWood", 200, recover: true); buildPiece17.RequiredItems.Add("Stone", 100, recover: true); buildPiece17.RequiredItems.Add("RWc_Deer", 50, recover: true); buildPiece17.Category.Set("Ravenwood"); buildPiece17.Crafting.Set(CraftingTable.Workbench); buildPiece17.Tool.Add("Hammer"); buildPiece17.SpecialProperties.NoConfig = false; buildPiece17.SpecialProperties.AdminOnly = false; buildPiece17.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece17.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece18 = new BuildPiece("ravenwoodjapan", "RWJ_TOBIRADOORHOUSE9"); buildPiece18.Name.English("Tobira Door IX"); buildPiece18.Description.English("A traditional Japanese wooden door."); buildPiece18.RequiredItems.Add("Wood", 5, recover: true); buildPiece18.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece18.Category.Set("Ravenwood"); buildPiece18.Crafting.Set(CraftingTable.Workbench); buildPiece18.Tool.Add("Hammer"); buildPiece18.SpecialProperties.NoConfig = false; buildPiece18.SpecialProperties.AdminOnly = false; buildPiece18.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece18.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece19 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE10"); buildPiece19.Name.English("Japanese House X"); buildPiece19.Description.English("A traditional Japanese-style house."); buildPiece19.RequiredItems.Add("Wood", 440, recover: true); buildPiece19.RequiredItems.Add("FineWood", 440, recover: true); buildPiece19.RequiredItems.Add("RoundLog", 440, recover: true); buildPiece19.RequiredItems.Add("RWc_Bear", 25, recover: true); buildPiece19.Category.Set("Ravenwood"); buildPiece19.Crafting.Set(CraftingTable.Workbench); buildPiece19.Tool.Add("Hammer"); buildPiece19.SpecialProperties.NoConfig = false; buildPiece19.SpecialProperties.AdminOnly = false; buildPiece19.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece19.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece20 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE11"); buildPiece20.Name.English("Japanese House XI"); buildPiece20.Description.English("A traditional Japanese-style house."); buildPiece20.RequiredItems.Add("Wood", 500, recover: true); buildPiece20.RequiredItems.Add("FineWood", 500, recover: true); buildPiece20.RequiredItems.Add("RoundLog", 500, recover: true); buildPiece20.RequiredItems.Add("RWc_Bear", 30, recover: true); buildPiece20.Category.Set("Ravenwood"); buildPiece20.Crafting.Set(CraftingTable.Workbench); buildPiece20.Tool.Add("Hammer"); buildPiece20.SpecialProperties.NoConfig = false; buildPiece20.SpecialProperties.AdminOnly = false; buildPiece20.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece20.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece21 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE12"); buildPiece21.Name.English("Japanese House XII"); buildPiece21.Description.English("A traditional Japanese-style house."); buildPiece21.RequiredItems.Add("Wood", 440, recover: true); buildPiece21.RequiredItems.Add("FineWood", 400, recover: true); buildPiece21.RequiredItems.Add("RoundLog", 400, recover: true); buildPiece21.RequiredItems.Add("RWc_Bear", 25, recover: true); buildPiece21.Category.Set("Ravenwood"); buildPiece21.Crafting.Set(CraftingTable.Workbench); buildPiece21.Tool.Add("Hammer"); buildPiece21.SpecialProperties.NoConfig = false; buildPiece21.SpecialProperties.AdminOnly = false; buildPiece21.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece21.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece22 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE13"); buildPiece22.Name.English("Japanese House XIII"); buildPiece22.Description.English("A traditional Japanese-style house."); buildPiece22.RequiredItems.Add("Wood", 333, recover: true); buildPiece22.RequiredItems.Add("FineWood", 333, recover: true); buildPiece22.RequiredItems.Add("RoundLog", 333, recover: true); buildPiece22.RequiredItems.Add("RWc_Bear", 20, recover: true); buildPiece22.Category.Set("Ravenwood"); buildPiece22.Crafting.Set(CraftingTable.Workbench); buildPiece22.Tool.Add("Hammer"); buildPiece22.SpecialProperties.NoConfig = false; buildPiece22.SpecialProperties.AdminOnly = false; buildPiece22.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece22.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece23 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANFLOOR_025X025"); buildPiece23.Name.English("Japanese Floor 0.25x0.25"); buildPiece23.Description.English("A very small Japanese wooden floor tile."); buildPiece23.RequiredItems.Add("FineWood", 2, recover: true); buildPiece23.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece23.Category.Set("Ravenwood"); buildPiece23.Crafting.Set(CraftingTable.Workbench); buildPiece23.Tool.Add("Hammer"); buildPiece23.SpecialProperties.NoConfig = false; buildPiece23.SpecialProperties.AdminOnly = false; buildPiece23.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece23.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece24 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANFLOOR_1X1"); buildPiece24.Name.English("Japanese Floor 1x1"); buildPiece24.Description.English("A small Japanese wooden floor."); buildPiece24.RequiredItems.Add("FineWood", 4, recover: true); buildPiece24.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece24.Category.Set("Ravenwood"); buildPiece24.Crafting.Set(CraftingTable.Workbench); buildPiece24.Tool.Add("Hammer"); buildPiece24.SpecialProperties.NoConfig = false; buildPiece24.SpecialProperties.AdminOnly = false; buildPiece24.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece24.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece25 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANFLOOR_2X2"); buildPiece25.Name.English("Japanese Floor 2x2"); buildPiece25.Description.English("A medium Japanese wooden floor."); buildPiece25.RequiredItems.Add("FineWood", 8, recover: true); buildPiece25.RequiredItems.Add("RWc_Deer", 1, recover: false); buildPiece25.Category.Set("Ravenwood"); buildPiece25.Crafting.Set(CraftingTable.Workbench); buildPiece25.Tool.Add("Hammer"); buildPiece25.SpecialProperties.NoConfig = false; buildPiece25.SpecialProperties.AdminOnly = false; buildPiece25.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece25.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece26 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANFLOOR_4X4"); buildPiece26.Name.English("Japanese Floor 4x4"); buildPiece26.Description.English("A large Japanese wooden floor."); buildPiece26.RequiredItems.Add("FineWood", 16, recover: true); buildPiece26.RequiredItems.Add("RWc_Deer", 2, recover: false); buildPiece26.Category.Set("Ravenwood"); buildPiece26.Crafting.Set(CraftingTable.Workbench); buildPiece26.Tool.Add("Hammer"); buildPiece26.SpecialProperties.NoConfig = false; buildPiece26.SpecialProperties.AdminOnly = false; buildPiece26.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece26.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece27 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANFLOOR_8X8"); buildPiece27.Name.English("Japanese Floor 8x8"); buildPiece27.Description.English("An extra large Japanese wooden floor."); buildPiece27.RequiredItems.Add("FineWood", 32, recover: true); buildPiece27.RequiredItems.Add("RWc_Deer", 3, recover: false); buildPiece27.Category.Set("Ravenwood"); buildPiece27.Crafting.Set(CraftingTable.Workbench); buildPiece27.Tool.Add("Hammer"); buildPiece27.SpecialProperties.NoConfig = false; buildPiece27.SpecialProperties.AdminOnly = false; buildPiece27.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece27.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece28 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANFLOOR_16X16"); buildPiece28.Name.English("Japanese Floor 16x16"); buildPiece28.Description.English("A massive Japanese wooden floor."); buildPiece28.RequiredItems.Add("FineWood", 64, recover: true); buildPiece28.RequiredItems.Add("RWc_Bear", 1, recover: false); buildPiece28.Category.Set("Ravenwood"); buildPiece28.Crafting.Set(CraftingTable.Workbench); buildPiece28.Tool.Add("Hammer"); buildPiece28.SpecialProperties.NoConfig = false; buildPiece28.SpecialProperties.AdminOnly = false; buildPiece28.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece28.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece29 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE14"); buildPiece29.Name.English("Southern asian House"); buildPiece29.Description.English("A traditional Southern asian style house."); buildPiece29.RequiredItems.Add("Wood", 250, recover: true); buildPiece29.RequiredItems.Add("RoundLog", 250, recover: true); buildPiece29.RequiredItems.Add("Resin", 50, recover: true); buildPiece29.RequiredItems.Add("RWc_Deer", 55, recover: true); buildPiece29.Category.Set("Ravenwood"); buildPiece29.Crafting.Set(CraftingTable.Workbench); buildPiece29.Tool.Add("Hammer"); buildPiece29.SpecialProperties.NoConfig = false; buildPiece29.SpecialProperties.AdminOnly = false; buildPiece29.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece29.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece30 = new BuildPiece("ravenwoodjapan", "RWJ_Tamonyagura"); buildPiece30.Name.English("Tamon-yagura Tower"); buildPiece30.Description.English("A fortified Southern asian corridor tower."); buildPiece30.RequiredItems.Add("Wood", 300, recover: true); buildPiece30.RequiredItems.Add("RoundLog", 300, recover: true); buildPiece30.RequiredItems.Add("Resin", 60, recover: true); buildPiece30.RequiredItems.Add("RWc_Deer", 66, recover: true); buildPiece30.Category.Set("Ravenwood"); buildPiece30.Crafting.Set(CraftingTable.Workbench); buildPiece30.Tool.Add("Hammer"); buildPiece30.SpecialProperties.NoConfig = false; buildPiece30.SpecialProperties.AdminOnly = false; buildPiece30.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece30.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece31 = new BuildPiece("ravenwoodjapan", "RWJ_Koritsuyagura"); buildPiece31.Name.English("Koritsu Yagura Tower"); buildPiece31.Description.English("An isolated defensive southern asian tower."); buildPiece31.RequiredItems.Add("Wood", 120, recover: true); buildPiece31.RequiredItems.Add("RoundLog", 120, recover: true); buildPiece31.RequiredItems.Add("Resin", 20, recover: true); buildPiece31.RequiredItems.Add("RWc_Deer", 26, recover: true); buildPiece31.Category.Set("Ravenwood"); buildPiece31.Crafting.Set(CraftingTable.Workbench); buildPiece31.Tool.Add("Hammer"); buildPiece31.SpecialProperties.NoConfig = false; buildPiece31.SpecialProperties.AdminOnly = false; buildPiece31.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece31.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece32 = new BuildPiece("ravenwoodjapan", "RWJ_Koritsuyagura1"); buildPiece32.Name.English("Koritsu Yagura I"); buildPiece32.Description.English("An independent defensive tower, variant I."); buildPiece32.RequiredItems.Add("Wood", 140, recover: true); buildPiece32.RequiredItems.Add("RoundLog", 140, recover: true); buildPiece32.RequiredItems.Add("Resin", 30, recover: true); buildPiece32.RequiredItems.Add("RWc_Deer", 31, recover: true); buildPiece32.Category.Set("Ravenwood"); buildPiece32.Crafting.Set(CraftingTable.Workbench); buildPiece32.Tool.Add("Hammer"); buildPiece32.SpecialProperties.NoConfig = false; buildPiece32.SpecialProperties.AdminOnly = false; buildPiece32.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece32.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece33 = new BuildPiece("ravenwoodjapan", "RWJ_Tamonyagura1"); buildPiece33.Name.English("Tamon-yagura I"); buildPiece33.Description.English("A fortified southern asian corridor tower, variant I."); buildPiece33.RequiredItems.Add("Wood", 200, recover: true); buildPiece33.RequiredItems.Add("RoundLog", 200, recover: true); buildPiece33.RequiredItems.Add("Resin", 40, recover: true); buildPiece33.RequiredItems.Add("RWc_Deer", 44, recover: true); buildPiece33.Category.Set("Ravenwood"); buildPiece33.Crafting.Set(CraftingTable.Workbench); buildPiece33.Tool.Add("Hammer"); buildPiece33.SpecialProperties.NoConfig = false; buildPiece33.SpecialProperties.AdminOnly = false; buildPiece33.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece33.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece34 = new BuildPiece("ravenwoodjapan", "RWJ_Tamonyagura2"); buildPiece34.Name.English("Tamon-yagura II"); buildPiece34.Description.English("A fortified southern asian corridor tower, variant II."); buildPiece34.RequiredItems.Add("Wood", 340, recover: true); buildPiece34.RequiredItems.Add("RoundLog", 340, recover: true); buildPiece34.RequiredItems.Add("Resin", 70, recover: true); buildPiece34.RequiredItems.Add("RWc_Deer", 75, recover: true); buildPiece34.Category.Set("Ravenwood"); buildPiece34.Crafting.Set(CraftingTable.Workbench); buildPiece34.Tool.Add("Hammer"); buildPiece34.SpecialProperties.NoConfig = false; buildPiece34.SpecialProperties.AdminOnly = false; buildPiece34.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece34.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece35 = new BuildPiece("ravenwoodjapan", "RWJ_AZUMAYA"); buildPiece35.Name.English("Azumaya Pavilion"); buildPiece35.Description.English("A small open pavilion for gardens or courtyards."); buildPiece35.RequiredItems.Add("Wood", 50, recover: true); buildPiece35.RequiredItems.Add("RoundLog", 25, recover: true); buildPiece35.RequiredItems.Add("Resin", 25, recover: true); buildPiece35.RequiredItems.Add("RWc_Deer", 10, recover: true); buildPiece35.Category.Set("Ravenwood"); buildPiece35.Crafting.Set(CraftingTable.Workbench); buildPiece35.Tool.Add("Hammer"); buildPiece35.SpecialProperties.NoConfig = false; buildPiece35.SpecialProperties.AdminOnly = false; buildPiece35.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece35.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece36 = new BuildPiece("ravenwoodjapan", "RWJ_Nijunoto"); buildPiece36.Name.English("Nijū-no-tō Pagoda"); buildPiece36.Description.English("A two-storied Japanese pagoda structure."); buildPiece36.RequiredItems.Add("Wood", 220, recover: true); buildPiece36.RequiredItems.Add("RoundLog", 200, recover: true); buildPiece36.RequiredItems.Add("Resin", 40, recover: true); buildPiece36.RequiredItems.Add("RWc_Deer", 46, recover: true); buildPiece36.Category.Set("Ravenwood"); buildPiece36.Crafting.Set(CraftingTable.Workbench); buildPiece36.Tool.Add("Hammer"); buildPiece36.SpecialProperties.NoConfig = false; buildPiece36.SpecialProperties.AdminOnly = false; buildPiece36.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece36.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece37 = new BuildPiece("ravenwoodjapan", "RWJ_HAIDEN"); buildPiece37.Name.English("Haiden Hall"); buildPiece37.Description.English("A ceremonial worship hall found in Shinto shrines."); buildPiece37.RequiredItems.Add("Wood", 300, recover: true); buildPiece37.RequiredItems.Add("RoundLog", 200, recover: true); buildPiece37.RequiredItems.Add("Resin", 50, recover: true); buildPiece37.RequiredItems.Add("RWc_Deer", 55, recover: true); buildPiece37.Category.Set("Ravenwood"); buildPiece37.Crafting.Set(CraftingTable.Workbench); buildPiece37.Tool.Add("Hammer"); buildPiece37.SpecialProperties.NoConfig = false; buildPiece37.SpecialProperties.AdminOnly = false; buildPiece37.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece37.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece38 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANBAMBOOSHELTER"); buildPiece38.Name.English("Bamboo Shelter"); buildPiece38.Description.English("A small open bamboo shelter."); buildPiece38.RequiredItems.Add("Wood", 200, recover: true); buildPiece38.RequiredItems.Add("Feathers", 20, recover: true); buildPiece38.RequiredItems.Add("LeatherScraps", 20, recover: true); buildPiece38.RequiredItems.Add("RWc_Deer", 44, recover: true); buildPiece38.Category.Set("Ravenwood"); buildPiece38.Crafting.Set(CraftingTable.Workbench); buildPiece38.Tool.Add("Hammer"); buildPiece38.SpecialProperties.NoConfig = false; buildPiece38.SpecialProperties.AdminOnly = false; buildPiece38.Snapshot(); BuildPiece buildPiece39 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANBAMBOOSHELTER1"); buildPiece39.Name.English("Bamboo Shelter II"); buildPiece39.Description.English("A bamboo shelter variant."); buildPiece39.RequiredItems.Add("Wood", 50, recover: true); buildPiece39.RequiredItems.Add("Feathers", 5, recover: true); buildPiece39.RequiredItems.Add("LeatherScraps", 5, recover: true); buildPiece39.RequiredItems.Add("RWc_Deer", 6, recover: true); buildPiece39.Category.Set("Ravenwood"); buildPiece39.Crafting.Set(CraftingTable.Workbench); buildPiece39.Tool.Add("Hammer"); buildPiece39.SpecialProperties.NoConfig = false; buildPiece39.SpecialProperties.AdminOnly = false; buildPiece39.Snapshot(); BuildPiece buildPiece40 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANBAMBOOSHELTER2"); buildPiece40.Name.English("Bamboo Shelter III"); buildPiece40.Description.English("A bamboo shelter variant."); buildPiece40.RequiredItems.Add("Wood", 500, recover: true); buildPiece40.RequiredItems.Add("Feathers", 50, recover: true); buildPiece40.RequiredItems.Add("LeatherScraps", 50, recover: true); buildPiece40.RequiredItems.Add("RWc_Deer", 60, recover: true); buildPiece40.Category.Set("Ravenwood"); buildPiece40.Crafting.Set(CraftingTable.Workbench); buildPiece40.Tool.Add("Hammer"); buildPiece40.SpecialProperties.NoConfig = false; buildPiece40.SpecialProperties.AdminOnly = false; buildPiece40.Snapshot(); BuildPiece buildPiece41 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANBAMBOOSHELTER3"); buildPiece41.Name.English("Bamboo Shelter IV"); buildPiece41.Description.English("A bamboo shelter variant."); buildPiece41.RequiredItems.Add("Wood", 250, recover: true); buildPiece41.RequiredItems.Add("Feathers", 25, recover: true); buildPiece41.RequiredItems.Add("LeatherScraps", 25, recover: true); buildPiece41.RequiredItems.Add("RWc_Deer", 30, recover: true); buildPiece41.Category.Set("Ravenwood"); buildPiece41.Crafting.Set(CraftingTable.Workbench); buildPiece41.Tool.Add("Hammer"); buildPiece41.SpecialProperties.NoConfig = false; buildPiece41.SpecialProperties.AdminOnly = false; buildPiece41.Snapshot(); BuildPiece buildPiece42 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANBAMBOOSHELTER4"); buildPiece42.Name.English("Bamboo Shelter V"); buildPiece42.Description.English("A bamboo shelter variant."); buildPiece42.RequiredItems.Add("Wood", 400, recover: true); buildPiece42.RequiredItems.Add("Feathers", 40, recover: true); buildPiece42.RequiredItems.Add("LeatherScraps", 40, recover: true); buildPiece42.RequiredItems.Add("RWc_Deer", 48, recover: true); buildPiece42.Category.Set("Ravenwood"); buildPiece42.Crafting.Set(CraftingTable.Workbench); buildPiece42.Tool.Add("Hammer"); buildPiece42.SpecialProperties.NoConfig = false; buildPiece42.SpecialProperties.AdminOnly = false; buildPiece42.Snapshot(); BuildPiece buildPiece43 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANBAMBOOSHELTER5"); buildPiece43.Name.English("Bamboo Shelter VI"); buildPiece43.Description.English("A bamboo shelter variant."); buildPiece43.RequiredItems.Add("Wood", 450, recover: true); buildPiece43.RequiredItems.Add("Feathers", 45, recover: true); buildPiece43.RequiredItems.Add("LeatherScraps", 45, recover: true); buildPiece43.RequiredItems.Add("RWc_Deer", 54, recover: true); buildPiece43.Category.Set("Ravenwood"); buildPiece43.Crafting.Set(CraftingTable.Workbench); buildPiece43.Tool.Add("Hammer"); buildPiece43.SpecialProperties.NoConfig = false; buildPiece43.SpecialProperties.AdminOnly = false; buildPiece43.Snapshot(); BuildPiece buildPiece44 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANBAMBOOSHELTER6"); buildPiece44.Name.English("Bamboo Shelter VII"); buildPiece44.Description.English("A bamboo shelter variant."); buildPiece44.RequiredItems.Add("Wood", 350, recover: true); buildPiece44.RequiredItems.Add("Feathers", 35, recover: true); buildPiece44.RequiredItems.Add("LeatherScraps", 35, recover: true); buildPiece44.RequiredItems.Add("RWc_Deer", 42, recover: true); buildPiece44.Category.Set("Ravenwood"); buildPiece44.Crafting.Set(CraftingTable.Workbench); buildPiece44.Tool.Add("Hammer"); buildPiece44.SpecialProperties.NoConfig = false; buildPiece44.SpecialProperties.AdminOnly = false; buildPiece44.Snapshot(); BuildPiece buildPiece45 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANBAMBOOSHELTER7"); buildPiece45.Name.English("Bamboo Shelter VIII"); buildPiece45.Description.English("A bamboo shelter variant."); buildPiece45.RequiredItems.Add("Wood", 200, recover: true); buildPiece45.RequiredItems.Add("Feathers", 20, recover: true); buildPiece45.RequiredItems.Add("LeatherScraps", 20, recover: true); buildPiece45.RequiredItems.Add("RWc_Deer", 24, recover: true); buildPiece45.Category.Set("Ravenwood"); buildPiece45.Crafting.Set(CraftingTable.Workbench); buildPiece45.Tool.Add("Hammer"); buildPiece45.SpecialProperties.NoConfig = false; buildPiece45.SpecialProperties.AdminOnly = false; buildPiece45.Snapshot(); BuildPiece buildPiece46 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANBAMBOOSHELTER8"); buildPiece46.Name.English("Bamboo Shelter IX"); buildPiece46.Description.English("A bamboo shelter variant."); buildPiece46.RequiredItems.Add("Wood", 300, recover: true); buildPiece46.RequiredItems.Add("Feathers", 30, recover: true); buildPiece46.RequiredItems.Add("LeatherScraps", 30, recover: true); buildPiece46.RequiredItems.Add("RWc_Deer", 36, recover: true); buildPiece46.Category.Set("Ravenwood"); buildPiece46.Crafting.Set(CraftingTable.Workbench); buildPiece46.Tool.Add("Hammer"); buildPiece46.SpecialProperties.NoConfig = false; buildPiece46.SpecialProperties.AdminOnly = false; buildPiece46.Snapshot(); BuildPiece buildPiece47 = new BuildPiece("ravenwoodjapan", "RWJ_ASIANJAPANHOUSE"); buildPiece47.Name.English("Asian Japanese House"); buildPiece47.Description.English("A traditional Japanese-style house."); buildPiece47.RequiredItems.Add("Wood", 200, recover: true); buildPiece47.RequiredItems.Add("LeatherScraps", 20, recover: true); buildPiece47.RequiredItems.Add("DeerHide", 10, recover: true); buildPiece47.RequiredItems.Add("RWc_Deer", 23, recover: true); buildPiece47.Category.Set("Ravenwood"); buildPiece47.Crafting.Set(CraftingTable.Workbench); buildPiece47.Tool.Add("Hammer"); buildPiece47.SpecialProperties.NoConfig = false; buildPiece47.SpecialProperties.AdminOnly = false; buildPiece47.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece47.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece48 = new BuildPiece("ravenwoodjapan", "RWJ_ASIANJAPANHOUSE1"); buildPiece48.Name.English("Asian Japanese House II"); buildPiece48.Description.English("A Japanese-style house variant I."); buildPiece48.RequiredItems.Add("Wood", 250, recover: true); buildPiece48.RequiredItems.Add("LeatherScraps", 25, recover: true); buildPiece48.RequiredItems.Add("DeerHide", 12, recover: true); buildPiece48.RequiredItems.Add("RWc_Deer", 28, recover: true); buildPiece48.Category.Set("Ravenwood"); buildPiece48.Crafting.Set(CraftingTable.Workbench); buildPiece48.Tool.Add("Hammer"); buildPiece48.SpecialProperties.NoConfig = false; buildPiece48.SpecialProperties.AdminOnly = false; buildPiece48.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece48.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece49 = new BuildPiece("ravenwoodjapan", "RWJ_ASIANJAPANHOUSE2"); buildPiece49.Name.English("Asian Japanese House III"); buildPiece49.Description.English("A Japanese-style house variant II."); buildPiece49.RequiredItems.Add("Wood", 300, recover: true); buildPiece49.RequiredItems.Add("Resin", 30, recover: true); buildPiece49.RequiredItems.Add("DeerHide", 1, recover: true); buildPiece49.RequiredItems.Add("RWc_Deer", 33, recover: true); buildPiece49.Category.Set("Ravenwood"); buildPiece49.Crafting.Set(CraftingTable.Workbench); buildPiece49.Tool.Add("Hammer"); buildPiece49.SpecialProperties.NoConfig = false; buildPiece49.SpecialProperties.AdminOnly = false; buildPiece49.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece49.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece50 = new BuildPiece("ravenwoodjapan", "RWJ_ASIANJAPANHOUSE3"); buildPiece50.Name.English("Asian Japanese House IV"); buildPiece50.Description.English("A Japanese-style house variant III."); buildPiece50.RequiredItems.Add("Wood", 400, recover: true); buildPiece50.RequiredItems.Add("LeatherScraps", 40, recover: true); buildPiece50.RequiredItems.Add("DeerHide", 20, recover: true); buildPiece50.RequiredItems.Add("RWc_Deer", 46, recover: true); buildPiece50.Category.Set("Ravenwood"); buildPiece50.Crafting.Set(CraftingTable.Workbench); buildPiece50.Tool.Add("Hammer"); buildPiece50.SpecialProperties.NoConfig = false; buildPiece50.SpecialProperties.AdminOnly = false; buildPiece50.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece50.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece51 = new BuildPiece("ravenwoodjapan", "RWJ_ASIANJAPANHOUSE4"); buildPiece51.Name.English("Asian Japanese House V"); buildPiece51.Description.English("A Japanese-style house variant IV."); buildPiece51.RequiredItems.Add("Wood", 300, recover: true); buildPiece51.RequiredItems.Add("LeatherScraps", 30, recover: true); buildPiece51.RequiredItems.Add("DeerHide", 15, recover: true); buildPiece51.RequiredItems.Add("RWc_Deer", 35, recover: true); buildPiece51.Category.Set("Ravenwood"); buildPiece51.Crafting.Set(CraftingTable.Workbench); buildPiece51.Tool.Add("Hammer"); buildPiece51.SpecialProperties.NoConfig = false; buildPiece51.SpecialProperties.AdminOnly = false; buildPiece51.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece51.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece52 = new BuildPiece("ravenwoodjapan", "RWJ_ASIANJAPANHOUSE5"); buildPiece52.Name.English("Asian Japanese House VI"); buildPiece52.Description.English("A Japanese-style house variant V."); buildPiece52.RequiredItems.Add("Wood", 280, recover: true); buildPiece52.RequiredItems.Add("LeatherScraps", 28, recover: true); buildPiece52.RequiredItems.Add("DeerHide", 14, recover: true); buildPiece52.RequiredItems.Add("RWc_Deer", 42, recover: true); buildPiece52.Category.Set("Ravenwood"); buildPiece52.Crafting.Set(CraftingTable.Workbench); buildPiece52.Tool.Add("Hammer"); buildPiece52.SpecialProperties.NoConfig = false; buildPiece52.SpecialProperties.AdminOnly = false; buildPiece52.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece52.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece53 = new BuildPiece("ravenwoodjapan", "RWJ_ASIANJAPANHOUSE6"); buildPiece53.Name.English("Asian Japanese House VII"); buildPiece53.Description.English("A Japanese-style house variant VI."); buildPiece53.RequiredItems.Add("Wood", 300, recover: true); buildPiece53.RequiredItems.Add("LeatherScraps", 30, recover: true); buildPiece53.RequiredItems.Add("DeerHide", 15, recover: true); buildPiece53.RequiredItems.Add("RWc_Deer", 35, recover: true); buildPiece53.Category.Set("Ravenwood"); buildPiece53.Crafting.Set(CraftingTable.Workbench); buildPiece53.Tool.Add("Hammer"); buildPiece53.SpecialProperties.NoConfig = false; buildPiece53.SpecialProperties.AdminOnly = false; buildPiece53.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece53.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece54 = new BuildPiece("ravenwoodjapan", "RWJ_ASIANJAPANHOUSE7"); buildPiece54.Name.English("Asian Japanese House VIII"); buildPiece54.Description.English("A Japanese-style house variant VII."); buildPiece54.RequiredItems.Add("Wood", 300, recover: true); buildPiece54.RequiredItems.Add("Resin", 30, recover: true); buildPiece54.RequiredItems.Add("RWc_Deer", 33, recover: false); buildPiece54.Category.Set("Ravenwood"); buildPiece54.Crafting.Set(CraftingTable.Workbench); buildPiece54.Tool.Add("Hammer"); buildPiece54.SpecialProperties.NoConfig = false; buildPiece54.SpecialProperties.AdminOnly = false; buildPiece54.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece54.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece55 = new BuildPiece("ravenwoodjapan", "RWJ_ASIANJAPANHOUSE8"); buildPiece55.Name.English("Asian Japanese House IX"); buildPiece55.Description.English("A Japanese-style house variant VIII."); buildPiece55.RequiredItems.Add("Wood", 350, recover: true); buildPiece55.RequiredItems.Add("LeatherScraps", 35, recover: true); buildPiece55.RequiredItems.Add("DeerHide", 15, recover: true); buildPiece55.RequiredItems.Add("RWc_Deer", 40, recover: true); buildPiece55.Category.Set("Ravenwood"); buildPiece55.Crafting.Set(CraftingTable.Workbench); buildPiece55.Tool.Add("Hammer"); buildPiece55.SpecialProperties.NoConfig = false; buildPiece55.SpecialProperties.AdminOnly = false; buildPiece55.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece55.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece56 = new BuildPiece("ravenwoodjapan", "RWJ_Kabukimon"); buildPiece56.Name.English("Kabukimon Gate"); buildPiece56.Description.English("A traditional Kabukimon-style entrance gate for Japanese fortifications."); buildPiece56.RequiredItems.Add("Wood", 40, recover: true); buildPiece56.RequiredItems.Add("Flint", 10, recover: true); buildPiece56.RequiredItems.Add("RWc_Deer", 5, recover: false); buildPiece56.Category.Set("Ravenwood"); buildPiece56.Crafting.Set(CraftingTable.Workbench); buildPiece56.Tool.Add("Hammer"); buildPiece56.SpecialProperties.NoConfig = false; buildPiece56.SpecialProperties.AdminOnly = false; buildPiece56.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece56.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece57 = new BuildPiece("ravenwoodjapan", "RWJ_Kankodai"); buildPiece57.Name.English("Kankodai Platform"); buildPiece57.Description.English("An elevated viewing platform used in mountain and castle complexes."); buildPiece57.RequiredItems.Add("Wood", 40, recover: true); buildPiece57.RequiredItems.Add("RoundLog", 10, recover: true); buildPiece57.RequiredItems.Add("Stone", 50, recover: true); buildPiece57.RequiredItems.Add("RWc_Deer", 10, recover: true); buildPiece57.Category.Set("Ravenwood"); buildPiece57.Crafting.Set(CraftingTable.Workbench); buildPiece57.Tool.Add("Hammer"); buildPiece57.SpecialProperties.NoConfig = false; buildPiece57.SpecialProperties.AdminOnly = false; buildPiece57.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece57.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece58 = new BuildPiece("ravenwoodjapan", "RWJ_Kankodai1"); buildPiece58.Name.English("Kankodai Platform I"); buildPiece58.Description.English("A variant of the Kankodai viewing platform."); buildPiece58.RequiredItems.Add("Wood", 40, recover: true); buildPiece58.RequiredItems.Add("RoundLog", 20, recover: true); buildPiece58.RequiredItems.Add("Stone", 40, recover: true); buildPiece58.RequiredItems.Add("RWc_Deer", 10, recover: true); buildPiece58.Category.Set("Ravenwood"); buildPiece58.Crafting.Set(CraftingTable.Workbench); buildPiece58.Tool.Add("Hammer"); buildPiece58.SpecialProperties.NoConfig = false; buildPiece58.SpecialProperties.AdminOnly = false; buildPiece58.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece58.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece59 = new BuildPiece("ravenwoodjapan", "RWJ_Kankodai2"); buildPiece59.Name.English("Kankodai Platform II"); buildPiece59.Description.English("Another variant of the Kankodai viewing platform."); buildPiece59.RequiredItems.Add("Wood", 50, recover: true); buildPiece59.RequiredItems.Add("RoundLog", 25, recover: true); buildPiece59.RequiredItems.Add("Stone", 50, recover: true); buildPiece59.RequiredItems.Add("RWc_Deer", 12, recover: true); buildPiece59.Category.Set("Ravenwood"); buildPiece59.Crafting.Set(CraftingTable.Workbench); buildPiece59.Tool.Add("Hammer"); buildPiece59.SpecialProperties.NoConfig = false; buildPiece59.SpecialProperties.AdminOnly = false; buildPiece59.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece59.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece60 = new BuildPiece("ravenwoodjapan", "RWJ_Nijumon"); buildPiece60.Name.English("Nijūmon Gate"); buildPiece60.Description.English("A grand two-storied gate often found at temples and castles."); buildPiece60.RequiredItems.Add("RoundLog", 20, recover: true); buildPiece60.RequiredItems.Add("Stone", 20, recover: true); buildPiece60.RequiredItems.Add("Flint", 20, recover: true); buildPiece60.RequiredItems.Add("RWc_Deer", 6, recover: false); buildPiece60.Category.Set("Ravenwood"); buildPiece60.Crafting.Set(CraftingTable.Workbench); buildPiece60.Tool.Add("Hammer"); buildPiece60.SpecialProperties.NoConfig = false; buildPiece60.SpecialProperties.AdminOnly = false; buildPiece60.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece60.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece61 = new BuildPiece("ravenwoodjapan", "RWJ_Yamashiro"); buildPiece61.Name.English("Yamashiro Keep"); buildPiece61.Description.English("A mountain castle keep built to command the high ground."); buildPiece61.RequiredItems.Add("Wood", 50, recover: true); buildPiece61.RequiredItems.Add("RoundLog", 50, recover: true); buildPiece61.RequiredItems.Add("Flint", 50, recover: true); buildPiece61.RequiredItems.Add("RWc_Deer", 15, recover: false); buildPiece61.Category.Set("Ravenwood"); buildPiece61.Crafting.Set(CraftingTable.Workbench); buildPiece61.Tool.Add("Hammer"); buildPiece61.SpecialProperties.NoConfig = false; buildPiece61.SpecialProperties.AdminOnly = false; buildPiece61.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece61.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece62 = new BuildPiece("ravenwoodjapan", "RWJ_Yamashiro1"); buildPiece62.Name.English("Yamashiro Keep I"); buildPiece62.Description.English("A variant of the Yamashiro mountain keep."); buildPiece62.RequiredItems.Add("Wood", 25, recover: true); buildPiece62.RequiredItems.Add("RoundLog", 50, recover: true); buildPiece62.RequiredItems.Add("Stone", 75, recover: true); buildPiece62.RequiredItems.Add("RWc_Deer", 15, recover: true); buildPiece62.Category.Set("Ravenwood"); buildPiece62.Crafting.Set(CraftingTable.Workbench); buildPiece62.Tool.Add("Hammer"); buildPiece62.SpecialProperties.NoConfig = false; buildPiece62.SpecialProperties.AdminOnly = false; buildPiece62.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece62.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece63 = new BuildPiece("ravenwoodjapan", "RWJ_Sankomon"); buildPiece63.Name.English("Sankōmon Gate"); buildPiece63.Description.English("A triple-structured ceremonial gate, marking an important threshold."); buildPiece63.RequiredItems.Add("Wood", 40, recover: true); buildPiece63.RequiredItems.Add("RoundLog", 40, recover: true); buildPiece63.RequiredItems.Add("Stone", 20, recover: true); buildPiece63.RequiredItems.Add("RWc_Deer", 10, recover: true); buildPiece63.Category.Set("Ravenwood"); buildPiece63.Crafting.Set(CraftingTable.Workbench); buildPiece63.Tool.Add("Hammer"); buildPiece63.SpecialProperties.NoConfig = false; buildPiece63.SpecialProperties.AdminOnly = false; buildPiece63.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece63.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece64 = new BuildPiece("ravenwoodjapan", "RWJ_Enmon"); buildPiece64.Name.English("Enmon Gate"); buildPiece64.Description.English("A distinctive rounded-gable gate, often used as a refined entrance."); buildPiece64.RequiredItems.Add("Wood", 15, recover: true); buildPiece64.RequiredItems.Add("RoundLog", 15, recover: true); buildPiece64.RequiredItems.Add("Stone", 15, recover: true); buildPiece64.RequiredItems.Add("RWc_Deer", 5, recover: true); buildPiece64.Category.Set("Ravenwood"); buildPiece64.Crafting.Set(CraftingTable.Workbench); buildPiece64.Tool.Add("Hammer"); buildPiece64.SpecialProperties.NoConfig = false; buildPiece64.SpecialProperties.AdminOnly = false; buildPiece64.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece64.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece65 = new BuildPiece("ravenwoodjapan", "RWJ_TORIGATE"); buildPiece65.Name.English("Torii Gate"); buildPiece65.Description.English("A sacred Shinto torii gate marking the entrance to holy ground."); buildPiece65.RequiredItems.Add("FineWood", 40, recover: true); buildPiece65.RequiredItems.Add("RoundLog", 50, recover: true); buildPiece65.RequiredItems.Add("Stone", 10, recover: true); buildPiece65.RequiredItems.Add("RWc_Deer", 10, recover: true); buildPiece65.Category.Set("Ravenwood"); buildPiece65.Crafting.Set(CraftingTable.Workbench); buildPiece65.Tool.Add("Hammer"); buildPiece65.SpecialProperties.NoConfig = false; buildPiece65.SpecialProperties.AdminOnly = false; buildPiece65.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece65.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece66 = new BuildPiece("ravenwoodjapan", "RWJ_O_dera"); buildPiece66.Name.English("O-dera Temple Hall"); buildPiece66.Description.English("A main temple hall used for worship and ceremonies."); buildPiece66.RequiredItems.Add("FineWood", 75, recover: true); buildPiece66.RequiredItems.Add("RoundLog", 75, recover: true); buildPiece66.RequiredItems.Add("Stone", 20, recover: true); buildPiece66.RequiredItems.Add("RWc_Deer", 17, recover: true); buildPiece66.Category.Set("Ravenwood"); buildPiece66.Crafting.Set(CraftingTable.Workbench); buildPiece66.Tool.Add("Hammer"); buildPiece66.SpecialProperties.NoConfig = false; buildPiece66.SpecialProperties.AdminOnly = false; buildPiece66.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece66.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece67 = new BuildPiece("ravenwoodjapan", "RWJ_O_dera1"); buildPiece67.Name.English("O-dera Temple Hall I"); buildPiece67.Description.English("A variant of the main temple hall."); buildPiece67.RequiredItems.Add("FineWood", 75, recover: true); buildPiece67.RequiredItems.Add("RoundLog", 75, recover: true); buildPiece67.RequiredItems.Add("Stone", 50, recover: true); buildPiece67.RequiredItems.Add("RWc_Deer", 20, recover: true); buildPiece67.Category.Set("Ravenwood"); buildPiece67.Crafting.Set(CraftingTable.Workbench); buildPiece67.Tool.Add("Hammer"); buildPiece67.SpecialProperties.NoConfig = false; buildPiece67.SpecialProperties.AdminOnly = false; buildPiece67.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece67.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece68 = new BuildPiece("ravenwoodjapan", "RWJ_O_dera2"); buildPiece68.Name.English("O-dera Temple Hall II"); buildPiece68.Description.English("A variant of the main temple hall."); buildPiece68.RequiredItems.Add("FineWood", 75, recover: true); buildPiece68.RequiredItems.Add("RoundLog", 75, recover: true); buildPiece68.RequiredItems.Add("Stone", 100, recover: true); buildPiece68.RequiredItems.Add("RWc_Deer", 25, recover: true); buildPiece68.Category.Set("Ravenwood"); buildPiece68.Crafting.Set(CraftingTable.Workbench); buildPiece68.Tool.Add("Hammer"); buildPiece68.SpecialProperties.NoConfig = false; buildPiece68.SpecialProperties.AdminOnly = false; buildPiece68.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece68.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece69 = new BuildPiece("ravenwoodjapan", "RWJ_O_dera3"); buildPiece69.Name.English("O-dera Temple Hall III"); buildPiece69.Description.English("A variant of the main temple hall."); buildPiece69.RequiredItems.Add("FineWood", 120, recover: true); buildPiece69.RequiredItems.Add("RoundLog", 120, recover: true); buildPiece69.RequiredItems.Add("Stone", 80, recover: true); buildPiece69.RequiredItems.Add("RWc_Deer", 32, recover: true); buildPiece69.Category.Set("Ravenwood"); buildPiece69.Crafting.Set(CraftingTable.Workbench); buildPiece69.Tool.Add("Hammer"); buildPiece69.SpecialProperties.NoConfig = false; buildPiece69.SpecialProperties.AdminOnly = false; buildPiece69.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece69.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece70 = new BuildPiece("ravenwoodjapan", "RWJ_O_dera4"); buildPiece70.Name.English("O-dera Temple Hall IV"); buildPiece70.Description.English("A variant of the main temple hall."); buildPiece70.RequiredItems.Add("FineWood", 70, recover: true); buildPiece70.RequiredItems.Add("RoundLog", 150, recover: true); buildPiece70.RequiredItems.Add("Stone", 20, recover: true); buildPiece70.RequiredItems.Add("RWc_Deer", 24, recover: false); buildPiece70.Category.Set("Ravenwood"); buildPiece70.Crafting.Set(CraftingTable.Workbench); buildPiece70.Tool.Add("Hammer"); buildPiece70.SpecialProperties.NoConfig = false; buildPiece70.SpecialProperties.AdminOnly = false; buildPiece70.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece70.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece71 = new BuildPiece("ravenwoodjapan", "RWJ_O_dera5"); buildPiece71.Name.English("O-dera Temple Hall V"); buildPiece71.Description.English("A variant of the main temple hall."); buildPiece71.RequiredItems.Add("FineWood", 70, recover: true); buildPiece71.RequiredItems.Add("RoundLog", 100, recover: true); buildPiece71.RequiredItems.Add("Stone", 50, recover: true); buildPiece71.RequiredItems.Add("RWc_Deer", 22, recover: false); buildPiece71.Category.Set("Ravenwood"); buildPiece71.Crafting.Set(CraftingTable.Workbench); buildPiece71.Tool.Add("Hammer"); buildPiece71.SpecialProperties.NoConfig = false; buildPiece71.SpecialProperties.AdminOnly = false; buildPiece71.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece71.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece72 = new BuildPiece("ravenwoodjapan", "RWJ_O_dera6"); buildPiece72.Name.English("O-dera Temple Hall VI"); buildPiece72.Description.English("A variant of the main temple hall."); buildPiece72.RequiredItems.Add("FineWood", 300, recover: true); buildPiece72.RequiredItems.Add("RoundLog", 300, recover: true); buildPiece72.RequiredItems.Add("Stone", 200, recover: true); buildPiece72.RequiredItems.Add("RWc_Deer", 80, recover: false); buildPiece72.Category.Set("Ravenwood"); buildPiece72.Crafting.Set(CraftingTable.Workbench); buildPiece72.Tool.Add("Hammer"); buildPiece72.SpecialProperties.NoConfig = false; buildPiece72.SpecialProperties.AdminOnly = false; buildPiece72.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece72.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece73 = new BuildPiece("ravenwoodjapan", "RWJ_O_dera7"); buildPiece73.Name.English("O-dera Temple Hall VII"); buildPiece73.Description.English("A variant of the main temple hall."); buildPiece73.RequiredItems.Add("FineWood", 375, recover: true); buildPiece73.RequiredItems.Add("RoundLog", 375, recover: true); buildPiece73.RequiredItems.Add("Stone", 250, recover: true); buildPiece73.RequiredItems.Add("RWc_Deer", 100, recover: false); buildPiece73.Category.Set("Ravenwood"); buildPiece73.Crafting.Set(CraftingTable.Workbench); buildPiece73.Tool.Add("Hammer"); buildPiece73.SpecialProperties.NoConfig = false; buildPiece73.SpecialProperties.AdminOnly = false; buildPiece73.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece73.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece74 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE1"); buildPiece74.Name.English("Japanese House 1"); buildPiece74.Description.English("A traditional Japanese-style house."); buildPiece74.RequiredItems.Add("Wood", 300, recover: true); buildPiece74.RequiredItems.Add("FineWood", 350, recover: true); buildPiece74.RequiredItems.Add("Stone", 100, recover: true); buildPiece74.RequiredItems.Add("RWc_Deer", 75, recover: true); buildPiece74.Category.Set("Ravenwood"); buildPiece74.Crafting.Set(CraftingTable.Workbench); buildPiece74.Tool.Add("Hammer"); buildPiece74.SpecialProperties.NoConfig = false; buildPiece74.SpecialProperties.AdminOnly = false; buildPiece74.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece74.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece75 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE2"); buildPiece75.Name.English("Japanese House 2"); buildPiece75.Description.English("A traditional Japanese-style house."); buildPiece75.RequiredItems.Add("Wood", 200, recover: true); buildPiece75.RequiredItems.Add("FineWood", 240, recover: true); buildPiece75.RequiredItems.Add("Stone", 60, recover: true); buildPiece75.RequiredItems.Add("RWc_Deer", 50, recover: true); buildPiece75.Category.Set("Ravenwood"); buildPiece75.Crafting.Set(CraftingTable.Workbench); buildPiece75.Tool.Add("Hammer"); buildPiece75.SpecialProperties.NoConfig = false; buildPiece75.SpecialProperties.AdminOnly = false; buildPiece75.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece75.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece76 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE3"); buildPiece76.Name.English("Japanese House 3"); buildPiece76.Description.English("A traditional Japanese-style house."); buildPiece76.RequiredItems.Add("Wood", 300, recover: true); buildPiece76.RequiredItems.Add("FineWood", 100, recover: true); buildPiece76.RequiredItems.Add("RWc_Deer", 40, recover: true); buildPiece76.Category.Set("Ravenwood"); buildPiece76.Crafting.Set(CraftingTable.Workbench); buildPiece76.Tool.Add("Hammer"); buildPiece76.SpecialProperties.NoConfig = false; buildPiece76.SpecialProperties.AdminOnly = false; buildPiece76.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece76.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece77 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE4"); buildPiece77.Name.English("Japanese House 4"); buildPiece77.Description.English("A traditional Japanese-style house."); buildPiece77.RequiredItems.Add("Wood", 330, recover: true); buildPiece77.RequiredItems.Add("FineWood", 120, recover: true); buildPiece77.RequiredItems.Add("RWc_Deer", 45, recover: true); buildPiece77.Category.Set("Ravenwood"); buildPiece77.Crafting.Set(CraftingTable.Workbench); buildPiece77.Tool.Add("Hammer"); buildPiece77.SpecialProperties.NoConfig = false; buildPiece77.SpecialProperties.AdminOnly = false; buildPiece77.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece77.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece78 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE5"); buildPiece78.Name.English("Japanese House 5"); buildPiece78.Description.English("A traditional Japanese-style house."); buildPiece78.RequiredItems.Add("Wood", 350, recover: true); buildPiece78.RequiredItems.Add("FineWood", 300, recover: true); buildPiece78.RequiredItems.Add("RWc_Deer", 65, recover: true); buildPiece78.Category.Set("Ravenwood"); buildPiece78.Crafting.Set(CraftingTable.Workbench); buildPiece78.Tool.Add("Hammer"); buildPiece78.SpecialProperties.NoConfig = false; buildPiece78.SpecialProperties.AdminOnly = false; buildPiece78.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece78.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece79 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE6"); buildPiece79.Name.English("Japanese House 6"); buildPiece79.Description.English("A traditional Japanese-style house."); buildPiece79.RequiredItems.Add("Wood", 250, recover: true); buildPiece79.RequiredItems.Add("FineWood", 250, recover: true); buildPiece79.RequiredItems.Add("RWc_Deer", 50, recover: true); buildPiece79.Category.Set("Ravenwood"); buildPiece79.Crafting.Set(CraftingTable.Workbench); buildPiece79.Tool.Add("Hammer"); buildPiece79.SpecialProperties.NoConfig = false; buildPiece79.SpecialProperties.AdminOnly = false; buildPiece79.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece79.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece80 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE7"); buildPiece80.Name.English("Japanese House 7"); buildPiece80.Description.English("A traditional Japanese-style house."); buildPiece80.RequiredItems.Add("Wood", 300, recover: true); buildPiece80.RequiredItems.Add("FineWood", 200, recover: true); buildPiece80.RequiredItems.Add("RWc_Deer", 50, recover: true); buildPiece80.Category.Set("Ravenwood"); buildPiece80.Crafting.Set(CraftingTable.Workbench); buildPiece80.Tool.Add("Hammer"); buildPiece80.SpecialProperties.NoConfig = false; buildPiece80.SpecialProperties.AdminOnly = false; buildPiece80.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece80.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece81 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE8"); buildPiece81.Name.English("Japanese House 8"); buildPiece81.Description.English("A traditional Japanese-style house."); buildPiece81.RequiredItems.Add("Wood", 250, recover: true); buildPiece81.RequiredItems.Add("FineWood", 250, recover: true); buildPiece81.RequiredItems.Add("RWc_Deer", 50, recover: true); buildPiece81.Category.Set("Ravenwood"); buildPiece81.Crafting.Set(CraftingTable.Workbench); buildPiece81.Tool.Add("Hammer"); buildPiece81.SpecialProperties.NoConfig = false; buildPiece81.SpecialProperties.AdminOnly = false; buildPiece81.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece81.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece82 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE9"); buildPiece82.Name.English("Japanese House 9"); buildPiece82.Description.English("A traditional Japanese-style house."); buildPiece82.RequiredItems.Add("Wood", 200, recover: true); buildPiece82.RequiredItems.Add("FineWood", 150, recover: true); buildPiece82.RequiredItems.Add("RWc_Deer", 35, recover: true); buildPiece82.Category.Set("Ravenwood"); buildPiece82.Crafting.Set(CraftingTable.Workbench); buildPiece82.Tool.Add("Hammer"); buildPiece82.SpecialProperties.NoConfig = false; buildPiece82.SpecialProperties.AdminOnly = false; buildPiece82.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece82.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece83 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSEA10"); buildPiece83.Name.English("Japanese House 10"); buildPiece83.Description.English("A traditional Japanese-style house."); buildPiece83.RequiredItems.Add("Wood", 200, recover: true); buildPiece83.RequiredItems.Add("FineWood", 200, recover: true); buildPiece83.RequiredItems.Add("Stone", 50, recover: true); buildPiece83.RequiredItems.Add("RWc_Deer", 45, recover: true); buildPiece83.Category.Set("Ravenwood"); buildPiece83.Crafting.Set(CraftingTable.Workbench); buildPiece83.Tool.Add("Hammer"); buildPiece83.SpecialProperties.NoConfig = false; buildPiece83.SpecialProperties.AdminOnly = false; buildPiece83.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece83.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece84 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSEA11"); buildPiece84.Name.English("Japanese House 11"); buildPiece84.Description.English("A traditional Japanese-style house."); buildPiece84.RequiredItems.Add("Wood", 150, recover: true); buildPiece84.RequiredItems.Add("FineWood", 200, recover: true); buildPiece84.RequiredItems.Add("RWc_Deer", 35, recover: true); buildPiece84.Category.Set("Ravenwood"); buildPiece84.Crafting.Set(CraftingTable.Workbench); buildPiece84.Tool.Add("Hammer"); buildPiece84.SpecialProperties.NoConfig = false; buildPiece84.SpecialProperties.AdminOnly = false; buildPiece84.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece84.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece85 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSEA12"); buildPiece85.Name.English("Japanese House 12"); buildPiece85.Description.English("A traditional Japanese-style house."); buildPiece85.RequiredItems.Add("Wood", 250, recover: true); buildPiece85.RequiredItems.Add("FineWood", 250, recover: true); buildPiece85.RequiredItems.Add("Stone", 100, recover: true); buildPiece85.RequiredItems.Add("RWc_Deer", 60, recover: true); buildPiece85.Category.Set("Ravenwood"); buildPiece85.Crafting.Set(CraftingTable.Workbench); buildPiece85.Tool.Add("Hammer"); buildPiece85.SpecialProperties.NoConfig = false; buildPiece85.SpecialProperties.AdminOnly = false; buildPiece85.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece85.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece86 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSEA13"); buildPiece86.Name.English("Japanese House 13"); buildPiece86.Description.English("A traditional Japanese-style house."); buildPiece86.RequiredItems.Add("Wood", 325, recover: true); buildPiece86.RequiredItems.Add("FineWood", 325, recover: true); buildPiece86.RequiredItems.Add("RWc_Deer", 65, recover: true); buildPiece86.Category.Set("Ravenwood"); buildPiece86.Crafting.Set(CraftingTable.Workbench); buildPiece86.Tool.Add("Hammer"); buildPiece86.SpecialProperties.NoConfig = false; buildPiece86.SpecialProperties.AdminOnly = false; buildPiece86.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece86.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece87 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSEA14"); buildPiece87.Name.English("Japanese House 14"); buildPiece87.Description.English("A traditional Japanese-style house."); buildPiece87.RequiredItems.Add("Wood", 325, recover: true); buildPiece87.RequiredItems.Add("FineWood", 325, recover: true); buildPiece87.RequiredItems.Add("RWc_Deer", 65, recover: true); buildPiece87.Category.Set("Ravenwood"); buildPiece87.Crafting.Set(CraftingTable.Workbench); buildPiece87.Tool.Add("Hammer"); buildPiece87.SpecialProperties.NoConfig = false; buildPiece87.SpecialProperties.AdminOnly = false; buildPiece87.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece87.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece88 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE15"); buildPiece88.Name.English("Japanese House 15"); buildPiece88.Description.English("A traditional Japanese-style house."); buildPiece88.RequiredItems.Add("Wood", 300, recover: true); buildPiece88.RequiredItems.Add("FineWood", 100, recover: true); buildPiece88.RequiredItems.Add("RWc_Deer", 40, recover: true); buildPiece88.Category.Set("Ravenwood"); buildPiece88.Crafting.Set(CraftingTable.Workbench); buildPiece88.Tool.Add("Hammer"); buildPiece88.SpecialProperties.NoConfig = false; buildPiece88.SpecialProperties.AdminOnly = false; buildPiece88.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece88.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece89 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE16"); buildPiece89.Name.English("Japanese House 16 "); buildPiece89.Description.English("A traditional Japanese-style house."); buildPiece89.RequiredItems.Add("Wood", 350, recover: true); buildPiece89.RequiredItems.Add("FineWood", 350, recover: true); buildPiece89.RequiredItems.Add("RWc_Deer", 70, recover: true); buildPiece89.Category.Set("Ravenwood"); buildPiece89.Crafting.Set(CraftingTable.Workbench); buildPiece89.Tool.Add("Hammer"); buildPiece89.SpecialProperties.NoConfig = false; buildPiece89.SpecialProperties.AdminOnly = false; buildPiece89.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece89.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece90 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE17"); buildPiece90.Name.English("Japanese House 17"); buildPiece90.Description.English("A traditional Japanese-style house."); buildPiece90.RequiredItems.Add("Wood", 375, recover: true); buildPiece90.RequiredItems.Add("FineWood", 375, recover: true); buildPiece90.RequiredItems.Add("RWc_Deer", 75, recover: true); buildPiece90.Category.Set("Ravenwood"); buildPiece90.Crafting.Set(CraftingTable.Workbench); buildPiece90.Tool.Add("Hammer"); buildPiece90.SpecialProperties.NoConfig = false; buildPiece90.SpecialProperties.AdminOnly = false; buildPiece90.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece90.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece91 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE18"); buildPiece91.Name.English("Japanese House 18"); buildPiece91.Description.English("A traditional Japanese-style house."); buildPiece91.RequiredItems.Add("Wood", 300, recover: true); buildPiece91.RequiredItems.Add("FineWood", 300, recover: true); buildPiece91.RequiredItems.Add("RWc_Deer", 60, recover: true); buildPiece91.Category.Set("Ravenwood"); buildPiece91.Crafting.Set(CraftingTable.Workbench); buildPiece91.Tool.Add("Hammer"); buildPiece91.SpecialProperties.NoConfig = false; buildPiece91.SpecialProperties.AdminOnly = false; buildPiece91.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece91.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece92 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE19"); buildPiece92.Name.English("Japanese House 19"); buildPiece92.Description.English("A traditional Japanese-style house."); buildPiece92.RequiredItems.Add("Wood", 350, recover: true); buildPiece92.RequiredItems.Add("FineWood", 400, recover: true); buildPiece92.RequiredItems.Add("RWc_Deer", 75, recover: true); buildPiece92.Category.Set("Ravenwood"); buildPiece92.Crafting.Set(CraftingTable.Workbench); buildPiece92.Tool.Add("Hammer"); buildPiece92.SpecialProperties.NoConfig = false; buildPiece92.SpecialProperties.AdminOnly = false; buildPiece92.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece92.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece93 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE20"); buildPiece93.Name.English("Japanese House 20"); buildPiece93.Description.English("A traditional Japanese-style house."); buildPiece93.RequiredItems.Add("Wood", 300, recover: true); buildPiece93.RequiredItems.Add("FineWood", 150, recover: true); buildPiece93.RequiredItems.Add("Stone", 200, recover: true); buildPiece93.RequiredItems.Add("RWc_Deer", 65, recover: true); buildPiece93.Category.Set("Ravenwood"); buildPiece93.Crafting.Set(CraftingTable.Workbench); buildPiece93.Tool.Add("Hammer"); buildPiece93.SpecialProperties.NoConfig = false; buildPiece93.SpecialProperties.AdminOnly = false; buildPiece93.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece93.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece94 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE21"); buildPiece94.Name.English("Japanese House 21"); buildPiece94.Description.English("A traditional Japanese-style house."); buildPiece94.RequiredItems.Add("Wood", 350, recover: true); buildPiece94.RequiredItems.Add("FineWood", 350, recover: true); buildPiece94.RequiredItems.Add("RWc_Deer", 70, recover: true); buildPiece94.Category.Set("Ravenwood"); buildPiece94.Crafting.Set(CraftingTable.Workbench); buildPiece94.Tool.Add("Hammer"); buildPiece94.SpecialProperties.NoConfig = false; buildPiece94.SpecialProperties.AdminOnly = false; buildPiece94.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece94.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece95 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE22"); buildPiece95.Name.English("Japanese House 22"); buildPiece95.Description.English("A traditional Japanese-style house."); buildPiece95.RequiredItems.Add("Wood", 375, recover: true); buildPiece95.RequiredItems.Add("FineWood", 375, recover: true); buildPiece95.RequiredItems.Add("RWc_Deer", 75, recover: true); buildPiece95.Category.Set("Ravenwood"); buildPiece95.Crafting.Set(CraftingTable.Workbench); buildPiece95.Tool.Add("Hammer"); buildPiece95.SpecialProperties.NoConfig = false; buildPiece95.SpecialProperties.AdminOnly = false; buildPiece95.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece95.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece96 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE23"); buildPiece96.Name.English("Japanese House 23"); buildPiece96.Description.English("A traditional Japanese-style house."); buildPiece96.RequiredItems.Add("Wood", 350, recover: true); buildPiece96.RequiredItems.Add("FineWood", 350, recover: true); buildPiece96.RequiredItems.Add("Stone", 200, recover: true); buildPiece96.RequiredItems.Add("RWc_Deer", 90, recover: true); buildPiece96.Category.Set("Ravenwood"); buildPiece96.Crafting.Set(CraftingTable.Workbench); buildPiece96.Tool.Add("Hammer"); buildPiece96.SpecialProperties.NoConfig = false; buildPiece96.SpecialProperties.AdminOnly = false; buildPiece96.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece96.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece97 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE24"); buildPiece97.Name.English("Japanese House 24"); buildPiece97.Description.English("A traditional Japanese-style house."); buildPiece97.RequiredItems.Add("Wood", 150, recover: true); buildPiece97.RequiredItems.Add("FineWood", 200, recover: true); buildPiece97.RequiredItems.Add("Stone", 200, recover: true); buildPiece97.RequiredItems.Add("RWc_Deer", 55, recover: true); buildPiece97.Category.Set("Ravenwood"); buildPiece97.Crafting.Set(CraftingTable.Workbench); buildPiece97.Tool.Add("Hammer"); buildPiece97.SpecialProperties.NoConfig = false; buildPiece97.SpecialProperties.AdminOnly = false; buildPiece97.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece97.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece98 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE25"); buildPiece98.Name.English("Japanese House 25"); buildPiece98.Description.English("A traditional Japanese-style house."); buildPiece98.RequiredItems.Add("Wood", 200, recover: true); buildPiece98.RequiredItems.Add("FineWood", 200, recover: true); buildPiece98.RequiredItems.Add("Stone", 20, recover: true); buildPiece98.RequiredItems.Add("RWc_Deer", 42, recover: true); buildPiece98.Category.Set("Ravenwood"); buildPiece98.Crafting.Set(CraftingTable.Workbench); buildPiece98.Tool.Add("Hammer"); buildPiece98.SpecialProperties.NoConfig = false; buildPiece98.SpecialProperties.AdminOnly = false; buildPiece98.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece98.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece99 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE26"); buildPiece99.Name.English("Japanese House 26"); buildPiece99.Description.English("A traditional Japanese-style house."); buildPiece99.RequiredItems.Add("Wood", 300, recover: true); buildPiece99.RequiredItems.Add("FineWood", 300, recover: true); buildPiece99.RequiredItems.Add("RWc_Deer", 60, recover: true); buildPiece99.Category.Set("Ravenwood"); buildPiece99.Crafting.Set(CraftingTable.Workbench); buildPiece99.Tool.Add("Hammer"); buildPiece99.SpecialProperties.NoConfig = false; buildPiece99.SpecialProperties.AdminOnly = false; buildPiece99.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece99.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece100 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE27"); buildPiece100.Name.English("Japanese House 27"); buildPiece100.Description.English("A traditional Japanese-style house."); buildPiece100.RequiredItems.Add("Wood", 350, recover: true); buildPiece100.RequiredItems.Add("FineWood", 350, recover: true); buildPiece100.RequiredItems.Add("RWc_Deer", 70, recover: true); buildPiece100.Category.Set("Ravenwood"); buildPiece100.Crafting.Set(CraftingTable.Workbench); buildPiece100.Tool.Add("Hammer"); buildPiece100.SpecialProperties.NoConfig = false; buildPiece100.SpecialProperties.AdminOnly = false; buildPiece100.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece100.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece101 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE28"); buildPiece101.Name.English("Japanese House 28"); buildPiece101.Description.English("A traditional Japanese-style house."); buildPiece101.RequiredItems.Add("Wood", 300, recover: true); buildPiece101.RequiredItems.Add("FineWood", 300, recover: true); buildPiece101.RequiredItems.Add("RWc_Deer", 60, recover: true); buildPiece101.Category.Set("Ravenwood"); buildPiece101.Crafting.Set(CraftingTable.Workbench); buildPiece101.Tool.Add("Hammer"); buildPiece101.SpecialProperties.NoConfig = false; buildPiece101.SpecialProperties.AdminOnly = false; buildPiece101.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece101.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece102 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE29"); buildPiece102.Name.English("Japanese House 29"); buildPiece102.Description.English("A traditional Japanese-style house."); buildPiece102.RequiredItems.Add("Wood", 325, recover: true); buildPiece102.RequiredItems.Add("FineWood", 325, recover: true); buildPiece102.RequiredItems.Add("RWc_Deer", 65, recover: true); buildPiece102.Category.Set("Ravenwood"); buildPiece102.Crafting.Set(CraftingTable.Workbench); buildPiece102.Tool.Add("Hammer"); buildPiece102.SpecialProperties.NoConfig = false; buildPiece102.SpecialProperties.AdminOnly = false; buildPiece102.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece102.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece103 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE30"); buildPiece103.Name.English("Japanese House 30"); buildPiece103.Description.English("A traditional Japanese-style house."); buildPiece103.RequiredItems.Add("Wood", 375, recover: true); buildPiece103.RequiredItems.Add("FineWood", 375, recover: true); buildPiece103.RequiredItems.Add("RWc_Deer", 75, recover: true); buildPiece103.Category.Set("Ravenwood"); buildPiece103.Crafting.Set(CraftingTable.Workbench); buildPiece103.Tool.Add("Hammer"); buildPiece103.SpecialProperties.NoConfig = false; buildPiece103.SpecialProperties.AdminOnly = false; buildPiece103.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece103.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece104 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE31"); buildPiece104.Name.English("Japanese House 31"); buildPiece104.Description.English("A traditional Japanese-style house."); buildPiece104.RequiredItems.Add("Wood", 400, recover: true); buildPiece104.RequiredItems.Add("FineWood", 400, recover: true); buildPiece104.RequiredItems.Add("RWc_Deer", 80, recover: true); buildPiece104.Category.Set("Ravenwood"); buildPiece104.Crafting.Set(CraftingTable.Workbench); buildPiece104.Tool.Add("Hammer"); buildPiece104.SpecialProperties.NoConfig = false; buildPiece104.SpecialProperties.AdminOnly = false; buildPiece104.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece104.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece105 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE32"); buildPiece105.Name.English("Japanese House 32"); buildPiece105.Description.English("A traditional Japanese-style house."); buildPiece105.RequiredItems.Add("Wood", 500, recover: true); buildPiece105.RequiredItems.Add("FineWood", 500, recover: true); buildPiece105.RequiredItems.Add("RWc_Deer", 100, recover: true); buildPiece105.Category.Set("Ravenwood"); buildPiece105.Crafting.Set(CraftingTable.Workbench); buildPiece105.Tool.Add("Hammer"); buildPiece105.SpecialProperties.NoConfig = false; buildPiece105.SpecialProperties.AdminOnly = false; buildPiece105.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece105.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece106 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE33"); buildPiece106.Name.English("Japanese House 33"); buildPiece106.Description.English("A traditional Japanese-style house."); buildPiece106.RequiredItems.Add("Wood", 250, recover: true); buildPiece106.RequiredItems.Add("FineWood", 200, recover: true); buildPiece106.RequiredItems.Add("RWc_Deer", 45, recover: true); buildPiece106.Category.Set("Ravenwood"); buildPiece106.Crafting.Set(CraftingTable.Workbench); buildPiece106.Tool.Add("Hammer"); buildPiece106.SpecialProperties.NoConfig = false; buildPiece106.SpecialProperties.AdminOnly = false; buildPiece106.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece106.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece107 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE34"); buildPiece107.Name.English("Japanese House 34"); buildPiece107.Description.English("A traditional Japanese-style house."); buildPiece107.RequiredItems.Add("Wood", 400, recover: true); buildPiece107.RequiredItems.Add("FineWood", 400, recover: true); buildPiece107.RequiredItems.Add("RWc_Deer", 80, recover: true); buildPiece107.Category.Set("Ravenwood"); buildPiece107.Crafting.Set(CraftingTable.Workbench); buildPiece107.Tool.Add("Hammer"); buildPiece107.SpecialProperties.NoConfig = false; buildPiece107.SpecialProperties.AdminOnly = false; buildPiece107.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece107.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece108 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE35"); buildPiece108.Name.English("Japanese House 35"); buildPiece108.Description.English("A traditional Japanese-style house."); buildPiece108.RequiredItems.Add("Wood", 225, recover: true); buildPiece108.RequiredItems.Add("FineWood", 225, recover: true); buildPiece108.RequiredItems.Add("Stone", 50, recover: true); buildPiece108.RequiredItems.Add("RWc_Deer", 50, recover: true); buildPiece108.Category.Set("Ravenwood"); buildPiece108.Crafting.Set(CraftingTable.Workbench); buildPiece108.Tool.Add("Hammer"); buildPiece108.SpecialProperties.NoConfig = false; buildPiece108.SpecialProperties.AdminOnly = false; buildPiece108.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece108.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece109 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE36"); buildPiece109.Name.English("Japanese House 36"); buildPiece109.Description.English("A traditional Japanese-style house."); buildPiece109.RequiredItems.Add("Wood", 375, recover: true); buildPiece109.RequiredItems.Add("FineWood", 375, recover: true); buildPiece109.RequiredItems.Add("RWc_Deer", 75, recover: true); buildPiece109.Category.Set("Ravenwood"); buildPiece109.Crafting.Set(CraftingTable.Workbench); buildPiece109.Tool.Add("Hammer"); buildPiece109.SpecialProperties.NoConfig = false; buildPiece109.SpecialProperties.AdminOnly = false; buildPiece109.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece109.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece110 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE37"); buildPiece110.Name.English("Japanese House 37"); buildPiece110.Description.English("A traditional Japanese-style house."); buildPiece110.RequiredItems.Add("Wood", 275, recover: true); buildPiece110.RequiredItems.Add("FineWood", 275, recover: true); buildPiece110.RequiredItems.Add("RWc_Deer", 55, recover: true); buildPiece110.Category.Set("Ravenwood"); buildPiece110.Crafting.Set(CraftingTable.Workbench); buildPiece110.Tool.Add("Hammer"); buildPiece110.SpecialProperties.NoConfig = false; buildPiece110.SpecialProperties.AdminOnly = false; buildPiece110.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece110.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece111 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE38"); buildPiece111.Name.English("Japanese House 38"); buildPiece111.Description.English("A traditional Japanese-style house."); buildPiece111.RequiredItems.Add("Wood", 300, recover: true); buildPiece111.RequiredItems.Add("FineWood", 300, recover: true); buildPiece111.RequiredItems.Add("RWc_Deer", 60, recover: true); buildPiece111.Category.Set("Ravenwood"); buildPiece111.Crafting.Set(CraftingTable.Workbench); buildPiece111.Tool.Add("Hammer"); buildPiece111.SpecialProperties.NoConfig = false; buildPiece111.SpecialProperties.AdminOnly = false; buildPiece111.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece111.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece buildPiece112 = new BuildPiece("ravenwoodjapan", "RWJ_JAPANHOUSE39"); buildPiece112.Name.English("Japanese House 39"); buildPiece112.Description.English("A traditional Japanese-style house."); buildPiece112.RequiredItems.Add("Wood", 350, recover: true); buildPiece112.RequiredItems.Add("FineWood", 350, recover: true); buildPiece112.RequiredItems.Add("RWc_Deer", 70, recover: true); buildPiece112.Category.Set("Ravenwood"); buildPiece112.Crafting.Set(CraftingTable.Workbench); buildPiece112.Tool.Add("Hammer"); buildPiece112.SpecialProperties.NoConfig = false; buildPiece112.SpecialProperties.AdminOnly = false; buildPiece112.Snapshot(); MaterialReplacer.RegisterGameObjectForShaderSwap(buildPiece112.Prefab, MaterialReplacer.ShaderType.PieceShader); BuildPiece build