Adventure Game Studio

AGS Support => Beginners' Technical Questions => Topic started by: Andrea1992 on Sat 14/11/2020 04:44:04

Title: Skip speech by 'Mouse only' and mouse mode changes
Post by: Andrea1992 on Sat 14/11/2020 04:44:04
Hi,

In general settings -> dialog -> allow speech to be skipped by which events I selected Mouse only (all good).

As we know, when the characters are talking the cursor mode changes to wait and animates its assign view. But this waiting cursor view continues animating even when the character has stopped talking. So the game is paused with this cursor animating and gives the player a feeling that the speech hasn't finished, and it is not clear/intuitive that the character has finished talking and they are able now to click and end the speech.

I would like that the waiting cursor view animates only while the character is talking, then I'd like it changes to the pointer mode and keeps that mode until the player clicks.
Is there any way to do it? thanks!
Title: Re: Skip speech by 'Mouse only' and mouse mode changes
Post by: Snarky on Sun 15/11/2020 14:17:22
So since you haven't chosen mouse+timeout, I take it you don't want the speech to auto-advance when the line is finished speaking?

Hmm… it's tricky, because if you don't set it to allow speech to be skipped by timeout, AGS doesn't really distinguish between whether the line has "finished" or not: the character is considered to be speaking.

I take it you're using voiced speech? In that case, the best way to tell whether the line has ended is probably to check System.AudioChannels[0].IsPlaying, since voiceclips are always played on AudioChannel[0]. You could do a repeatedly_execute_always() function that checks this and changes the mousecursor correspondingly. (If you also want the wait cursor to be shown in other situations, you might also have to do a check to see whether you're currently blocking because of speech.)