diff --git a/HarmonySrc/CinerariumGroups.cs b/HarmonySrc/CinerariumGroups.cs index bc83fdf..67656a1 100644 --- a/HarmonySrc/CinerariumGroups.cs +++ b/HarmonySrc/CinerariumGroups.cs @@ -68,8 +68,9 @@ namespace NecromancerTome "foodRawMeat", "foodRawMeatBundle", "foodEgg", "foodHoney", "foodRottingFlesh" }; - /// Предметы и блоки самого мода - по его Config/items.xml и blocks.xml (у многих нет «necro» в имени: книги - /// призыва, браслет, камни портала, прах зомби, кожа жертвы). Читается один раз. + /// Предметы и блоки самого мода - по его Config/items.xml, blocks.xml и item_modifiers.xml (у многих нет «necro» + /// в имени: книги призыва, браслет, камни портала, прах зомби, кожа жертвы; 23.10 - кровавая сфера и кровавый камень, + /// они модификаторы, и без item_modifiers.xml уходили в «Модификаторы»). Читается один раз. static HashSet _modNames; static HashSet ModNames() @@ -79,13 +80,13 @@ namespace NecromancerTome return _modNames; } _modNames = new HashSet(); - foreach (string f in new[] { "items.xml", "blocks.xml" }) + foreach (string f in new[] { "items.xml", "blocks.xml", "item_modifiers.xml" }) { try { XmlDocument doc = new XmlDocument(); doc.Load(Path.Combine(ModEntry.Instance.Path, "Config", f)); - foreach (XmlNode n in doc.SelectNodes("//item[@name] | //block[@name]")) + foreach (XmlNode n in doc.SelectNodes("//item[@name] | //block[@name] | //item_modifier[@name]")) { _modNames.Add(n.Attributes["name"].Value); } diff --git a/HarmonySrc/CinerariumWork.cs b/HarmonySrc/CinerariumWork.cs index a7a6191..41a86e1 100644 --- a/HarmonySrc/CinerariumWork.cs +++ b/HarmonySrc/CinerariumWork.cs @@ -206,6 +206,7 @@ namespace NecromancerTome return _urn.ThreadTo; } ItemStack moving = s.Clone(); + string what = s.itemValue.ItemClass?.GetItemName(); // до Take: забранная целиком стопка становится пустой Place(moving, new[] { dst }); int moved = s.count - moving.count; if (moved <= 0) @@ -214,7 +215,7 @@ namespace NecromancerTome } Take(src, k, moved); dst.SetModified(); - Debug.Log("[NecromancerTome] Cinerarium: дух перенёс " + moved + " " + s.itemValue.ItemClass?.GetItemName() + " из " + f + " в " + _urn.ThreadTo); + Debug.Log("[NecromancerTome] Cinerarium: дух перенёс " + moved + " " + what + " из " + f + " в " + _urn.ThreadTo); return _urn.ThreadTo; } } diff --git a/NecromancerHarmony.dll b/NecromancerHarmony.dll index 0c4726d..19f4032 100644 Binary files a/NecromancerHarmony.dll and b/NecromancerHarmony.dll differ diff --git a/NecromancerHarmony.pdb b/NecromancerHarmony.pdb index 29a0a5a..6b8a1d3 100644 Binary files a/NecromancerHarmony.pdb and b/NecromancerHarmony.pdb differ