Логист: кровавая сфера и кровавый камень (модификаторы мода) - в группе «Некромантия»; имя предмета в логе переноса (#18)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
054897eb78
commit
a745f4eb4a
@@ -68,8 +68,9 @@ namespace NecromancerTome
|
|||||||
"foodRawMeat", "foodRawMeatBundle", "foodEgg", "foodHoney", "foodRottingFlesh"
|
"foodRawMeat", "foodRawMeatBundle", "foodEgg", "foodHoney", "foodRottingFlesh"
|
||||||
};
|
};
|
||||||
|
|
||||||
/// <summary>Предметы и блоки самого мода - по его Config/items.xml и blocks.xml (у многих нет «necro» в имени: книги
|
/// <summary>Предметы и блоки самого мода - по его Config/items.xml, blocks.xml и item_modifiers.xml (у многих нет «necro»
|
||||||
/// призыва, браслет, камни портала, прах зомби, кожа жертвы). Читается один раз.</summary>
|
/// в имени: книги призыва, браслет, камни портала, прах зомби, кожа жертвы; 23.10 - кровавая сфера и кровавый камень,
|
||||||
|
/// они модификаторы, и без item_modifiers.xml уходили в «Модификаторы»). Читается один раз.</summary>
|
||||||
static HashSet<string> _modNames;
|
static HashSet<string> _modNames;
|
||||||
|
|
||||||
static HashSet<string> ModNames()
|
static HashSet<string> ModNames()
|
||||||
@@ -79,13 +80,13 @@ namespace NecromancerTome
|
|||||||
return _modNames;
|
return _modNames;
|
||||||
}
|
}
|
||||||
_modNames = new HashSet<string>();
|
_modNames = new HashSet<string>();
|
||||||
foreach (string f in new[] { "items.xml", "blocks.xml" })
|
foreach (string f in new[] { "items.xml", "blocks.xml", "item_modifiers.xml" })
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
XmlDocument doc = new XmlDocument();
|
XmlDocument doc = new XmlDocument();
|
||||||
doc.Load(Path.Combine(ModEntry.Instance.Path, "Config", f));
|
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);
|
_modNames.Add(n.Attributes["name"].Value);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -206,6 +206,7 @@ namespace NecromancerTome
|
|||||||
return _urn.ThreadTo;
|
return _urn.ThreadTo;
|
||||||
}
|
}
|
||||||
ItemStack moving = s.Clone();
|
ItemStack moving = s.Clone();
|
||||||
|
string what = s.itemValue.ItemClass?.GetItemName(); // до Take: забранная целиком стопка становится пустой
|
||||||
Place(moving, new[] { dst });
|
Place(moving, new[] { dst });
|
||||||
int moved = s.count - moving.count;
|
int moved = s.count - moving.count;
|
||||||
if (moved <= 0)
|
if (moved <= 0)
|
||||||
@@ -214,7 +215,7 @@ namespace NecromancerTome
|
|||||||
}
|
}
|
||||||
Take(src, k, moved);
|
Take(src, k, moved);
|
||||||
dst.SetModified();
|
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;
|
return _urn.ThreadTo;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user