mIRC Homepage

Help Understanding /dialog

Posted By: KubosKube

Help Understanding /dialog - 18/04/17 09:59 PM

So I have a couple commands I use A LOT, and I was thinking, what if I could bind these commands to a dialog button? Make a couple radios, a couple checks, etc., have some general fun with mIRC and my Twitch channel.

My problem: I have no idea how to use /dialog, or how to put it into a .ini for script usage.

Would someone be willing to copy/paste a functional dialog script so I may dissect it to figure out how it works? Wikichip speaks in riddles and Google isn't pointing in the right spots(recommended software is no longer supported, outdated forums, etc.)

Also, everywhere I looked that had to do with both mIRC and Dialog Makers, there was no clear consensus on what I should actually DO. If you guys think I'd be better off with a Dialog Maker instead of fiddling around with scripts to make my own, please recommend what you would use to make a dialog.
Posted By: SykO

Re: Help Understanding /dialog - 19/04/17 06:29 AM

have you seen the examples on wikichip: https://en.wikichip.org/wiki/mirc/dialog_components

it seems to have good examples...

you can possibly find dialog studio some where, but I think if you read more carefully you will be able to create your own.
Posted By: KubosKube

Re: Help Understanding /dialog - 19/04/17 02:00 PM

Ah, at the bottom of the page. I didn't scroll that far. Thanks for the notice. laugh I'll check those out and check back here if I need further assistance.
Posted By: KubosKube

Re: Help Understanding /dialog - 20/04/17 10:51 AM

Did I see somewhere that you can edit an opened dialog box?
i.e. - Let's say I make a dialog box with my main remote.ini script, and it only includes a button labeled "Refresh". If I have a block of code in every other script labeled as "*:dialog:example:sclick:*:", can they add their respective buttons to the dialog? Or am I going to have to manually make a dialog to include each script?
Posted By: OrFeAsGr

Re: Help Understanding /dialog - 20/04/17 11:05 AM

You can't add buttons or any controls to a dialog after it it's opened.
Things you can edit are already existing buttons, texts e.t.c
You can de/activate them, hide/unhide them, change the colour with a .dll
And these are done through the dialog events.
Posted By: SykO

Re: Help Understanding /dialog - 20/04/17 03:22 PM

I have not used dialogs nor dlls for a long time now, but I do think if you are using a dll like dcx, you can actually dynamically create dialog controls. The alternative is to use picwin (picture window/custom windows/window -p). Here is an example of what I managed to create with just picwin (no dll)

Posted By: OrFeAsGr

Re: Help Understanding /dialog - 20/04/17 03:57 PM

Sorry I didn't phrase this right. I meant you can only change the colours of controls with a DLL. This window seems pretty neat btw
Posted By: KubosKube

Re: Help Understanding /dialog - 21/04/17 04:27 AM

Originally Posted By: OrFeAsGr
You can't add buttons or any controls to a dialog after it it's opened.
Things you can edit are already existing buttons, texts e.t.c

Thank you a lot! This helps. laugh
Posted By: KubosKube

Re: Help Understanding /dialog - 23/04/17 02:29 AM

Okay, so I can't add to an existing dialog, but I can edit what already exists, yes? So in theory, can I do the following?

  • Change size of dialog?
  • Change size/position of image/icon?
  • Display an animated .gif image?

I have a text-based RPG, and I was hoping to add a little graphic detail with dialogues. If I can't do the above, then I'll just make two dialogue boxes, but life would be simpler if I could get by with only one.

Thank you guys for your amazing help. laugh
Posted By: SykO

Re: Help Understanding /dialog - 23/04/17 07:56 AM

- yes
- yes
- no (mIRC does not support .gif animations)

I suggest you read the wikichip dialog page more thoroughly. And/Or better yet, if you have installed the help files from mIRC, specifically the mIRC.chm file, then you can do the following command: "/help dialogs". Doing so will open the help file with the dialogs section, in it you can read about the /dialog command, the /did command, and pretty much all you need to know about dialogs. Hope this helps, and hope to see or read about your work soon.
Posted By: KubosKube

Re: Help Understanding /dialog - 23/04/17 02:30 PM

Thanks! I'll look into that!

If you want to see my work, it's going to be a while. I'm just getting all my ducks in a row before I start coding up the new RPG, and only when that's done can I make the graphical dialogue I asked about. Anywho, I'll keep you posted!

P.S. - I went ahead and attempted to make a graphic for user data in the RPG. Here's what it looks like:

I can't flesh it out until all of my variables for the RPG are made, and then I have to make the actual /dialogue read from the variables to pick which pictures to use and what text is required for the stats readout.

I'm expecting things to roll along pretty smoothly once I actually start coding, so it shouldn't take more than a month or two.
Posted By: KubosKube

Re: Help Understanding /dialog - 28/04/17 01:59 PM

So I got a dialog working. laugh

I decided to try dStudio, and it seems to work just fine. laugh
This is all one remote.ini file.
on *:START: {

on *:LOAD: {

alias music_dialog {
  timer_music 0 900 /announce_music
  dialog -m music_announcement music_announcement

dialog music_announcement {
  title "Music"
  size -1 -1 72 50
  option dbu
  radio "Pandora", 1, 2 2 50 10
  radio "Plug.dj", 2, 2 14 50 10
  radio "Ankhbot Song Request", 3, 2 26 68 10
  radio "No Music", 4, 2 38 50 10

on *:dialog:music_announcement:sclick:1-4:{
  if ($did($dname, $did).text == Pandora) {
    set %System..MusicAnnouncer.Message ♪ Currently listening to Pandora Radio. ♫
  elseif ($did($dname, $did).text == Plug.dj) {
    set %System..MusicAnnouncer.Message &#9834; Currently listening to Plug.dj! You can participate at <insert weblink here> ! All songs must be under 10 min. and language-free! No troll songs! Thanks! &#9835;
  elseif ($did($dname, $did).text == Ankhbot Song Request) {
    set %System..MusicAnnouncer.Message &#9834; Currently listening to Song Requests by the audience! &#9835;
  else {
    set %System..MusicAnnouncer.Message false
  echo -a Music Announcer set to " $+ %System..MusicAnnouncer.Message $+ "

alias announce_music {
  if (%System..MusicAnnouncer.Message != False) {
    msg # /me %System..MusicAnnouncer.Message

Every fifteen minutes, it sends a message to chat saying which music I'm playing and if/how they can contribute to it.

The if-chain at the end determines the message, and the timer will summon the alias to send the message.
© 2021 mIRC Discussion Forums