SOLVED: Two clicks on dialog options

Started by Slasher, Mon 16/04/2018 15:48:06

Previous topic - Next topic

Slasher

I'm not sure why but it's taking two clicks on dialog options to fire???

3.4.0.14

Crimson Wizard

Quote from: Slasher on Mon 16/04/2018 15:48:06
I'm not sure why but it's taking two clicks on dialog options to fire???

3.4.0.14

Is it default dialog options or custom rendering? If it is custom rendering, please show the code.

BTW, the possibility also is that you have duplicates of dialog topics, clicking first time displays empty topic which ends instantly, and leads to "real" options with real speech under them.

Slasher

Hi Crimson,

It is a custom dialog gui

set up as:

Spoiler
@S  // Dialog startup entry point
return

@1
  cJones.Walk(cTiger.x+80,cTiger.y+36,eBlock,eWalkableAreas);
  cJones.Loop=1;
  cTiger.Transparency=100;
  aTiger_roar.Play();
  object[0].Visible=true;
  object[0].SetView(34);
  object[0].Animate(2, 4, eRepeat, eNoBlock);
  Wait(10);
  cJonesP.SayAt(50, 0, 1000, "Aghhhhhhhhhhhhhhhhhhhhh!");
  Wait(60);
  RestoreGameSlot(144);

stop
@2
  cJones.Walk(cTiger.x+80,cTiger.y+36,eBlock,eWalkableAreas);
  cJones.Loop=1;
  cJones.LockView(SPEAR);
  cTiger.Transparency=100;
  aTiger_roar.Play();
  object[0].Visible=true;
  object[0].SetView(34);
  object[0].Animate(2, 4, eRepeat, eNoBlock);
  Wait(10);
  cJonesP.SayAt(50, 0, 1000, "Aghhhhhhhhhhhhhhhhhhhhh!");
  Wait(60);
  RestoreGameSlot(144);
   
stop
@3
  cJones.Walk(cTiger.x+80,cTiger.y+36,eBlock,eWalkableAreas);
  cJones.Loop=1;
  object[1].Visible=true;
  Wait(40);
  cTiger.Transparency=100;
  aTiger_roar.Play();
  object[0].Visible=true;
  object[0].SetView(34);
  object[0].Animate(2, 4, eRepeat, eNoBlock);
  Wait(10);
  cJonesP.SayAt(50, 0, 1000, "Aghhhhhhhhhhhhhhhhhhhhh!");
  Wait(60);
  RestoreGameSlot(144);

stop
@4
Tiger=true;
 
stop
@5
cJones.Walk(487,709,eBlock,eWalkableAreas);
cJones.Loop=0;
Wait(40);
cJonesP.ChangeRoom(7);
cJones.ChangeRoom(7,1350,394);
stop
[close]

Hope this help..

cheers


Crimson Wizard

Quote from: Slasher on Mon 16/04/2018 16:09:10
It is a custom dialog gui

I need to clarify, is it custom dialog options rendering, when you are using DialogOptionsRenderingInfo in script, or just a usual GUI set for background?

Another question, does it happen with every option or only certain one(s)?

Slasher

Hi Crimson,

just new custom options gui...

with these:

Code: ags

game.dialog_options_y=11;
game.dialog_options_x=12;

// with an 8pxl gap between


I'm going over it to see if i spot anything..


Slasher

This seems to work so far:

Took out script from rooms rep exe and put it in dialog option instead..

so far do good..


Crimson Wizard

Quote from: Slasher on Mon 16/04/2018 17:25:02
Took out script from rooms rep exe and put it in dialog option instead..

And what script was that?

Slasher


Spoiler

Code: ags

@4
   Tiger=true;
 
   cJonesP.SayAt(50, 0, 1000, "I read that when faced with a Tiger you should...");
   cJonesP.SayAt(50, 0, 1000, "...make yourself big, try to look and feel brave and make a noise.");
   cJonesP.SayAt(50, 0, 1000, "Maybe it's time to try it out?");
   cJonesP.SayAt(50, 0, 1000, "...or be eaten!");
   cJones.Walk(cTiger.x+80,cTiger.y+36,eBlock,eWalkableAreas);

   cJones.Loop=1;
   cJonesP.SayAt(50, 0, 1000, "Hey! Hold on!");
   cJonesP.SayAt(50, 0, 1000, "This is not the way is it!");
   cJonesP.SayAt(50, 0, 1000, "You don't want to eat me!");
   cJonesP.SayAt(50, 0, 1000, "I'm all skin and bones!");

   aTiger_roar.Stop();
   object[0].SetView(34);
   object[0].Animate(1, 4, eRepeat, eNoBlock);

   cTiger.Transparency=100;
   object[0].Visible=true;
   cJonesP.SayAt(50, 0, 1000, "Hey! The Tiger is playing with me like my cat, Tibbles does.");
   cJonesP.SayAt(50, 0, 1000, "Good boy.");
   
   aDANGER1.Stop();
   Wait(20);
   aCREEPY.Play();
   Wait(40);
   object[0].TweenTransparency(0.4,100,eEaseInEaseOutTween,eBlockTween);
   cJonesP.SayAt(50, 0, 1000, "Where has the Tiger gone?");
   cFace1P.SayAt(50, 0, 1000, "I have been watching you.");

   cJones.Loop=2;
   cFace1P.SayAt(50, 0, 1000, "You have shown great courage.");

   cFace1P.SayAt(50, 0, 1000, "You faced a great fear and overcame it.");
   cJonesP.SayAt(50, 0, 1000, "Hey! A rock is talking!");
   cFace1P.SayAt(50, 0, 1000, "What do you desire?");
   cJonesP.SayAt(50, 0, 1000, "The Ring of Power that can stop time.");
   cJonesP.SayAt(50, 0, 1000, "I want to house it safe and protected in a museum.");
   cFace1P.SayAt(50, 0, 1000, "You are indeed a wise man.");

   cFace1P.SayAt(50, 0, 1000, "Take this key, you will need it.");
   cFace1P.SayAt(50, 0, 1000, "Farewell.");
   object[2].Visible=true;
   
   aStone_door_moving.Play();
   cJones.Loop=0;

   Wait(40);
   object[2].Visible=false;
   cJones.AddInventory(iKey);
   cJonesP.SayAt(50, 0, 1000, "That sounds like another Chamber opening.");
    aRunningMan.Play();
   Wait(50);
   cJones.Walk(483,710,eBlock,eWalkableAreas);
   cJonesP.ChangeRoom(7);
   cJones.ChangeRoom(7,1350,394);  
stop
 
[close]

Slasher


SMF spam blocked by CleanTalk