Mass voice, halfop, op, ban with address(user,2)
alias MassMode {
var %i 1,%g,%n $2-,%s $left($1,1),%m $mid($1,2,1)
if %m = b {
%n = ""
while $gettok($2-,%i,32) {
%n = %n $address($v1,2)
inc %i
}
}
while %n {
%g = $gettok(%n,1- $+ $modespl,32)
mode # $+(%s,$str(%m,$numtok(%g,32))) %g
%n = $gettok(%n,$calc($modespl +1) $+ -,32)
}
}
You may want to have a if/else for $modespl
if a server does not report it; although I've
never seen a server not report it.
Of all those $address(0-9), not all are useful.
Also does mass ban with $address(user,2)
I actually have it named MassMode.
alias changeState {
var %i 1,%g,%n $2-,%s $left($1,1),%m $mid($1,2,1)
if %m = b {
%n = ""
while $gettok($2-,%i,32) {
%n = %n $address($v1,2)
inc %i
}
}
while %n {
%g = $gettok(%n,1- $+ $modespl,32)
mode # $+(%s,$str(%m,$numtok(%g,32))) %g
%n = $gettok(%n,$calc($modespl +1) $+ -,32)
}
}
I like the way it's written except I'd test that
the item ends up where it should instead of:
if (%item_to != %item_from) {
hdel %table_to %item_to
hdel %table_from %item_from
}
I'd also want a verbose option; something along the lines of:
Foo was moved from TableFoo to TableBar which now reads: Yada Yada Yada...
Bar was moved from TableBar to TableFoo which now reads: Blah Blah Blah...
(I'd truncate the actual data to a reasonable length to keep it in one line.)
That's some serious halt abuse.
Hard coded colors are a bad idea. No one will run your code because noobs
won't be able to pick out all the broken codes and vets won't want to.
Try: //echo -ac action blah blah $+($chr(3),$color(info).dd) more blah blah blah
Even better set up colors 2-13 in alias with variables for all $color()s:
set %k-A $+($chr(3),$color(info).dd)
set %k-B $+($chr(3),$color(action).dd)
set %k-C $+($chr(3),$color(text).dd)
etc. (be sure to aways use .dd or you'll learn why)
Save colors [0,1,14,15] as background colors
Do not stray far from default colors to setup themes
based on those four background colors, but do shift
them slightly for better contrast with each on the four
background colors.
Make use of /color to shift them on theme change.
;Change the active color scheme to mIRC Classic
/color -s \"mIRC Classic\"
;Change the color of 1 in the color palette to purple (128, 0, 128).
//color 1 $rgb(128,0,128)
;Restore the original color
/color -r 1
;Change the color of the background to 1 (1 by default of black)
/color Background 1
About 80% of women and half the
guys will use light gray #15 as background, the 2nd
most used bg color will be black #1 followed by white #0.
It would be an odd duck that chooses dark gray #14, but
I exclude it as a color option just to round out the numbers.
To fix background colors used in messages
look at this post: http://hawkee.com/snippet/2795/
PROTIP: Only connect to freenode where colors are forbidden
Unfortunately if you change themes in the pallet editor (crayons)
there is no signal of that change (that I currently know of) to
initiate a script to fix all the other colors as in nicklist
colors or to shift all the $RGB values of colors for better
contrast. Khaled has failed to connect the dots in several
areas that you don't really figure out until you try to
take a script to it's logical conclusion.
@Hawkee
All my snippets seem broken now in one line.
http://www.hawkee.com/snippet/6807/
I don't like the new layout; it seems like less is happening and there is less information than before.
Jokabua
If you only need like a handfull do as Yawhatever explained.
If you needed like 20 or so then I would change the
line: if $istok(badident Guest,%ident,32) {
to: if $istok(%badident,%ident,32) {
then: /set %badident badident1 badindent2 etc3 etc4
Also, at this point I would add some simple scripting to
make these changes easier/quicker.
If it became necessary to have say 50 or more badidents
then I would think about storing them into a text or ini file
and maybe loading them into hash for quicker response.
Ricko,
I modified the code as shown so i could simply /define [WORD]
and it works so I'm suspecting you have other issues or are trying to
trigger your own 'on text' event which is impossible.
on *:sockopen:ud*:{
tokenize 32 $sock($sockname).mark
if ($sockerr) { $5-6 Socket error! | return }
$2-4 GET $+(/iphone/search/define?term=,$1) HTTP/1.1
$2-4 Host: $+($sock($sockname).addr,$str($crlf,2))
$2-4 Connection: close
}
on *:sockread:ud*:{
tokenize 32 $sock($sockname).mark
if ($sockerr) { $5-6 Socket error! | return } | var %ud | sockread %ud
if (undefined isin %ud) { $5-6 $qt($replace($1,+,$chr(32))) is $+($v1,!) }
elseif ($regex(%ud,/"definition":"(.*)/)) { $5-6 $remde($gettok($regml(1),1,34)) }
}
alias define {
set -l %ud $+(ud,$str($ticks,3))
$+(sock,$iif($sock(%ud),close,open) %ud www.urbandictionary.com 80)
sockmark %ud $replace($strip($1-),$chr(32),+) sockwrite -nt %ud .echo -a
}
alias remde var %. | noop $regsub($1,/\134r\134n/g,$chr(32),%.) | return %.
Hawkee,
Yes, I'm on IE8 mainly because IE9 bites the big one.
I also have FF11 installed but on windows IE is my 'goto'
I wish FF would handle search engines and favorites like
IE does. Strike that last comment before a holy war erupts... again...
Yes, you did get it fixed for IE8 and it looks great! I'm worried tho
how it will be when someone post 1,000 lines of code and the first
many lines are longer than the window and we have to scroll.
OIC, I can just click on the line and [key=>] over to it.
BTW, that one shows like lots of extra space after the longest
line that could make you feel like there is a long line hiding somewhere.
Don't mean to be overly picky but while we got you on this and it's
fresh in your mind best to give you feed back now I hope..
Note: I was fixing a gals computer and during the conversation she asked
me if i was on facebook and I replied, "no, I'm on Hawee.com which is like
facebook for computer nerds... instead of posting pictures of getting drunk
and writing goofy crap about snooky and the situation we post screenshots
of programs and code we create on our computers and write tutorials on
how to use and modify the code." I do not understand why but then she asked
me if I was seeing anyone to which I replied enthusiastically, "Not when I take
my medication!" I never did figure out why she had such an interrest in my
hallucinations.
sunslayer,
Nice! Thanks, I am needing some type menus about now.
Hawkee,
I like the new code blocks and hope you are thinking how to set the height/length
based on number of lines so you dont have a verticle scroll and not so much empty
space. A line or two more than needed would be nice up to like maybe one hundred
lines of code at which point you get the verticle scroll bar. Or much better would be
that the maximum size is about same as browser height as its tough to have to scroll
both ways if the code block is too much larger than available space. That part of the
original design was not really bad before. I do however like the addition of multiple
blocks exactly for code like what sunslayer posted here. Also of course the line numbers
are GREAT idea and will make referencing code sections easier. Syntax highlighting for
a seemingly infinite number of languages.... good luck with that... wouldnt want to be you..
LOL