Волк: щелчок по сумке кладёт в ящик/мешок; Tab в волке открывает его сумку

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
AlexCube
2026-10-11 00:04:17 +03:00
co-authored by Claude Opus 5.5
parent 3aeeae04ae
commit d845fa1108
4 changed files with 115 additions and 2 deletions
+21
View File
@@ -462,6 +462,27 @@ namespace NecromancerTome
{
return;
}
// Ячейка сумки волка (окно рюкзака при обыске) - в ящик или мешок (указание 10.10).
XUiC_Backpack bp = __instance.GetParentByType<XUiC_Backpack>();
if (bp != null)
{
CursorControllerAbs c = __instance.xui.playerUI.CursorController;
if (WolfBagBackpack.On && (c.GetMouseButtonDown(UICamera.MouseButton.LeftButton) || c.GetMouseButtonDown(UICamera.MouseButton.RightButton)))
{
int bi = bp.itemControllers != null ? System.Array.IndexOf(bp.itemControllers, __instance) : -1;
XUiC_LootWindow lw = __instance.xui.GetChildByType<XUiC_LootWindow>();
TEFeatureStorage dst = lw != null && lw.ViewComponent.IsVisible ? lw.te : null;
if (bi >= 0 && dst != null)
{
WolfBag.PutTo(dst, bi);
}
else if (bi >= 0 && _viewBag != null)
{
WolfBag.PutTo(_viewBag, bi);
}
}
return;
}
// Ячейка контейнера-блока (XUiC_LootContainer) или мешка (XUiC_BagContainer), не рюкзака.
XUiC_ItemStackGrid grid = (XUiC_ItemStackGrid)__instance.GetParentByType<XUiC_LootContainer>() ?? __instance.GetParentByType<XUiC_BagContainer>();
if (grid == null)