public virtual async void TalkAsync()
{
this.ConversationState = ConversationState.Ongoing;
try
{
if (!this.Player.IsPet)
await this.Talk();
else
await this.TalkPet();
}
catch (OperationCanceledException)
{
// Thrown to get out of the async chain
}
catch (Exception ex)
{
Log.Exception(ex, "NpcScript.TalkAsync");
this.Close2("(Error)");
}
this.ConversationState = ConversationState.Ended;
}