Исправления режима одного робота
This commit is contained in:
parent
d9eb8a2368
commit
ab7d324b3f
@ -10,6 +10,5 @@
|
||||
|
||||
## Известные баги
|
||||
|
||||
* в режиме двух роботов пока один из роботов находится в зонах цинкования, второму команды не выдаются
|
||||
* не работают регистры добавления/удаления барабанов с панели
|
||||
|
||||
|
22
utils.c
22
utils.c
@ -155,18 +155,22 @@ short _get_dest_zone(struct barrel *bar) {
|
||||
// последняя промывка, нужно разрешение на выгрузку
|
||||
if (button_unload) {
|
||||
if (hla_night_mode) {
|
||||
short nz = get_first_night_zone();
|
||||
if (one_robot_mode) {
|
||||
return nz;
|
||||
} else {
|
||||
if (nz < hla_exchange_zone) {
|
||||
return hla_exchange_zone;
|
||||
} else {
|
||||
return nz;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (one_robot_mode) {
|
||||
return ZONE_LOAD_1;
|
||||
} else {
|
||||
return hla_exchange_zone;
|
||||
}
|
||||
} else {
|
||||
short nz = get_first_night_zone();
|
||||
if (nz < hla_exchange_zone) {
|
||||
return hla_exchange_zone;
|
||||
} else {
|
||||
return nz;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -753,13 +757,13 @@ char is_accessible_zone(short zone) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return (hla_disabled_zones & (DISABLED_ETCH_1 << etching_zone)) != 0;
|
||||
return (hla_disabled_zones & (DISABLED_ETCH_1 << etching_zone)) == 0;
|
||||
} else if (zone == ROBOT_ZONE_GAL) {
|
||||
if (galvanizing_zone < 0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return (hla_disabled_zones & (DISABLED_GAL_1 << galvanizing_zone)) != 0;
|
||||
return (hla_disabled_zones & (DISABLED_GAL_1 << galvanizing_zone)) == 0;
|
||||
} else {
|
||||
// неверный аргумент
|
||||
return 0;
|
||||
|
Reference in New Issue
Block a user