In terms of efficency - I'm not too up to speed on perl internals etc. - but isn't it likely that glob constructs lead back to the same underlying functions?
(c functions - not perl) ? So ultimately - aren't most of these options going to be as efficent (or close to it)?
game(Wookie,opponent) eq 'Wookie' ? undef $problem : remove_limbs(arms,opponent);