diff --git a/HarmonySrc/NecroDevCommands.cs b/HarmonySrc/NecroDevCommands.cs index 5593dc1..574d6a1 100644 --- a/HarmonySrc/NecroDevCommands.cs +++ b/HarmonySrc/NecroDevCommands.cs @@ -14,6 +14,7 @@ namespace NecromancerTome /// necroaim - позиция игрока и блок под прицелом /// necroplace блок x y z [поворот 0-3] - поставить блок (как игрок: OnBlockAdded, TE) /// necrohold предмет [число] - положить в текущую ячейку пояса и взять в руку + /// necroslot [N] - какая ячейка пояса в руке и что в ячейках; N - взять в руку ячейку N (23.10: проверка Archer's Eye без мыши) /// necrobox x y z list|clear|add предмет число - содержимое хранилища (ящик, сумка урны) /// necrourn x y z info|skull 0|1|from|to|out bx by bz|clear|sample предмет число|group все|нет - урна /// necroclick 0|1 - отпущенная ЛКМ/ПКМ ножом для нитей по блоку под прицелом @@ -44,6 +45,21 @@ namespace NecromancerTome case "necroaim": Aim(w, pl); break; case "necroplace": PlaceBlock(w, _params); break; case "necrohold": Hold(pl, _params); break; + case "necroslot": + { + if (_params.Count > 0) + { + pl.inventory.SetHoldingItemIdx(int.Parse(_params[0])); + } + string belt = ""; + for (int i = 0; i < pl.inventory.SlotCount; i++) + { + ItemStack st = pl.inventory.GetItem(i); + belt += " " + i + ":" + (st == null || st.IsEmpty() ? "-" : st.itemValue.ItemClass.GetItemName()); + } + Out("necroslot: в руке " + pl.inventory.holdingItemIdx + ";" + belt); + break; + } case "necrobox": Box(w, _params); break; case "necrourn": Urn(w, _params); break; case "necrodamage": @@ -512,6 +528,15 @@ namespace NecromancerTome public override void Execute(List _params, CommandSenderInfo _senderInfo) => NecroDev.Run("necrohold", _params); } + [Preserve] + public class ConsoleCmdNecroSlot : ConsoleCmdAbstract + { + public override string[] getCommands() => new[] { "necroslot" }; + public override string getDescription() => "NecromancerTome (разработка): ячейка пояса в руке: [N]"; + public override bool AllowedInMainMenu => false; + public override void Execute(List _params, CommandSenderInfo _senderInfo) => NecroDev.Run("necroslot", _params); + } + [Preserve] public class ConsoleCmdNecroBox : ConsoleCmdAbstract { diff --git a/NecromancerHarmony.dll b/NecromancerHarmony.dll index 74a128e..703996f 100644 Binary files a/NecromancerHarmony.dll and b/NecromancerHarmony.dll differ diff --git a/NecromancerHarmony.pdb b/NecromancerHarmony.pdb index 1aa1422..69c154b 100644 Binary files a/NecromancerHarmony.pdb and b/NecromancerHarmony.pdb differ