diff --git a/HarmonySrc/NecroTome.cs b/HarmonySrc/NecroTome.cs index c7973f0..3c8fbf2 100644 --- a/HarmonySrc/NecroTome.cs +++ b/HarmonySrc/NecroTome.cs @@ -68,7 +68,7 @@ namespace NecromancerTome Unlocked = _p => true }, // Главы питомцев (указание 09.10): лист-чертёж модели (три вида из Blender, подписи на эсперанто) сверху, на первой - // странице - управление, дальше - описание. Крыса - учебная модель, глава открыта сразу. + // странице - управление, дальше - описание. Крыса - учебная модель, глава открыта сразу; прочие - с рецептом гримуара. new Chapter { TitleKey = "necroTomeRatTitle", @@ -83,7 +83,7 @@ namespace NecromancerTome PageKeys = new[] { "necroTomeDogP1", "necroTomeDogP2", "necroTomeDogP3" }, Image = "@modfolder(NecromancerTome):Textures/necroTomeDog.png", ImageTop = true, - Unlocked = _p => true + Unlocked = _p => RecipeUnlocked(_p, "bookSummonZombieDog") }, new Chapter { @@ -91,7 +91,7 @@ namespace NecromancerTome PageKeys = new[] { "necroTomeVultureP1", "necroTomeVultureP2", "necroTomeVultureP3" }, Image = "@modfolder(NecromancerTome):Textures/necroTomeVulture.png", ImageTop = true, - Unlocked = _p => true + Unlocked = _p => RecipeUnlocked(_p, "bookSummonZombieGriffin") }, new Chapter { @@ -99,7 +99,7 @@ namespace NecromancerTome PageKeys = new[] { "necroTomeWolfP1", "necroTomeWolfP2", "necroTomeWolfP3" }, Image = "@modfolder(NecromancerTome):Textures/necroTomeWolf.png", ImageTop = true, - Unlocked = _p => true + Unlocked = _p => RecipeUnlocked(_p, "bookSummonZombieWolf") }, new Chapter { @@ -107,10 +107,18 @@ namespace NecromancerTome PageKeys = new[] { "necroTomeBearP1", "necroTomeBearP2", "necroTomeBearP3" }, Image = "@modfolder(NecromancerTome):Textures/necroTomeBear.png", ImageTop = true, - Unlocked = _p => true + Unlocked = _p => RecipeUnlocked(_p, "bookSummonZombieBear") }, }; + /// Глава питомца видна, когда игроку открыт рецепт его гримуара (указание 09.10, после проверки глав). + /// Крыса - учебная модель, её глава открыта сразу. + static bool RecipeUnlocked(EntityPlayerLocal _p, string _item) + { + Recipe r = CraftingManager.GetRecipe(_item); + return r != null && r.IsUnlocked(_p); + } + public static void Open(EntityPlayerLocal _player) { LocalPlayerUI ui = LocalPlayerUI.GetUIForPlayer(_player); diff --git a/NecromancerHarmony.dll b/NecromancerHarmony.dll index be9881b..c32bc4b 100644 Binary files a/NecromancerHarmony.dll and b/NecromancerHarmony.dll differ diff --git a/NecromancerHarmony.pdb b/NecromancerHarmony.pdb index 042f905..0250fb5 100644 Binary files a/NecromancerHarmony.pdb and b/NecromancerHarmony.pdb differ