                let task_center = Point2::new(
                    task.position.x as f32 + 0.5,
                    task.position.y as f32 + 0.5
                );

                // Check if we're at the destination
                if (task_center.x - unit_position.x).abs() < 1.1 &&
                   (task_center.y - unit_position.y).abs() < 1.1 {
                    // We're there, apply work
                    task.apply_work(delta);

                    // If the work's done, we can add an object to the tile