Allow non-train vehicles to test counter values in conditional orders
This commit is contained in:
@@ -1769,7 +1769,6 @@ CommandCost CmdModifyOrder(TileIndex tile, DoCommandFlag flags, uint32 p1, uint3
|
|||||||
if (data == OCV_FREE_PLATFORMS && v->type != VEH_TRAIN) return CMD_ERROR;
|
if (data == OCV_FREE_PLATFORMS && v->type != VEH_TRAIN) return CMD_ERROR;
|
||||||
if (data == OCV_SLOT_OCCUPANCY && v->type != VEH_TRAIN) return CMD_ERROR;
|
if (data == OCV_SLOT_OCCUPANCY && v->type != VEH_TRAIN) return CMD_ERROR;
|
||||||
if (data == OCV_TRAIN_IN_SLOT && v->type != VEH_TRAIN) return CMD_ERROR;
|
if (data == OCV_TRAIN_IN_SLOT && v->type != VEH_TRAIN) return CMD_ERROR;
|
||||||
if (data == OCV_COUNTER_VALUE && v->type != VEH_TRAIN) return CMD_ERROR;
|
|
||||||
if (data >= OCV_END) return CMD_ERROR;
|
if (data >= OCV_END) return CMD_ERROR;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@@ -2477,7 +2477,7 @@ public:
|
|||||||
DropDownList list;
|
DropDownList list;
|
||||||
for (uint i = 0; i < lengthof(_order_conditional_variable); i++) {
|
for (uint i = 0; i < lengthof(_order_conditional_variable); i++) {
|
||||||
if (this->vehicle->type != VEH_TRAIN && (_order_conditional_variable[i] == OCV_TRAIN_IN_SLOT || _order_conditional_variable[i] == OCV_SLOT_OCCUPANCY ||
|
if (this->vehicle->type != VEH_TRAIN && (_order_conditional_variable[i] == OCV_TRAIN_IN_SLOT || _order_conditional_variable[i] == OCV_SLOT_OCCUPANCY ||
|
||||||
_order_conditional_variable[i] == OCV_FREE_PLATFORMS || _order_conditional_variable[i] == OCV_COUNTER_VALUE)) {
|
_order_conditional_variable[i] == OCV_FREE_PLATFORMS)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (ocv != _order_conditional_variable[i]) {
|
if (ocv != _order_conditional_variable[i]) {
|
||||||
|
@@ -465,6 +465,8 @@ DropDownList BaseVehicleListWindow::BuildActionDropdownList(bool show_autoreplac
|
|||||||
}
|
}
|
||||||
if (this->vli.vtype == VEH_TRAIN && _settings_client.gui.show_adv_tracerestrict_features) {
|
if (this->vli.vtype == VEH_TRAIN && _settings_client.gui.show_adv_tracerestrict_features) {
|
||||||
list.emplace_back(new DropDownListStringItem(STR_TRACE_RESTRICT_SLOT_MANAGE, ADI_TRACERESTRICT_SLOT_MGMT, false));
|
list.emplace_back(new DropDownListStringItem(STR_TRACE_RESTRICT_SLOT_MANAGE, ADI_TRACERESTRICT_SLOT_MGMT, false));
|
||||||
|
}
|
||||||
|
if (_settings_client.gui.show_adv_tracerestrict_features) {
|
||||||
list.emplace_back(new DropDownListStringItem(STR_TRACE_RESTRICT_COUNTER_MANAGE, ADI_TRACERESTRICT_COUNTER_MGMT, false));
|
list.emplace_back(new DropDownListStringItem(STR_TRACE_RESTRICT_COUNTER_MANAGE, ADI_TRACERESTRICT_COUNTER_MGMT, false));
|
||||||
}
|
}
|
||||||
if (change_order_str != 0) {
|
if (change_order_str != 0) {
|
||||||
|
Reference in New Issue
Block a user