Space Engineers

Space Engineers

View Stats:
Раздельная работа сборщиков
Всем привет. Возникла такая проблема: установил 3 сборщика: 1-й должен создавать всё, что я ему закидываю из планировщика, 2-й разбирать всё лишнее, 3-й создавать только боеприпасы и ничего кроме (зациклил в нём боеприпасы). Все сборщики соединены конвейерами от общего Очистительного завода. Собственно проблема в том, что я закидываю в 1-й сборщик задачу из планировщика (из инвентаря или сочетанием клавиш), а задача уходит в 3-й сборщик. Совместный режим отключён. Существует ли в игре возможность задавать отдельным сборщикам разные задачи, но при этом не разделять их конвейерами?
< >
Showing 1-1 of 1 comments
Yarb 26 May @ 9:38am 
Сталкивался с подобным. У сборщиков есть такой параметр, как "номер в сетке" (NumberInGrid). Он назначается по мере строительства однотипных блоков по возрастанию. Задачи из планировщика передаются в тот сборщик, который находится в режиме сборки и имеет наименьший номер в сетке. Так что первое, что приходит в голову - сборщики были созданы (именно созданы, а не достроены) не в том порядке.
Посмотреть номер в сетке можно с помощью вот такого скрипта для программируемого блока:
List<IMyAssembler> myAssemblers; IMyTextPanel myLCD; public Program() { myAssemblers = new List<IMyAssembler>(); myLCD = GridTerminalSystem.GetBlockWithName ("LCD") as IMyTextPanel; //указание экрана для вывода } public void Main(string argument, UpdateType updateSource) { GridTerminalSystem.GetBlocksOfType(myAssemblers); myLCD.WriteText("", false); foreach (var block in myAssemblers) myLCD.WriteText($"{block.CustomName}; режим: \"{block.Mode}\", номер: {block.NumberInGrid}\n", true); }

Понадобится еще экран для вывода результатов отработки скрипта. Его надо будет назвать LCD, либо внести его имя в скрипт вместо LCD в соответствующей строке.
< >
Showing 1-1 of 1 comments
Per page: 1530 50