You should, really, just put in a player check within the function.
But, if you want to pcall it, it should look like this:
local success, duel1, duelist1, duelseat1 = pcall(choose1)
--if an error is thrown, the variable 'duel1' will hold the reference to it
local success, duel2, duelist2, duelseat2 = pcall(choose2, duel1)
--if an error is thrown, the variable 'duel2' will hold the reference to it