[DIALOG]

Back to HELP
The dialog tag allows you to set up a dialog menu pop up from the EZAD. First you might be asking what is a dialog menu. In Second Life, a dialog menu refers to those blue drop down menus that appear in the upper right corner of the screen. The ones that are created using scripts will present you with up to 12 menu choices. When you choose one of them, it causes your avatar to actually say whatever is on the button. You usually don’t see this text however, because it is often said on a channel other than the channel that we all use for chat. It’s similar to when you use a command like /99reset. When you type /99reset or /99update, your avatar says the word ‘reset’ or ‘update’ on channel 99, a channel that only scripts can listen to.

If you were writing a script directly you would use the llDialog function to create one. First lets take a quick look at that function:

Function: llDialog( key avatar, string message, list buttons, integer chat_channel );
Shows a dialog box on the avatar screen with message and buttons.

  • key avatar – avatar UUID
  • string message – message to be displayed
  • list buttons – button labels
  • integer chat_channel – output channel, any integer value

When a button is pressed, the avatar chats the text of the button label on chat_channel.
The position of the chat is where the prim was when the dialog button is pressed.

When you use the [DIALOG] command in a macro for the EZ Animator Deluxe, the parameters are similar:

[DIALOG]text,button1,button2,button3,XX

The key of the avatar that will see the dialog menu is always you, the owner of the EZAD, so don’t have to specify this in a macro. You do get to specify the text that will be displayed on the dialog. This is usually a question of some kind. And you will also get to specify a list of things to be displayed on the buttons. These buttons can only be 24 characters or less each and you cannot have more than 12 of them. Lastly, you would end the [DIALOG] command with a channel number that your avatar will say the commands. This number must be a positive integer.

Dialogs would be useful for commands for scripts that must be said by the avatar itself. For instance, you might have a dialog to control your multi-gadget which looks like this:

[DIALOG]Multi-Gadget menu options,flight on,flight off,mg pose,mg show,mg hide,23

If you are reading this page using the Google translator, please note that macro commands like [NAME] and [WHISPER] only work if use the English word in the brackets and not the translated word. Be sure to view the page in English to make sure you are using the correct command in your macros.

7 Responses to “[DIALOG]”

  1. Li Desoto Says:

    Hi,

    I created a [Dialog] macro with the [repeat] macro at the end, and, well, it’s stuck in a loop (I know, I know, I should have seen this coming *smacks head*). Is there a way to get rid of the Dialog menu now?

    Is it possible to write a [Dialog] macro that repeats with the option to exit?

    Thank you,

    Li

  2. Keiki Lemieux Says:

    @Li, I don’t think there is a way to do a repeating dialog the way you want it with the HUDDLE, not exactly the way you to. The reason is that the macros can’t listen to what you choose to say using a dialog menu. The [DIALOG] command is really for commanding other products like a multigadget which listens for your voice commands.

  3. Cidri Katz Says:

    Hi

    Is there a way to bypass the dialog on this command? The [XX] command has the EZAD speaking (which many items won’t listen to). The [DIALOG] command makes your avatar speak directly, but has the added hurdle of a dialog. What I want is a single EZAD button that makes my avatar say something on a channel.

    I see this has already been adressed in the [WHISPER], [SHOUT], [XX], [REGION_SAY], [OWNER_SAY] & [IM] section responses, but there was no answer there.

  4. Keiki Lemieux Says:

    @Cidri, you have hit the nail on the head. The problem is that there is not a function in LSL (the scripting language), that would allow the HUD to speak for you directly. We can almost accomplish it by using one of the chat commands ([XX], [WHISPER], [SHOUT], etc), but the shortcoming is that the HUD is actually the thing speaking and not you.

    The [DIALOG] does indeed make you speak, but it takes a second mouse click to make it happen, and it has other limitations as well.

    The best option would be to somehow change the script that is listening for the command so that it listens to you and any object you own. However, you obviously can’t do that for objects you have bought. You might contact the person who originally made the device you are trying to control and ask them to make a version which does just that.

  5. Ethen Drechsler Says:

    Is there a Jira for this? I’ve had a look but I’m still quite new to the SL infra-structure and I wasn’t at all sure I was searching for it properly.

  6. Ethen Drechsler Says:

    There appears to be a very good get-around for this issue. I have posted the solution on the SL Scripting forum for anyone who wants to try it:

    http://forums.secondlife.com/showthread.php?p=2002638#post2002638

  7. Keiki Lemieux Says:

    I’ve added a little information to this since post.

Leave a Reply