Hi,
Ive got this little problem when Im trying to display an emotion with SierraStyle dialog. I can get it to work no problems when Im in normal gameplay, but as soon as I try to get it to work when my inventory GUI is open and Im using the GuiPortrait module, something seems wrong with the timer.
Here is what I do when Im in normal gameplay (this works):
Code: ags
I change the speech view to 17, which is a grimacing face, and I change the TextDisplayTime to 2500ms, say "Nasty" and then revert the speech view back to default. This works, when the player says "Nasty", the text timer closes the portrait and the textbox "Nasty" also closes automatically after a short time (how I want it).
However, when I try the exact same thing, but while the inventory GUI is opened (when looking at an inventory item), the timer doesnt seem to close the portrait image nor the textbox automatically at all...you absolutely MUST "close it" manually by pressing the "enter" key (as if skipping the speech with the timer no longer works).
What could be the problem here? I can give any other information that might be missing to help me debug this...
***EDIT***
It seems linked to the fact that the Inventory GUI pauses the game...if I unpause, then it works...
Anyway to get it to work but still keeping the GUI paused?
Ive got this little problem when Im trying to display an emotion with SierraStyle dialog. I can get it to work no problems when Im in normal gameplay, but as soon as I try to get it to work when my inventory GUI is open and Im using the GuiPortrait module, something seems wrong with the timer.
Here is what I do when Im in normal gameplay (this works):
// room script file
int Lampost_counter;
function hLampPost_Look()
{
if (Lampost_counter == 0)
{
Display("You see a lampost.");
}
if (Lampost_counter == 1)
{
Display("Looking closer, you see theres a piece of gum stuck to it.");
}
if (Lampost_counter == 2)
{
cEgo.SpeechView = 17;
Game.MinimumTextDisplayTimeMs = 2500;
cEgo.SayCustomFont("Nasty...");
Game.MinimumTextDisplayTimeMs = 1000;
SetOfficerSpeechView_Neutral();
}
if (Lampost_counter == 3)
{
Display("You notice nothing else of interest about the lampost..");
}
if (Lampost_counter < 3)
{
Lampost_counter += 1;
}
}
I change the speech view to 17, which is a grimacing face, and I change the TextDisplayTime to 2500ms, say "Nasty" and then revert the speech view back to default. This works, when the player says "Nasty", the text timer closes the portrait and the textbox "Nasty" also closes automatically after a short time (how I want it).
However, when I try the exact same thing, but while the inventory GUI is opened (when looking at an inventory item), the timer doesnt seem to close the portrait image nor the textbox automatically at all...you absolutely MUST "close it" manually by pressing the "enter" key (as if skipping the speech with the timer no longer works).
What could be the problem here? I can give any other information that might be missing to help me debug this...

***EDIT***
It seems linked to the fact that the Inventory GUI pauses the game...if I unpause, then it works...
Anyway to get it to work but still keeping the GUI paused?