This is an edit to my old theme: http://www.hawkee.com/snippet/8160/
Please note: Once you load this, it'll change the colors in your mIRC.
After loading, you can really use many other scripts because this one halts a lot.
;;;;;;;;;;;;;;;;;;
;;;;; Event ;;;;;;
;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;
;SOF;
on *:LOAD:{
color background 1
color editbox 1
color editbox text 11
color listbox 1
color listbox text 14
color treebar 1
color treebar text 14
set %pre 14*
set %wpre 14---07>
set %linesep 14-------07---
set %rlinesep 07---14-------
set %queries 0
}
on ^*:SERVERMODE:#:{
echo -t $chan 11Mode:14 $server $+ 04(14 $+ $network $+ 04) 11sets mode:07 $1-
halt
}
on ^*:RAWMODE:#:{
if ($nick == $server) { halt }
if ($left($nick($chan,$nick).pnick,1) isalpha) { var %nick $nick }
else { var %nick $left($nick($chan,$nick).pnick,1) $+ $nick }
if (Serv isin $nick) { var %nick $nick }
if ($left($1,1) == +) {
if ($left($1,2) == +v && $calc($len($1) - 1) == $count($1,v)) { echo -t $chan 11Voice:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has voiced(+v):07 $2- | halt }
if ($left($1,2) == +h && $calc($len($1) - 1) == $count($1,h)) { echo -t $chan 11Halfop:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has halfed(+h):07 $2- | halt }
if ($left($1,2) == +o && $calc($len($1) - 1) == $count($1,o)) { echo -t $chan 11Op:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has oped(+o):07 $2- | halt }
if ($left($1,2) == +h && $calc($len($1) - 1) == $count($1,a)) { echo -t $chan 11Protect:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has protected(+a):07 $2- | halt }
if ($left($1,2) == +q && $calc($len($1) - 1) == $count($1,q)) { echo -t $chan 11Owner:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has ownered(+q):07 $2- | halt }
if ($left($1,2) == +b && $calc($len($1) - 1) == $count($1,b)) { echo -t $chan 11Ban:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has banned(+b):07 $2- | halt }
}
if ($left($1,1) == -) {
if ($left($1,2) == -v && $calc($len($1) - 1) == $count($1,v)) { echo -t $chan 11DeVoice:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has devoiced(-v):07 $2- | halt }
if ($left($1,2) == -h && $calc($len($1) - 1) == $count($1,h)) { echo -t $chan 11DeHalfop:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has dehalfed(-h):07 $2- | halt }
if ($left($1,2) == -o && $calc($len($1) - 1) == $count($1,o)) { echo -t $chan 11DeOp:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has deoped(-o):07 $2- | halt }
if ($left($1,2) == -a && $calc($len($1) - 1) == $count($1,a)) { echo -t $chan 11DeProtect:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has deprotected(-a):07 $2- | halt }
if ($left($1,2) == -q && $calc($len($1) - 1) == $count($1,q)) { echo -t $chan 11DeOwner:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has deownered(-q):07 $2- | halt }
if ($left($1,2) == -b && $calc($len($1) - 1) == $count($1,b)) { echo -t $chan 11Unban:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11has unbanned(-b):07 $2- | halt }
}
else { echo -t $chan 11Mode:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 11sets mode:07 $1- | halt }
}
on ^*:SNOTICE:*:{
if ($cid == $activecid) {
echo -ta $chr(27) 05SNotice: $server $+ ( $+ $network $+ ) $1-
haltdef
}
else {
echo -ts $chr(27) 05SNotice: $server $+ ( $+ $network $+ ) $1-
haltdef
}
}
on ^*:NOTICE:*:*:{
if ($cid == $activecid) {
if ($chan) {
if ($left($nick($chan,$nick).pnick,1) isalpha) { var %nick $nick }
else { var %nick $left($nick($chan,$nick).pnick,1) $+ $nick }
echo -ta $chr(27) 05Notice: ( $+ %nick $+ / $+ $chan $+ ): $1-
haltdef
}
else {
echo -ta $chr(27) 05Notice: $nick $+ : $1-
haltdef
}
}
else {
if ($chan) {
if ($left($nick($chan,$nick).pnick,1) isalpha) { var %nick $nick }
else { var %nick $left($nick($chan,$nick).pnick,1) $+ $nick }
echo -ts $chr(27) 05Notice: ( $+ %nick $+ / $+ $chan $+ ): $1-
haltdef
}
else {
echo -ts $chr(27) 05Notice: $nick $+ : $1-
haltdef
}
}
}
on ^*:JOIN:#:{
if ($nick != $me) {
echo -t $chan 12Join:14 $nick $+ $iif($address($nick,1), $+ 04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 12has joined07 $chan
var %x 1
while ($query(%x)) {
if ($query(%x) == $nick) { echo -t $query(%x) 12Join:14 $nick 12has joined07 $chan }
inc %x
}
}
else { echo -t $chan %pre Now talking in07 $chan }
haltdef
}
on ^*:PART:#:{
if ($nick == $me) { halt }
if ($left($nick($chan,$nick).pnick,1) isalpha) { var %nick $nick }
else { var %nick $left($nick($chan,$nick).pnick,1) $+ $nick }
echo -t $chan 08Part:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 08has left07 $chan $iif($1-,00- $+ $1- $+ 00-,00-No Reason-)
var %x 1
while ($query(%x)) {
if ($query(%x) == $nick) { echo -t $query(%x) 08Part:14 $nick 08has left07 $chan $iif($1-,00- $+ $1- $+ 00-,00-No Reason-) }
inc %x
}
haltdef
}
on ^*:KICK:#:{
if ($left($nick($chan,$nick).pnick,1) isalpha) { var %nick $nick }
else { var %nick $left($nick($chan,$nick).pnick,1) $+ $nick }
if ($left($nick($chan,$knick).pnick,1) isalpha) { var %knick $knick }
else { var %knick $left($nick($chan,$knick).pnick,1) $+ $knick }
echo -t $chan 04Kick:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 04has kicked14 %knick $+ $iif($address($knick,1),04(14 $+ $remove($address($knick,1),*!*) $+ 04)) 04from07 $chan $iif($1-,00- $+ $1- $+ 00-,00-No Reason-)
var %x 1
while ($query(%x)) {
if ($query(%x) == $nick) {
echo -t $query(%x) 04Kick:14 $nick 04has kicked14 $knick 04from07 $chan $iif($1-,00- $+ $1- $+ 00-,00-No Reason-)
}
if ($query(%x) == $knick) {
echo -t $query(%x) 04Kick:14 $knick 04has been kicked by14 $nick 04from07 $chan $iif($1-,00- $+ $1- $+ 00-,00-No Reason-)
}
inc %x
}
haltdef
}
on ^*:QUIT:{
var %x 1
while ($comchan($nick,%x)) {
if ($left($nick($chan,$nick).pnick,1) isalpha) { var %nick $nick }
else { var %nick $left($nick($chan,$nick).pnick,1) $+ $nick }
echo -t $comchan($nick,%x) 10Quit:14 %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 10has quit07 $network $iif($1-,00- $+ $1- $+ 00-,00-No Reason-)
inc %x
}
haltdef
var %y 1
while ($query(%y)) {
if ($query(%y) == $nick) { echo -t $query(%y) 10Quit:14 $nick 08has quit07 $network $iif($1-,00- $+ $1- $+ 00-,00-No Reason-) }
inc %y
}
}
on ^*:NICK:{
var %x 1
while ($comchan($newnick,%x)) {
echo -t $comchan($newnick,%x) 09Nick:14 $nick 09is now known as:14 $newnick
inc %x
}
haltdef
var %y 1
while ($query(%y)) {
if ($query(%y) == $nick) { echo -t $query(%y) 09Nick:14 $nick 09is now known as:14 $newnick }
inc %y
}
}
on ^*:INVITE:#:{
echo -at 13Invite:14 $nick 13invites you to join07 $chan
haltdef
}
on ^*:TEXT:*:*:{
if ($chan) {
if ($left($nick($chan,$nick).pnick,1) isalpha) { var %nick 00(14 $+ $nick $+ 00): }
else { var %nick 14 $+ $left($nick($chan,$nick).pnick,1) $+ 00(14 $+ $nick $+ 00): }
echo -mht $chan %nick $1-
}
else { echo -mht $nick 00(14 $+ $nick $+ 00): $1- }
haltdef
}
on *:INPUT:*:{
if ($left($active,1) == $chr(35)) {
if ($ctrlenter) {
if ($left($nick($active,$me).pnick,1) isalpha) { var %nick 00(07 $+ $me $+ 00): }
else { var %nick 07 $+ $left($nick($active,$me).pnick,1) $+ 00(07 $+ $me $+ 00): }
.msg $active $1-
echo -at %nick $1-
halt
}
if ($left($1,1) == /) { noop $eval($1-) }
else {
if ($left($nick($active,$me).pnick,1) isalpha) { var %nick 00(07 $+ $me $+ 00): }
else { var %nick 07 $+ $left($nick($active,$me).pnick,1) $+ 00(07 $+ $me $+ 00): }
echo -at %nick $1-
.msg $active $1-
halt
}
}
if ($left($1,1) == /) { noop $eval($1-) }
if ($left($active,1) isalpha) {
if ($ctrlenter) {
.msg $active $1-
echo -at 00(07 $+ $nick $+ 00): $1-
halt
}
if ($left($1,1) == /) { noop $eval($1-) }
else {
.msg $active $1-
echo -at 00(07 $+ $nick $+ 00): $1-
halt
}
}
}
on ^*:TOPIC:#:{
if ($left($nick($chan,$nick),1) isalpha) { var %nick 00(14 $+ $nick $+ 00): }
else { var %nick 14 $+ $left($nick($chan,$nick).pnick,1) $+ 00(14 $+ $nick $+ 00): }
echo -t $chan 00Topic: %nick $+ $iif($address($nick,1),04(14 $+ $remove($address($nick,1),*!*) $+ 04)) 00has changed07 $chan $+ 's 00topic to: $1-
haltdef
}
on ^*:OPEN:?:*:{
hquery $nick
$iif($1-,echo -th $nick 00(14 $+ $nick $+ 00): $1-))
haltdef
}
alias query {
hquery $1
}
alias hquery {
.query $1
echo $1 %linesep
echo $1 %wpre 14Date Opened:07 $adate $time
$iif($address($1,1),echo $1 %wpre 14Address:07 $remove($address($1,1),*!*))
inc %queries
echo $1 %wpre 14Total Queries:07 %queries
echo $1 %linesep
}
;;;;;;;;;;;;;;;;;;
;;;;;; Raws ;;;;;;
;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;
raw 001:*:{ echo -s Welcome to IRC, $me $+ . | halt }
raw 002:*:{ echo -s You're on $5 server, running on $8 $+ . | halt }
raw 003:*:{ echo -s This server was created on $6- | halt }
raw 004:*:{ echo -s $2 supports the following: $3- | halt }
raw 301:*:{ echo -a %wpre 07Away:14 $3- | halt }
raw 305:*:{ echo -at You're no longer marked as being away. | halt }
raw 306:*:{ echo -at You're now marked as being away. | halt }
raw 307:*:{ echo -a %wpre 07Identified:14 Yes | halt }
raw 310:*:{ echo -a %wpre 07Modes:14 $6 | halt }
raw 311:*:{ echo -a %linesep $+ 07Start of 14/whois $2 $+ %rlinesep | echo -a %wpre 07Address:14 $4 | echo -a %wpre 07Name:14 $6 | halt }
raw 312:*:{ echo -a %wpre 07Server:14 $3 | echo -a %wpre 07Server Info:14 $4- | halt }
raw 313:*:{ echo -a %wpre 07Status:14 IRC Operator | halt }
raw 314:*:{ echo -a %wpre 07Address:14 $5 | echo -a %wpre 07Name:14 $6 | halt }
raw 317:*:{ echo -a %wpre 07Idle:14 $duration($4) | halt }
raw 318:*:{ echo -a %linesep $+ 07End of 14/whois $2 $+ %rlinesep | halt }
raw 319:*:{
var %x 1
var %chans $3-
while ($comchan($2,%x)) {
var %y 5
while (%y != 0) {
if (%y == 5) { var %back ~ }
if (%y == 4) { var %back & }
if (%y == 3) { var %back @ }
if (%y == 2) { var %back % }
if (%y == 1) { var %back + }
if (%back $+ $comchan($2,%x) isin %chans) { var %chans $reptok(%chans,%back $+ $comchan($2,%x),$chr(31) $+ %back $+ $comchan($2,%x) $+ $chr(31),0,32) }
dec %y
}
if ($comchan($2,%x) isin %chans) { var %chans $reptok(%chans,$comchan($2,%x),$chr(31) $+ $comchan($2,%x) $+ $chr(31),0,32) }
inc %x
}
echo -a %wpre 07Channels:14 %chans
halt
}
raw 338:*:{ echo -a %wpre 07Real Address:14 $5 | echo -a %wpre 07Real IP:14 $remove($6,[,]) | halt }
raw 4**:*:{ echo -a %pre Error: $3- | halt }
raw 331:*:{ echo -t $2 00Topic: No topic set. | halt }
raw 332:*:{ echo -t $2 00Topic: $3- | halt }
raw 333:*:{ echo -t $2 00Topic Set By: $3 $duration($4) | halt }
raw 372:*:{ echo -s MOTD: $3- | halt }
raw 375:*:{ echo -s %linesep $+ MOTD START $+ %rlinesep | halt }
raw 376:*:{ echo -s %linesep $+ MOTD END $+ %rlinesep | halt }
raw 671:*:{ echo -a %wpre 07Connection:14 $6 | halt }
raw 672:*:{ echo -a %wpre 07Client:14 $5 | halt }
;EOF;
well im just starting out, i have no idea how to actualy code anything in mirc, i just work on trial and error and i have a shirtload of errors :D ... i agree with jaytea, there is more to a mirc theme than just colours , i know bcuz i tryed to make 1 and had to revert back bcuz mirc crashed lol.............
yeah i suppose it's 127 'full' cycles (alias1 calling alias2 and then alias2 successfully calling alias1 back). if alias1 calling alias2 is 1 level deep, and alias2 calling another alias is 2 levels deep, then mIRC lets you go 254 levels deep and then throws that error if you try to go any further. i might add, the limit is the same no matter how many aliases you use.
you're welcome! the problem, in case you are interested, is that when you used /query, or double clicked a nick in the nicklist to open a query window, a portion of the code containing a circular definition was activated:
alias query {
hquery $1
}
alias hquery {
.query $1
[ ... ]
/query calls /hquery, which in turn calls /query, which then calls /hquery again, and so on. this endless cycle of /query and /hquery eventually (after 128 cycles) causes mIRC to display the error that you encountered. the solution was to use /!query - with an exclamation mark - which tells mIRC to bypass the custom alias definition and call the internally defined /query command, which does not call /hquery back. this behaviour is, i imagine, what the author intended