Control Panel v2

By Zallikex on Mar 19, 2012

Yes, another enormous snippet...its a control panel and its a beta version...im going to add more but for now this will be enough

v2 has editboxes for sort of a quickset sort of thing and different editboxes for specific modes
also has a new dialog for information on modes....echos the information to your active window

menu channel  {
  Control Panel:  { dialog -m Channel Channel }
}
dialog Channel {
  title "Channel"
  size -1 -1 160 55
  option dbu
  box "Bans", 7, 81 3 75 23
  button "Channel Modes", 1, 7 10 45 11
  button "Extended Bans", 3, 115 10 40 11
  button "Basic Ban", 4, 85 10 30 11
  button "Close", 8, 70 40 20 11 ,ok
  button "About", 2, 95 40 20 11
}
on *:dialog:Channel:sclick:*: {
  if ($did == 1) { /dialog -m +CModes) +CModes }
  if ($did == 3) { /mode $$?="Enter channel here" +b $$?="Enter extension here" $+ : $+ $$?="Enter IP/Domain/Host/Account/Room here." }
  if ($did == 4) { /mode $$?="Enter channel here" +b $$?="Enter IP/Host/Domain here." }
  if ($did == 2) { /echo -a This was scripted by Zallikex on IrCQnet  Thanks for using =D }
  if ($did == 5) { /dialog -m Mlock Mlock }
}
dialog +CModes {
  title "Set Channel Modes"
  size -1 -1 280 110
  option dbu
  box "Set", 24, 3 23 75 75
  button "Close", 61, 61 99 20 11 ,ok
  button "+A", 1, 6 30 10 10 
  button "+B", 2, 16 30 10 10 
  button "+C", 3, 26 30 10 10  
  button "+c", 4, 36 30 10 10 
  button "+f", 5, 46 30 10 10 
  button "+g", 6, 56 30 10 10 
  button "+G", 7, 66 30 10 10 
  button "+H", 8, 6  40 10 10 
  button "+i", 9, 16 40 10 10 
  button "+j", 10, 26 40 10 10 
  button "+J", 11, 36 40 10 10 
  button "+k", 12, 46 40 10 10 
  button "+K", 13, 56 40 10 10    
  button "+l", 14, 66 40 10 10 
  button "+m", 15, 6 50 10 10 
  button "+M", 16, 16 50 10 10 
  button "+n", 17, 26 50 10 10 
  button "+N", 18, 36 50 10 10 
  button "+p", 19, 46 50 10 10 
  button "+s", 20, 56 50 10 10 
  button "+S", 21, 66 50 10 10  
  button "+t", 22, 6 60 10 10  
  button "+T", 23, 16 60 10 10 
 Button "+Q", 76, 26 60 10 10
button "-Q", 77, 36 60 10 10
Button "+X", 78, 46 60 10 10
Button "-X", 79, 56 60 10 10
  box "Operator modes", 49, 6 70 63 20 
  button "+v", 50, 8 77 10 10 
  button "+h", 51, 20 77 10 10 
  button "+o", 52, 32 77 10 10 
  button "+a", 53, 44 77 10 10 
  button "+q", 54, 56 77 10 10 
  box "Unset", 25, 78 23 75 75 
  button "-A", 26, 79 30 10 10 
  button "-B", 27, 89 30 10 10 
  button "-C", 28, 99 30 10 10  
  button "-c", 29, 109 30 10 10 
  button "-f", 30, 119 30 10 10 
  button "-g", 31, 129 30 10 10 
  button "-G", 32, 139 30 10 10 
  button "-H", 33, 79 40 10 10 
  button "-i", 34, 89 40 10 10 
  button "-j", 35, 99 40 10 10 
  button "-J", 36, 109 40 10 10 
  button "-k", 37, 119 40 10 10 
  button "-K", 38, 129 40 10 10 
  button "-l", 39, 139 40 10 10 
  button "-m", 40, 79 50 10 10 
  button "-M", 41, 89 50 10 10 
  button "-n", 42, 99 50 10 10 
  button "-N", 43, 109 50 10 10 
  button "-p", 44, 119 50 10 10 
  button "-s", 45, 129 50 10 10 
  button "-S", 46, 139 50 10 10 
  button "-t", 47, 79 60 10 10 
  button "-T", 48, 89 60 10 10 
  box "Operator modes 2", 55, 81 70 63 20 
  button "-v", 56, 84 77 10 10 
  button "-h", 57, 96 77 10 10 
  button "-o", 58, 108 77 10 10 
  button "-a", 59, 120 77 10 10 
  button "-q", 60, 132 77 10 10 
  button "Info", 62, 83 99 20 11 
  button "+L", 63, 26 60 10 10 
  button "Memo", 71, 0 99 20 11 
  Button "Notice", 73, 23 99 35 11 
  Button "-L", 74, 99 60 10 10
  list 75, 159 30 100 60, hsbar vsbar
}
on *:dialog:+Cmodes:init:*: {
  nickzz
}
on *:dialog:+cmodes:sclick:*: {
  If ($did == 76) { /mode $did(64) +Q }
  If ($did == 77) { /mood $did(64) -Q }
  If ($did == 78) { /mode $did(64) +X  $$?="permission" $+ : $$?="mode" }
  If ($did == 79) { /mode $did(64) -X }
  if ($did == 74) { /mode $did(64) -L }
  if ($did == 73) { /notice $did(65) $did(72) )
  if ($did == 71) ( /msg memoserv send $did(65) $did(72) }
  if ($did == 1) { /mode $did(64) +A }
  if ($did == 2) { /mode $did(64) +B }
  if ($did == 3) { /mode $did(64) +C }
  if ($did == 4) { /mode $did(64) +c }
  if ($did == 5) { /mode $did(64) +f $did(69) }
  if ($did == 6) { /mode $did(64) +g $did(66) }
  if ($did == 7) { /mode $did(64) +G }
  if ($did == 8) { /mode $did(64) +H $did(69) }
  if ($did == 9) { /mode $did(64) +i }
  if ($did == 10) { /mode $did(64) +j $did(69) }
  if ($did == 11) { /mode $did(64) +J }
  if ($did == 12) { /mode $did(64) +k $did(67) }
  if ($did == 13) { /mode $did(64) +K }
  if ($did == 14) { /mode $did(64) +l $did(68) }
  if ($did == 15) { /mode $did(64) +m }
  if ($did == 16) { /mode $did(64) +M }
  if ($did == 17) { /mode $did(64) +n }
  if ($did == 18) { /mode $did(64) +N }
  if ($did == 19) { /mode $did(64) +p }
  if ($did == 20) { /mode $did(64) +s }
  if ($did == 21) { /mode $did(64) +S }
  if ($did == 22) { /mode $did(64) +t }
  if ($did == 23) { /mode $did(64) +T }
  if ($did == 26) { /mode $did(64) -A }
  if ($did == 27) { /mode $did(64) -B }
  if ($did == 28) { /mode $did(64) -C }
  if ($did == 29) { /mode $did(64) -c }
  if ($did == 30) { /mode $did(64) -f }
  if ($did == 31) { /mode $did(64) -g $did(66) }
  if ($did == 32) { /mode $did(64) -G }
  if ($did == 33) { /mode $did(64) -H }
  if ($did == 34) { /mode $did(64) -i }
  if ($did == 35) { /mode $did(64) -j }
  if ($did == 36) { /mode $did(64) -J }
  if ($did == 37) { /mode $did(64) -k }
  if ($did == 38) { /mode $did(64) -K }
  if ($did == 39) { /mode $did(64) -l }
  if ($did == 40) { /mode $did(64) -m }
  if ($did == 41) { /mode $did(64) -M }
  if ($did == 42) { /mode $did(64) -n }
  if ($did == 43) { /mode $did(64) -N }
  if ($did == 44) { /mode $did(64) -p }
  if ($did == 45) { /mode $did(64) -s }
  if ($did == 46) { /mode $did(64) -S }
  if ($did == 47) { /mode $did(64) -t }
  if ($did == 48) { /mode $did(64) -T }
  if ($did == 50) { /mode $did(64) +v $did(65) }
  if ($did == 51) { /mode $did(64) +h $did(65) }
  if ($did == 52) { /mode $did(64) +o $did(65) }
  if ($did == 53) { /mode $did(64) +a $did(65) }
  if ($did == 54) { /mode $did(64) +q $did(65) }
  if ($did == 56) { /mode $did(64) -v $did(65) }
  if ($did == 57) { /mode $did(64) -h $did(65) }
  if ($did == 58) { /mode $did(64) -o $did(65) }
  if ($did == 59) { /mode $did(64) -a $did(65) }
  if ($did == 60) { /mode $did(64) -q $did(65) }
  if ($did == 62) { /dialog -m ModeInfo ModeInfo }
  if {$did == 63) { /mode $did(64) +L $did(70)
  }
}
alias  nickzz {
  var -s %curr 1 , %nick $nick($active,0)
  did -r +CModes 75
  while (%curr <= %nick) { 
    did -az +CModes 1 $nick($active,%curr)
    inc %curr
  }
}
dialog ModeInfo {
  title "Channel Mode Info"
  size -1 -1 81 81
  option dbu
  box "Set", 25, 3 3 75 75
  button "+A", 1, 6 10 10 10
  button "+B", 2, 16 10 10 10
  button "+C", 3, 26 10 10 10
  button "+c", 4, 36 10 10 10
  button "+f", 5, 46 10 10 10
  button "+g", 6, 56 10 10 10
  button "+G", 7, 66 10 10 10
  button "+H", 8, 6  20 10 10
  button "+i", 9, 16 20 10 10
  button "+j", 10, 26 20 10 10
  button "+J", 11, 36 20 10 10
  button "+k", 12, 46 20 10 10
  button "+K", 13, 56 20 10 10
  button "+l", 14, 66 20 10 10
  button "+m", 15, 6 30 10 10
  button "+M", 16, 16 30 10 10
  button "+n", 17, 26 30 10 10
  button "+N", 18, 36 30 10 10
  button "+p", 19, 46 30 10 10
  button "+s", 20, 56 30 10 10
  button "+S", 21, 66 30 10 10
  button "+t", 22, 6 40 10 10
  button "+T", 23, 16 40 10 10
  button "+L", 24, 26 40 10 10
  button "+Q", 25, 36 40 10 10
  button "+X", 26, 36 40 10 10
}
on *:dialog:modeinfo:sclick:*: {
  if ($did == 25) { /echo -a This mode stops kicking, except by chanserv, and thwart forcepart command(Q) }
  if ($did == 26) { /echo -a With this in effect you must have flag _ to execute this mode(ex usage /mode #room +X a:t) you must have flag a to Change the topic }
  if ($did == 1) { /echo -a This mode allows anyone to change the topic(A) }
  if ($did == 2) { /echo -a This mode blocks messages of 3 or more characters and all caps (ex. USA,HELLO)(B) }
  if ($did == 3) { /echo -a This mode doesnt allow CTCPs in the room(C) }
  if ($did == 4) { /echo -a This mode blocks any messages with color(c) }
  if ($did == 5) { /echo -a If _ amount of msg are sent in:_ amount of seconds, user gets kicked (usage /mode #channel +f 5:6) }
  if ($did == 6) { /echo -a This mode adds a word to the rooms filter. (ex. if you add *foobar* then any message with foobar in it wont go through(usage /mode #channel +g *foobar* }
  if ($did == 7) { /echo -a This is the network standard filter, but ive never seen it work... +G }
  if ($did == 8) { /echo -a If youve been in the room in which has this mode multiple times,then it will replay the last so many messages in _ seconds...this mode is a double edged sword(H) }
  if ($did == 9) { /echo -a This makes the room invite only...like a VIP lounge(i) }
  if ($did == 10) { /echo -a this does the same thing as +f except this covers joins(j) }
  if ($did == 11) { /echo -a If you kick a person,and you have this set,they cant rejoin for the set amount of seconds(J) }
  if ($did == 12) { /echo -a This makes the room locked...you can only enter if you have the password/key(k) }
  if ($did == 13) { /echo -a This stops someone knocking on the "door" of the room...+i is requred to set this(K) }
  if ($did == 14) { /echo -a Only the set number of users can be on the channel(l) }
  if ($did == 15) { /echo -a Only people with operator modes can talk (v,h,o,a,q)(m) }
  if ($did == 16) { /echo -a Onle people with registered nicks can talk(M) }
  if ($did == 17) { /echo -a You have to be on the channel to send messages/notices to it(n) }
  if ($did == 18) { /echo -a Cannot change nicks on the channel(N)[ext ban] }
  if ($did == 19) { /echo -a Private channel, shows on the list with a * next to it(if you have this set dont set s(p) }
  if ($did == 20) { /echo -a Sets channel so it does not show in a whois or channel list or list of any kind...dont set p(s) }
  if ($did == 21) { /echo -a Very similar to c but strips them,rather than blocking them all together(S) }
  if ($did == 22) { /echo -a Only ops can change the topic(t) }
  if ($did == 23) { /echo -a No Notices on the channel(T) }
  if ($did == 24) { /echo -a When channel gets full(limit amount has been reached) this mode will redirect them to another channel(L) }
}

}

Comments

Sign in to comment.
Zallikex   -  Mar 21, 2012

with the nicklist i managed to do it without a channel list in the code,you dont have to type anything in for the channel anymore...ill upload what i have so far

 Respond  
blackvenomm666   -  Mar 21, 2012

check your inbox

 Respond  
blackvenomm666   -  Mar 21, 2012

i think it would be best to have two list areas. one that lists the channels you're in and one that lists the nicks in the channel you select instead of having to type out the channel you wish to use the command on

 Respond  
blackvenomm666   -  Mar 21, 2012

ok well i loaded up your dialog to take a look. as it stands now you can either A. add the list or B. add a dropdown list although the normal list is prolly the way to go

 Respond  
blackvenomm666   -  Mar 21, 2012

ok so for those ones it shouldn't be too hard but as i said your going to have to add a list to the dialog.

 Respond  
Zallikex   -  Mar 21, 2012

so far i have a voice,halfop,op,admin,owner im also gonna add another window for access flags, and on that will be an akick, this still has a long way to go

 Respond  
blackvenomm666   -  Mar 21, 2012

which buttons are you wanting to work with the nick list in the dialog?

 Respond  
blackvenomm666   -  Mar 21, 2012

well you have to add a list area to it haha which will make it a bit bigger on ya.

 Respond  
Zallikex   -  Mar 21, 2012

either way,how do i put this into my script...ive been trying to figure out for a while x]

 Respond  
Zallikex   -  Mar 21, 2012

yeah, were in the same timezone xP

 Respond  
blackvenomm666   -  Mar 21, 2012

im in tx

 Respond  
Zallikex   -  Mar 21, 2012

also,it would appear we are in the same timezone

 Respond  
Zallikex   -  Mar 21, 2012

i found the problem, i deleted the .system off of everything and I added a space between the
var -s %curr 1, %nick $nick($active,0)
1 and the , and it worked like a charm so now its
var -s %curr 1 , %nick $nick($active,0)
and it works fine

 Respond  
blackvenomm666   -  Mar 21, 2012

thats kinda odd. put it into your script then send it to me in a private message i'll take a look at it. also post me the irc addy for the server you are using. i'll be home around 6'ish my time it is 9:11 a.m now. once i get home i'll check back here and try to help ya out

 Respond  
Zallikex   -  Mar 20, 2012

every time i put that it,activated it it gave me an excess flood quit, the dialog would open, then i would get a bunch of
0 Unknown command
in my status window,then i would get an excess flood quit

 Respond  
blackvenomm666   -  Mar 20, 2012

i take it my two examples helped you then?

 Respond  
Zallikex   -  Mar 20, 2012

Updated to Version 2. 2.1 coming soon. and thanks :] will do

 Respond  
blackvenomm666   -  Mar 20, 2012

np. if you need additional help let me know

 Respond  
Zallikex   -  Mar 20, 2012

Thanks

 Respond  
blackvenomm666   -  Mar 20, 2012

Here is part of an old one of mine that does what you want
This one will show you the list of channels you are in in the top list box and will show you the nicks in the channels when you double click on the channel name

Menu Menubar,Nicklist,Channel {
  .Venom Profile Viewer: dialog $iif($dialog(profileview.system),-v,-md profileview.system) profileview.system
}
Dialog profileview.system {
  Title "Profile viewer"
  Size -1 -1 207 80
  Option dbu
  list 1, 02 02 100 40, hsbar vsbar
  button "view profile ",2, 02 62 37 12 , flat
  list 3, 02 33 100 40, hsbar vsba3
  edit "type nick to check here", 4, 40 62 62 12, autohs
  list 5, 105 02 100 75, hsbar vsbar

}
on *:dialog:profileview.system:init:*: {
    chanzz
}
on *:dialog:profileview.system:dclick:1: {
  nickzz
}

alias  nickzz {
  var -s %curr 1, %nick $nick($did(profileview.system,1).seltext,0)
  did -r profileview.system 3
  while (%curr <= %nick) { 
    did -az profileview.system 3 $nick($did(profileview.system,1).seltext,%curr)
    inc %curr
  }
}
alias chanzz {
  var %chans $chan(0), %curr 1
  did -r profileview.System 1
  while (%curr <= %chans) { 
    did -az profileview.System 1 $chan(%curr)
    inc %curr
  }
}

This one will just automatically load in the nicknames of the Active channel when you open the dialog.

Menu Menubar,Nicklist,Channel {
  .Venom Test Dialog: dialog $iif($dialog(testdialog.system),-v,-md testdialog.system) testdialog.system
}
Dialog testdialog.system {
  Title "Test Dialog"
  Size -1 -1 207 80
  Option dbu
  list 1, 02 02 100 80, hsbar vsbar

}
on *:dialog:testdialog.system:init:*: {
   nickzz
}

 alias  nickzz {
  var -s %curr 1, %nick $nick($active,0)
  did -r testdialog.system 1
  while (%curr <= %nick) { 
    did -az testdialog.system 1 $nick($active,%curr)
    inc %curr
  }
}
 Respond  
blackvenomm666   -  Mar 20, 2012

yes you can allow me to demonstrate using what i showed you to use

 Respond  
Zallikex   -  Mar 20, 2012

i added that to the end of the script(idk if that was the incorrect thing) but when i did the alias it retirned errors for all the lined that began with "did" so i put a "$" in front of them and it gave me an excess flood quit.
what im asking is, can i put a
list 1, 7 11 90 30, sort size vsbar
in the script,have a nicklist in it,and be able to click a nick,then the +v button,and have the script voice them

 Respond  
blackvenomm666   -  Mar 20, 2012

nicklists are pretty easy to do actually. just depends on how you wanna go about it. you would have to change the name of the dialog in the variable and the other info on it but keep the while and the var-s line and this will get you the nicks from the channel the dialog is opened on

alias  nickzz2 {
  var -s %curr 1, %nick $nick($active,0)
  did -r roomsettings.system 131
  while (%curr <= %nick) { 
    did -az roomsettings.system 131 $nick($active,%curr)
    did -az roomsettings.system 218 $nick($active,%curr)
    did -az roomsettings.system 233 $nick($active,%curr)
    inc %curr
  }
}

and if you want to maybe add a channel to it to make it easier that way you could do

 didtok -az $dname 202 32 $regsubex($str(-,$chan(0)),/./g,$chan(\n) $chr(32)) 

again change the info excet the $regsubex part and it will list the channels for you in the dialog wherever you specify

 Respond  
Zallikex   -  Mar 19, 2012

Thanks, I want to add a nicklist to the +CModes dialog,for quick mode setting...any idea how i can do that?

 Respond  
TehJibba   -  Mar 19, 2012

you dont need so many on dialog events. you can simplify it something like

on *:dialog:+CModes:sclick:*: {
 if ($did == 1) { /mode $$?="Set this where?(Include #)" +A  }
}

it will simplify it and look cleaner imo otherwise nicely done :)

 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.