its a Gratz script that responds to !Grats @grats !gratz and @gratz
Very neat
on $*:TEXT:/^[!@](grat[sz])/:#: {
if ($2- == $null) { .notice $nick Syntax: $1 level skill }
elseif (($2 > 99) || ($2 < 1)) { .notice $nick Err: The level must be between 1-99. Syntax: $1 level skill }
elseif (!$skill($3-)) { .notice $nick Err: $+(",$3-,") is not a valid skill. Syntax: $1 level skill }
else { msg $chan 4�0,4�5�4,5�1�5,1�0 Congratz on level $2 $skill($3) $+ , $nick 0 5�1,5�4�5,4�0�4,0�
}
alias -l skill {
if ($regex($1,/^((skill)?total|overall)$/Si)) return Overall
elseif ($regex($1,/^cmb $/Si)) return cmb
elseif ($regex($1,/^at(t|k|tack)$/Si)) return Attack
elseif ($regex($1,/^def(en[cs]e)?$/Si)) return Defence
elseif ($regex($1,/^str(ength)?$/Si)) return Strength
elseif ($regex($1,/^(hp|hit(s|points)?)$/Si)) return Hitpoints
elseif ($regex($1,/^rang(e|er|ed|ing)$/Si)) return Ranged
elseif ($regex($1,/^Pray(er)?$/Si)) return Prayer
elseif ($regex($1,/^mag(e|ic)$/Si)) return Magic
elseif ($regex($1,/^(cook|cooking)?$/Si)) return Cooking
elseif ($regex($1,/^(wc(ing)?|woodcut(ting)?)$/Si)) return Woodcutting
elseif ($regex($1,/^fletch(ing)?$/Si)) return Fletching
elseif ($regex($1,/^fish(ing)?$/Si)) return Fishing
elseif ($regex($1,/^(fire|fm)(make?(ing)?|ing)?$/Si)) return Firemaking
elseif ($regex($1,/^craft(ing)?$/Si)) return Crafting
elseif ($regex($1,/^(smith|smelt)(ing)?$/Si)) return Smithing
elseif ($regex($1,/^min(e|e?ing)$/Si)) return Mining
elseif ($regex($1,/^herb(law|lore)?$/Si)) return Herblore
elseif ($regex($1,/^agil(ity)?$/Si)) return Agility
elseif ($regex($1,/^(th(ei|ie)[fv](e|ing)?)$/Si)) return Thieving
elseif ($regex($1,/^slay(er|ing)?$/Si)) return Slayer
elseif ($regex($1,/^farm(er|ing)?$/Si)) return Farming
elseif ($regex($1,/^(rc|runecraft)(er|ing)?$/Si)) return Runecraft
elseif ($regex($1,/^poh|con(struct[ion]|ing)?$/Si)) return Construction
elseif ($regex($1,/^Hunt(er|ing)?$/Si)) return Hunter
elseif ($regex($1,/^(summon|summoning|sum)?$/Si)) return Summoning
}