Version 1.02 – Now detects if +c or +S is set on the channel, and will stop using colour if it is.
Copy the code below:
; Colour talker v1.02 ;v1.00 ;- first release ;v1.01 ;- fixed a silly coding error -_-, my bad (numbers wouldn't show in colour talker) ;- added a bit more error checking, still not perfect, but I can't be arsed right now. ;v1.02 ;- Detects channel mode +S or +c (strip colour codes, block colour codes) and will stop using colour in accordance on *:LOAD:{ echo -atc info * Info: Successfully loaded colour talker. echo -atc info * Info: For a quick guide on how to use this, type /ctalk help. echo -atc info * Info: Alternatively you may use the menu, Colour Talker, to set up this script, it only takes a few moments. Enjoy ;). } on *:UNLOAD:{ echo -atc info * Info: Unloading all colour talker variables... .unset %ctalk.* echo -atc info * Successfully unloaded colour talker. } #Ctalker off on *:INPUT:*: { if ($left($1,1) == $chr(47)) || (Status Window == $active) || (@* iswm $active) return if ((c isincs $chan($chan).mode) || (S isincs $chan($chan).mode)) return if ($ctalk == $false) { echo -atc info * Error: You have colour talker enabled but have not set up your colours, type $+($chr(2),/ctalk set,$chr(2)) to set it up. } else { ;set start marker var %x 1 ;loop, while marker is less than total tokens while (%x <= $gettok($1-,0,32)) { ;get the first letter of current token var %first $mid($gettok($1-,[ %x ],32),1,1) ;get the rest of the word, set it to our text variable var %text %text $replace($mid($gettok($1-,[ %x ],32),1,1),[ %first ], $+($chr(3),[ %ctalk.c1 ],[ %first ],$chr(3),[ %ctalk.c2 ])) $+ $mid($gettok($1-,[ %x ],32),2,$calc($len($gettok($1-,[ %x ],32) - 1))) ;increase our marker, move on to next token inc %x } msg $active %text halt } } #Ctalker END alias ctalk { if $isid { if ($len(%ctalk.c1) == 1) || $len(%ctalk.c1) > 2) || (%ctalk.c1 > 15) || (%ctalk.c1 !isnum) return $false elseif ($len(%ctalk.c2) == 1) || $len(%ctalk.c2) > 2) || (%ctalk.c2 > 15) || (%ctalk.c2 !isnum) return $false else return $true } if ($ctalk == $false) echo -atc info * Error: Type $+($chr(2),/ctalk set,$chr(2)) to set up. if ($1) { if ($1 == on) { if ($group(#ctalker) == on) echo -atc info * Error: Colour talker is already enabled else { .enable #ctalker echo -atc info * Info: Colour talker is now $+($chr(2),enabled,$chr(2)) } } if ($1 == off) { if ($group(#ctalker) == off) echo -atc info * Error: Colour talker is already disabled else { .disable #ctalker echo -atc info * Info: Colour talker is now $+($chr(2),disabled,$chr(2)) } } if ($1 == set) { var %ctalk.confirm $$input(We are now going to set up the colour talker! $+ $crlf $+ $crlf $+ Press "Ctrl + K" for colour reference.,oi,Colour Talker) :colour1 set %ctalk.c1 $remove($$input(Choose a colour: e.g. 2,eo,Select Colour One,%ctalk.c1),$chr(3)) if ($len(%ctalk.c1) > 2) || (%ctalk.c1 > 15) || (%ctalk.c1 !isnum) { echo -atc info * Error: Colour selected must be a numerical value between 0 and 15. goto colour1 } if ($len(%ctalk.c1) == 1) set %ctalk.c1 $+(0,%ctalk.c1) :colour2 set %ctalk.c2 $remove($$input(Choose a colour: Ex. 12,eo,Select Colour Two,%ctalk.c2),$chr(3)) if ($len(%ctalk.c2) > 2) || (%ctalk.c2 > 15) || (%ctalk.c2 !isnum) { echo -atc info * Error: Colour selected must be a numerical value between 0 and 15. goto colour1 } if ($len(%ctalk.c2) == 1) set %ctalk.c2 $+(0,%ctalk.c2) } if ($1 == help) || ($1 == info) { echo -atc info $str($chr(42),115) echo -atc info * The colour talker enables you type in colours that will brighten up your IRC chat a bit (or annoy other users!). echo -atc info * Please note this script took just a few minutes to conjure up. Any problems get in touch! forgotten, #mIRC, #Coding, 12www.binaryfront.com echo -atc info * Now the important stuff, how to use this thing: echo -atc info * To set the colour talker colours type: /ctalk on echo -atc info * To turn the colour talker on type: /ctalk on echo -atc info * To turn the colour talker off type: /ctalk on echo -atc info * For this guide again type: /ctalk help echo -atc info $str($chr(42),115) } } elseif ($1 == $null) echo -atc info * For help using the colour talker type: /ctalk help } menu channel,status { Colour Talker .Set Colours:ctalk set .Help/Info:ctalk help . - . $iif($group(#Ctalker) == on,$style(1) Enable,Enable):ctalk on . $iif($group(#Ctalker) == off,$style(1) Disable,Disable):ctalk off }
Usage:
/ctalk help
– Concise information on using this script
You can also use the popups.
I can’t remember who requested this script, and I’m sure I passed it on via IRC anyway. But regardless 😛 here it is for everyone else to see. As always comments/criticism/advise welcomed.
Leave a Reply