Using “they” as a gender-neutral-singular pronoun is a fairly recent addition to the language, so I would personally feel it clashed with a fantasy-style setting. I try to avoid using it myself because so much of English assumes that “they” is non-singular (“they don’t” is correct, “he don’t” is not, etc), and it makes me feel weird.
One approach you could have is to get the gender of the character you’re talking to and interpolate it into the dialogue text. Something like this:
"${He/She} doesn't appear to want it."
Then whenever you load in your dialogue strings, replace that portion of it with the appropriate pronoun; #1 if male, #2 if female.
Here’s a code snippet that should handle the above case, as well as potential others with multiple occurrences of the gender to be replaced:
/**
* Given a string, return it with gender-appropriate pronouns in place of a given pattern.
* @param inputString The string to be modified. Example: "${He/She} is a ${man/woman}."
* @param isMale Whether the string should be modified to refer to a male or female.
* @return The input string, containing the appropriate pronouns.
With the above example and isMale == false: "She is a woman."
*/
static public function interpolatePronouns(inputString:String, isMale:Boolean):String
{
var heShe:RegExp = /\${([A-Za-z\/]+)}/;
for (var result:Object = null; result = heShe.exec(inputString); result != null)
{
var match:String = result[1];
var split:Array = match.split("/");
var choice:String = split[int(isMale)];
inputString = inputString.replace(result[0], choice);
}
return inputString;
}
It might be too much work to modify all your strings and plug in the new system, but I think it’ll make things read a lot better.
Uptake on “they”: If you can avoid using it, great; if not, it’s not a huge deal.