Так а если сделать ремонт не всего юнита в целом, а каждой повреждённой системы в отдельности? Задать стоимость каждой системы и статвеса - что пытаться отремонтировать в первую очередь.
То есть, например, сломан двигатель и фара и спаренный пулемёт. Если человекочасов не хватает на всё, то сначала ремонтируется двигатель, если на него хватает, потом пулемёт и т.д. Если нехватает на двигатель, то начинается с пулемёта...
Таким образом, предусматривать возможность остановки ремонта не нужно. Точнее, если такая возможность и потребуется, её можно будет привязать к концу ремонта каждой системы: танк в ремонте - ремонтируют двигатель, запросили прекращение ремона - ремонт закончится только когда починят двигатель.