Here is a dialog I created for you to use. Try to study out the way it was made, and the coding, etc. Also, if you are well versed in scripting the help file can help you loads, as well. When I first started scripting I was told plenty of times to study the help file. The problem was that the help file seemed to be made for those who already had a bit of scripting knowledge. So, the way I helped myself was to download a script, study its coding, and worked with each code to find out what did what. After some time of learning I started playing around with the codes to find out what ele could be done. Now, I can understand the help file alot
So, study the coding I used. Play around a little bit, and keep checking back on this forum, and others like it. They are a valuable source of info, and don't be afraid to ask questions. More importantly don't get discouraged when things don't work right, and keep trying. 
Okay, here's the code.
dialog Protect {
title "Protect"
size -1 -1 52 65
option dbu
button "Speck Kick", 1, 0 0 52 12
button "Mode Alert", 2, 0 14 52 12
button "Clone Echo", 3, 0 27 52 12
button "Onjoin Ban", 4, 0 40 52 12
button "Version Check", 5, 0 53 52 12
}
on *:Dialog:Protect:sclick:1:{
if (%speckkickon) { set %speckkickoff off | unset %speckkickon | halt }
if (%speckkickoff) { set %speckkickon on | unset %speckkickoff | halt }
}
on *:Dialog:Protect:sclick:2:{
if (%modealerton) { set %modealertoff off | unset %modealerton | halt }
if (%modealertoff) { set %modealerton on | unset %modealertoff | halt }
}
on *:Dialog:Protect:sclick:3:{
if (%clonealerton) { set %clonealertoff off | unset %clonealerton | halt }
if (%clonealertoff) { set %clonealerton on | unset %clonealertoff | halt }
}
on *:Dialog:Protect:sclick:4:{
if (%onjoinbanon) { set %bantime $$?="Enter Amount Of Time For Ban" | set %onjoinbanoff off | unset %onjoinbanon | halt }
if (%onjoinbanoff) { set %onjoinbanon on | unset %onjoinbanoff | halt }
}
on *:Dialog:Protect:sclick:5:{
if (%versioncheckon) { set %versioncheckoff off | unset %versioncheckon | halt }
if (%versioncheckoff) { set %versioncheckon on | unset %versioncheckoff | halt }
}
on ^*:JOIN:#:{
if (%speckkickon) && ($nick !isvoice $comchan($nick,1)) && ($me isop $comchan($nick,1)) { kick $comchan($nick,1) $nick [Guests, and non-subs aren't allowed on this channel] }
if (%speckkickoff) && ($me isop $comchan($nick,1)) { msg $chan Welcome, $nick $+ , to $comchan($nick,1) $+ . If you are a non-subscriber please get a paid subscription at http://getchat.msn.com }
if (%onjoinbanon) && ($me isop $comchan($nick,1)) { access $comchan($nick,1) add deny $ial($nick,1) %bantime | kick $comchan($nick,1) $nick [Sorry, but noone is allowed in this room at this time] }
if (%onjoinbanoff) && ($me isop $comchan($nick,1)) { msg $comchan($nick,1) Welcome, $nick $+ , to $comchan($nick,1) }
if (%clonealert) && ($me isop $comchan($nick,1)) { msg $comchan($nick,1) $newnick was previously known as $nick }
if (%versioncheckon) && ($me isop $comchan($nick,1)) { ctcp $nick VERSION }
}
on *:RAWMODE:#:{
if (%modealerton) && ($me isop $comchan($nick,1)) { echo $comchan($nick,1) $nick set $1- }
}