|
•Отв: Предлагаю распределённую разработку. - artlav, 24.05.2010 6:53:02 |
|
|
var res_speed, // Это скорость, на которой можно построить, если на заданной не вышло. Вроде. res_cost:integer // Это стоимость изготовления в ресурсах произведённого рассчёта.
##):abyte; // Возвращается массив траты ресурсов по ходам. Зачем? Затем, что рассчёт производится единожды, при запуске, и далее идём по программе. Если на новом ходу не хватает ресурсов - перерассчёт с понижением скорости или остановка.
В принципе, хранить остаток тоже логично - концу хода надо знать, сколько забирать железа, а при переключении скорости - сколько ещё достраивать.
Стоящая мысль.
В общем нужна функция или функции, возвращающие по полной стоимости, остаточной стоимости, доступным материалам, расходу завода/инжинера и данной скорости, сколько снять материалов на этом ходу, остаточная стоимость (в материалах скорости 1Х) после снятия, сколько ходов осталось, с какой скоростью снятие происходит, какая стоимость в материалах будет.
Информация - остаток хранится, скорость хранится. Информация при выборе/запуске - рассчёт, стоимость - что вернуло, скорость - что вернуло. Запуск завода - рассчёт, потребление - что снимать в этот ход, с коррекцей или остановкой. Изменение скорости - скорость - данная, рассчёт, потребление - что снимать в этот ход, остаток стоимости - возвращенный хранится, скорость - возвращённая хранится. Конец хода - снять потребление или остановка, рассчёт, потребление - что снимать в этот ход, остаток - что вернуло, скорость - что вернуло.
Вроде, так. Что не учёл?
#Нужно ли сохранить тип abyte (его название)? Вполне. А чем он мешает?
#write_seq(BUILD_SPPEDx1 ,9,15,3); Э... А смысл? Скорость - число. Если алгоритмически удобно 4 назвать 3, или т. п., то да.
#А для пехоты еденичка? Или пехота отдельно рассчитывается? Да, пехота отдельно по принципу 1-1. Стоит включить в рассчёт, ибо костыль. |
|
| |