Extend Order::flags to 16 bits, fixes conditional order target field size

Adjust order packing and CmdInsertOrder

See: #198
This commit is contained in:
Jonathan G Rennison
2020-10-17 15:21:38 +01:00
parent b9f7db9c7e
commit e1aca1ab34
8 changed files with 40 additions and 25 deletions

View File

@@ -509,7 +509,7 @@ static int ScriptOrderPositionToRealOrderPosition(VehicleID vehicle_id, ScriptOr
order.SetNonStopType((OrderNonStopFlags)(GB(order_flags, 0, 2) | ((_settings_game.order.nonstop_only && ::Vehicle::Get(vehicle_id)->IsGroundVehicle()) ? OF_NON_STOP_INTERMEDIATE : 0)));
return ScriptObject::DoCommandEx(0, vehicle_id, order.Pack(), ScriptOrderPositionToRealOrderPosition(vehicle_id, order_position), CMD_INSERT_ORDER);
return ScriptObject::DoCommandEx(0, vehicle_id, ScriptOrderPositionToRealOrderPosition(vehicle_id, order_position), order.Pack(), CMD_INSERT_ORDER);
}
/* static */ bool ScriptOrder::InsertConditionalOrder(VehicleID vehicle_id, OrderPosition order_position, OrderPosition jump_to)
@@ -524,7 +524,7 @@ static int ScriptOrderPositionToRealOrderPosition(VehicleID vehicle_id, ScriptOr
Order order;
order.MakeConditional(jump_to);
return ScriptObject::DoCommandEx(0, vehicle_id, order.Pack(), ScriptOrderPositionToRealOrderPosition(vehicle_id, order_position), CMD_INSERT_ORDER);
return ScriptObject::DoCommandEx(0, vehicle_id, ScriptOrderPositionToRealOrderPosition(vehicle_id, order_position), order.Pack(), CMD_INSERT_ORDER);
}
/* static */ bool ScriptOrder::RemoveOrder(VehicleID vehicle_id, OrderPosition order_position)