karashiiro / TextToTalk

Chat TTS plugin for Dalamud. Has support for triggers/exclusions, several TTS providers, and more!
MIT License
48 stars 29 forks source link

Stop reading current NPC dialgoue box when dialogue box is advanced or closed #15

Closed johnysandels closed 3 years ago

johnysandels commented 3 years ago

It would be great if TextToTalk would cancel reading the previous dialogue box when advancing to the next dialogue, and also when a text box is closed when you're done talking to an NPC. video example, clicking text box closed once I've finished reading it, it continues, and when a new textbox opens it has to wait for the previous voice to finish: https://streamable.com/saeger

Similarly, when toggling TextToTalk to disabled, it would be a nice addition to clear the TTS queue and cancel the current TTS! example : when disabling TTS, the voice continues https://streamable.com/8d72l1

It can be annoying when skipping through a bunch of unimportant text from a NPC, that the text drones on in the background which needs to be waited through, or manually cancelled.

(Also side note: Thank you so much for adding the Dialogue box reading! It's been making the the non-voiced cutscenes and it's accompanied missions so much easier to follow, and they feel more important! Thanks for making such a great plugin!)

johnysandels commented 3 years ago

Any news on this possible feature? I've introduced my friend to this game and this plugin, but they like to rush ahead on some text boxes and has run into this issue as well! Cheers!

karashiiro commented 3 years ago

I'll be working through the other issues (including this) over the next few days, my dev availability only really reopened a few days ago. Please look forward to it™.

ryankhart commented 3 years ago

While I think there is value in stopping the TTS when dialogue is advanced or closed, I also would prefer to keep the option to queue up TTS for those times when I do want to collect side quests rapidly and then listen to the dialogue while I travel.

johnysandels commented 3 years ago

Ah well I know a few people who have been really looking forward to this feature, so maybe it could be turned on with a toggle, so you could still use it your way.

johnysandels commented 3 years ago

In the XLDev Addon Inspector it is possible to see if the dialogue box is visible or not visible, so it should be possible to detect if the dialogue box is closed. If the dialogue box is detected as closed (Not visible) it should stop playing the current dialogue TTS.

Best use case for this is if you've read faster than the TTS and want to skip to the next dialogue box, random NPCs, or long system messages.

And as Ryan said it would be ideal for it to be togglable in the config!

Feel free to reach out for clarification!

karashiiro commented 3 years ago

Implemented, will release in the current PR.