Function: CanHarvest(player, ground_spawn)
Description: Checks whether any configured harvesting entry is eligible. Collecting uses Gathering skill. Configured skill bonuses contribute to the total; entries apply minimum skill, and bonus tables also apply minimum adventure level. Failed eligibility sends a harvesting warning when connected.
Parameters:
player: player spawn in a usable zone. ground_spawn: GroundSpawn with configured entries.
Returns: Boolean after a completed check; no value (nil) for invalid inputs, missing entries, or missing collection skill.
Connection lifetime: Each player or group-member connection resolved by this function is retained through the native call. A disconnect or reconnect during a callback cannot destroy that retained connection or switch the ongoing call to a replacement. A later Lua call resolves the current connection. This does not extend the lifetime of unrelated spawn or item userdata.