Text this: Communication-constrained multi-UAV task allocation method for non-independent tasks