One time dialog and repeated hotkeys
Moderators: Dorian (MJT support), JRL
One time dialog and repeated hotkeys
My goal is to create a dialog box, which asks for two inputs
Input one has a combo box which you can only select one option.
This option, I want it to do the macro normally (no matter what option you pick), but depending on the option, midway through it, does a certain action.
The action would be repeated by a hotkey everytime, so I'm not sure if I need to create one script for the dialog, and one for the actual process?
The other input, would have check boxes, which again with a different hotkey, would do certain functions.
So this is kind of the outline
Input 1
1,2,3,4,5 (only one)
Input 2
1,2,3 (can be any combo)
Hotkey 1:
..Does first part of macro...
..Clicks certain places based on Input 1...
..Finishes Macro..
Hotkey 2:
..Does Macro..
..Clicks certain places if input 2 has checked items...
..Finished macro...
So my first question is, how am I going to set this up?
Do I have three scripts, or what do I do?
Input one has a combo box which you can only select one option.
This option, I want it to do the macro normally (no matter what option you pick), but depending on the option, midway through it, does a certain action.
The action would be repeated by a hotkey everytime, so I'm not sure if I need to create one script for the dialog, and one for the actual process?
The other input, would have check boxes, which again with a different hotkey, would do certain functions.
So this is kind of the outline
Input 1
1,2,3,4,5 (only one)
Input 2
1,2,3 (can be any combo)
Hotkey 1:
..Does first part of macro...
..Clicks certain places based on Input 1...
..Finishes Macro..
Hotkey 2:
..Does Macro..
..Clicks certain places if input 2 has checked items...
..Finished macro...
So my first question is, how am I going to set this up?
Do I have three scripts, or what do I do?
- Marcus Tettmar
- Site Admin
- Posts: 7395
- Joined: Thu Sep 19, 2002 3:00 pm
- Location: Dorset, UK
- Contact:
I guess you could either have two macros, assigned to two different hotkeys, or one macro using OnEvent>KEY_DOWN to handle both hotkeys.
If you want to present several options and allow the user to select multiple choices, use a Radio Button Group.
Use a combo box if only one option should be selected.
If you want to present several options and allow the user to select multiple choices, use a Radio Button Group.
Use a combo box if only one option should be selected.
Marcus Tettmar
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
Don't radios only allow one choice?mtettmar wrote:If you want to present several options and allow the user to select multiple choices, use a Radio Button Group.
I currently have a radio selection for the options that I want to use for once choice, and I have 3 check boxes for the other.
Wouldn't that be best?
Also, how do I apply each selection? I don't understand how I use the radios or checkboxes as variables later on in my script.
So how do I say if option two in in list 1 is selected, do this?
- Marcus Tettmar
- Site Admin
- Posts: 7395
- Joined: Thu Sep 19, 2002 3:00 pm
- Location: Dorset, UK
- Contact:
Sorry, yes, I meant checkboxes. Radio boxes, or a combo list for one choice, check boxes for multiple choices.
In regards to how to use them, perhaps this simple example will help:
In regards to how to use them, perhaps this simple example will help:
Code: Select all
Dialog>Dialog1
Caption=Dialog1
Width=445
Height=171
Top=502
Left=384
RadioGroup=msRadioGroup1,msRadioGroup1,16,16,185,105,One%CRLF%Two%CRLF%Three,-1
CheckBox=msCheckBox1,msCheckBox1,248,32,97,False
CheckBox=msCheckBox2,msCheckBox2,248,56,97,False
EndDialog>Dialog1
Show>Dialog1,r
MessageModal>Radio Button Selected: %Dialog1.msRadioGroup1%
MessageModal>CeckBox1 Checked: %Dialog1.msCheckBox1%
MessageModal>CeckBox2 Checked: %Dialog1.msCheckBox2%
Marcus Tettmar
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
- Marcus Tettmar
- Site Admin
- Posts: 7395
- Joined: Thu Sep 19, 2002 3:00 pm
- Location: Dorset, UK
- Contact:
My example above displays the values you have to check for. So, something like:
Code: Select all
If>Dialog1.msRadioGroup1=1
MessageModal>First option selected
Endif
If>Dialog1.msRadioGroup1=2
MessageModal>Second option selected
Endif
If>Dialog1.msRadioGroup1=3
MessageModal>Third option selected
Endif
If>Dialog1.msCheckBox1=True
MessageModal>CheckBox1 Selected
Else
MessageModal>CheckBox1 Not Selected
Endif
Marcus Tettmar
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
- Marcus Tettmar
- Site Admin
- Posts: 7395
- Joined: Thu Sep 19, 2002 3:00 pm
- Location: Dorset, UK
- Contact:
Perhaps you'd better show us your code so that we can see what might be wrong.
Marcus Tettmar
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
Code:
This is all there is right now as I'm trying to build to my previous goal before, but I just can't get the results out of the dialog
Code: Select all
Dialog>Dialog1
Caption=Dialog1
Width=313
Height=247
Top=557
Left=322
RadioGroup=msRadioGroup1,msRadioGroup1,8,8,121,145,No Mage%CRLF%Fire Blast%CRLF%Fire Wave%CRLF%Guthix%CRLF%Saradomin%CRLF%Zamorak,-1
CheckBox=msCheckBox1,Steel Skin,136,48,97,False
CheckBox=msCheckBox2,Ultimate Strength,136,72,105,False
CheckBox=msCheckBox3,Incredible Reflexes,136,96,113,False
Button=OK,64,160,75,25,1
Button=Cancel,176,160,75,25,2
EndDialog>Dialog1
Show>Dialog1,r
If>Dialog1.msRadioGroup1=1
MessageModal>First option selected
Endif
If>Dialog1.msRadioGroup1=2
MessageModal>Second option selected
Endif
If>Dialog1.msRadioGroup1=3
MessageModal>Third option selected
Endif
If>Dialog1.msCheckBox1=True
MessageModal>CheckBox1 Selected
Else
MessageModal>CheckBox1 Not Selected
Endif
If>Dialog1.msCheckBox2=True
MessageModal>CheckBox2 Selected
Else
MessageModal>CheckBox2 Not Selected
Endif
If>Dialog1.msCheckBox3=True
MessageModal>CheckBox3 Selected
Else
MessageModal>CheckBox3 Not Selected
Endif
- Marcus Tettmar
- Site Admin
- Posts: 7395
- Joined: Thu Sep 19, 2002 3:00 pm
- Location: Dorset, UK
- Contact:
Ah - sorry, it was my mistake. Radio boxes return:
DialogName.RadioGroupName: Text of item selected
DialogName.RadioGroupName.ItemIndex: Numeric index of item selected (base 0).
Sorry, my bad. My last example missed out ItemIndex.
So your script should be:
If you step through your script with the debugger you will see the variables the dialog creates.
Re why didn't your code post properly: Seems for CODE/TEXTAREA to work there needs to be text prior to the firs textarea tag. Will try to get that fixed. In the mean time, I've edited your post to fix it up.
DialogName.RadioGroupName: Text of item selected
DialogName.RadioGroupName.ItemIndex: Numeric index of item selected (base 0).
Sorry, my bad. My last example missed out ItemIndex.
So your script should be:
Code: Select all
Dialog>Dialog1
Caption=Dialog1
Width=313
Height=247
Top=557
Left=322
RadioGroup=msRadioGroup1,msRadioGroup1,8,8,121,145,No Mage%CRLF%Fire Blast%CRLF%Fire Wave%CRLF%Guthix%CRLF%Saradomin%CRLF%Zamorak,-1
CheckBox=msCheckBox1,Steel Skin,136,48,97,False
CheckBox=msCheckBox2,Ultimate Strength,136,72,105,False
CheckBox=msCheckBox3,Incredible Reflexes,136,96,113,False
Button=OK,64,160,75,25,1
Button=Cancel,176,160,75,25,2
EndDialog>Dialog1
Show>Dialog1,r
If>Dialog1.msRadioGroup1.itemindex=0
MessageModal>First option selected
Endif
If>Dialog1.msRadioGroup1.itemindex=1
MessageModal>Second option selected
Endif
If>Dialog1.msRadioGroup1.itemindex=2
MessageModal>Third option selected
Endif
If>Dialog1.msCheckBox1=True
MessageModal>CheckBox1 Selected
Else
MessageModal>CheckBox1 Not Selected
Endif
If>Dialog1.msCheckBox2=True
MessageModal>CheckBox2 Selected
Else
MessageModal>CheckBox2 Not Selected
Endif
If>Dialog1.msCheckBox3=True
MessageModal>CheckBox3 Selected
Else
MessageModal>CheckBox3 Not Selected
Endif
Re why didn't your code post properly: Seems for CODE/TEXTAREA to work there needs to be text prior to the firs textarea tag. Will try to get that fixed. In the mean time, I've edited your post to fix it up.
Marcus Tettmar
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
Hi Marcus,mtettmar wrote:Re why didn't your code post properly: Seems for CODE/TEXTAREA to work there needs to be text prior to the firs textarea tag. Will try to get that fixed. In the mean time, I've edited your post to fix it up.
You might want to upgrade your phpBB installation to phpBB3 Gold released today.
There are a ton of fixes, see CHANGELOG.
It might even have a fix for the following annoyance mentioned at the end of this post...
Rain wrote:FYI, I did use the forums search feature but find it kind of aggravating when every time I click the back button to go back to the search result list I get the “Page has Expiredâ€Â
jpuziano
Note: If anyone else on the planet would find the following useful...
[Open] PlayWav command that plays from embedded script data
...then please add your thoughts/support at the above post -
Note: If anyone else on the planet would find the following useful...
[Open] PlayWav command that plays from embedded script data
...then please add your thoughts/support at the above post -
Alright, I have one more final problem to this script.
I want to be able to use the hotkeys in this script until I shut the script off. I'm not understanding why it's just not in a continuous loop.
Both of these, when I press them, keep repeating, and don't stop. I only want them to do their subroutine once each time I press the button, until I shut the script off.
I want to be able to use the hotkeys in this script until I shut the script off. I'm not understanding why it's just not in a continuous loop.
Both of these, when I press them, keep repeating, and don't stop. I only want them to do their subroutine once each time I press the button, until I shut the script off.
Code: Select all
Dialog>Dialog1
Caption=Dialog1
Width=428
Height=247
Top=592
Left=296
Max=1
Min=1
Close=1
Resize=1
RadioGroup=msRadioGroup1,msRadioGroup1,8,8,121,145,No Mage%CRLF%Fire Blast%CRLF%Fire Wave%CRLF%Guthix%CRLF%Saradomin%CRLF%Zamorak,-1
CheckBox=msCheckBox1,Steel Skin,136,48,97,False
CheckBox=msCheckBox2,Ultimate Strength,136,72,105,False
CheckBox=msCheckBox3,Incredible Reflexes,136,96,113,False
Button=OK,112,160,75,25,1
Button=Cancel,256,160,75,25,2
Edit=msEdit1,344,64,25,P
Edit=msEdit2,344,88,25,M
Label=Pray Hotkey,272,64,true
Label=Mage Hotkey,272,88,true
EndDialog>Dialog1
Show>Dialog1,r
Label>MainLoop
OnEvent>KEY_DOWN,%Dialog1.msEdit1%,5,Pray
OnEvent>KEY_DOWN,%Dialog1.msEdit2%,5,Mage
GoTo>MainLoop
SRT>Pray
Label>First
GetWindowPos>StorkClient,sX,sY
GetCursorPos>xX,yY
//disable mouse
Pos>98,WIN_VER,1,IsWin98orMe
If>{(%IsWin98orMe%=0)}
BlockInput>1
Endif
//to book
Add>sX,393
Add>sY,40
MouseMove>sX,sY
Wait>.09
//to prayers
Add>sX,66
Add>sY,33
MouseMove>sX,sY
Wait>.08
LDown
Wait>.05
LUp
//to bottom of scrollbar
Add>sX,43
Add>sY,84
MouseMove>sX,sY
Wait>.05
LDown
Wait>.05
LUp
Sub>sX,502
Sub>sY,157
Wait>.05
Wait>.05
GoTo>steelpart
Label>steelpart
//steel
If>Dialog1.msCheckBox1=True
Add>sX,395
Add>sY,102
MouseMove>sX,sY
Wait>.05
LClick
Wait>.05
Sub>sX,395
Sub>sY,102
GoTo>strengthpart
Else
GoTo>strengthpart
Endif
Label>strengthpart
//strength
If>Dialog1.msCheckBox2=True
Add>sX,395
Add>sY,122
MouseMove>sX,sY
Wait>.05
LClick
Wait>.05
Sub>sX,395
Sub>sY,122
GoTo>reflexpart
Else
GoTo>reflexpart
Endif
Label>reflexpart
//reflex
If>Dialog1.msCheckBox3=True
Add>sX,395
Add>sY,136
MouseMove>sX,sY
Wait>.05
LClick
Sub>sX,395
Sub>sY,136
GoTo>lastpart
Else
GoTo>lastpart
Endif
Label>lastpart
BlockInput>0
End>Pray
GoTo>MainLoop
SRT>Mage
Label>magestart
GetWindowPos>StorkClient,sX,sY
GetCursorPos>xX,yY
//disable mouse
Pos>98,WIN_VER,1,IsWin98orMe
If>{(%IsWin98orMe%=0)}
BlockInput>1
Endif
//to book
Add>sX,392
Add>sY,38
MouseMove>sX,sY
Wait>.08
//to "magic"
Add>sY,32
MouseMove>sX,sY
LClick
Sub>sX,392
Sub>sY,70
Wait>.08
GoTo>death
Label>death
If>Dialog1.msRadioGroup1.itemindex=1
Add>sX,503
Add>sY,141
MouseMove>sX,sY
Wait>.08
LDown
Wait>.08
LUp
Wait>.02
Sub>sX,123
Sub>sY,20
MouseMove>sX,sY
GoTo>magecont
Else
GoTo>blood
Endif
//to bottom of scrollbar
Label>blood
If>Dialog1.msRadioGroup1.itemindex=2
Add>sX,503
Add>sY,160
MouseMove>sX,sY
Wait>.08
LDown
Wait>.08
LUp
Wait>.02
Sub>sX,123
Sub>sY,26
MouseMove>sX,sY
GoTo>magecont
Else
GoTo>guthix
Endif
Label>guthix
If>Dialog1.msRadioGroup1.itemindex=3
Add>sX,503
Add>sY,145
MouseMove>sX,sY
Wait>.08
LDown
Wait>.08
LUp
Wait>.02
Sub>sX,123
Sub>sY,48
MouseMove>sX,sY
GoTo>magecont
Else
GoTo>saradom
Endif
Label>saradom
If>Dialog1.msRadioGroup1.itemindex=4
Add>sX,503
Add>sY,145
MouseMove>sX,sY
Wait>.08
LDown
Wait>.08
LUp
Wait>.02
Sub>sX,123
Sub>sY,36
MouseMove>sX,sY
GoTo>magecont
Else
GoTo>zamorak
Endif
Label>zamorak
If>Dialog1.msRadioGroup1.itemindex=5
Add>sX,503
Add>sY,145
MouseMove>sX,sY
Wait>.08
LDown
Wait>.08
LUp
Wait>.02
Sub>sX,123
Sub>sY,22
MouseMove>sX,sY
GoTo>magecont
Else
GoTo>magecont
Endif
Label>magecont
Wait>.05
LClick
Wait>.08
//return home!
MouseMove>xX,yY
Wait>.08
//enable mouse
BlockInput>0
End>Mage
GoTo>MainLoop
I saw the blog http://www.mjtnet.com/blog/2007/11/20/exes-and-hotkeys/ , and I tried this and it still didn't work. What am I doing wrong?