All pastes #993459 Raw Edit

Unnamed

public text v1 · immutable
#993459 ·published 2008-04-22 17:15 UTC
rendered paste body
on *:INPUT:#: {
  if (%colortype == $null) && ($mid($1,1,1) != /) { /echo -a 2Please specify a color type by typing /ctype light or /ctype dark.  You may also right click this window and select it in Rainbow Text->Options->Color Type. | /halt }
  if (%colorbold == $null) && ($mid($1,1,1) != /) { /echo -a 2Please specify bold by typing /cbold on or /cbold off.  You may also right click this window and select it in Rainbow Text->Options->Bold. | /halt }
  if (%color == on) && ($mid($1,1,1) != /) {
    /set %color.words $strip($1-)
    /set %color.wcounter 0
    if (%colorbold == on) { /set %color.final 0,1 }
    if (%colorbold == off) { /set %color.final 0,1 }
    if (%colortype == light) { /set %color.colors 4 7 8 9 11 13 | /set %color.colorsc 0 }
    if (%colortype == dark) { /set %color.ccolor 4 }
    while (%color.wcounter != $numtok(%color.words,32)) {
      /inc %color.wcounter
      /set %color.cletter 0
      while (%color.cletter != $len($gettok(%color.words,%color.wcounter,32))) {
        /inc %color.cletter
        if (%colortype == light) {
          /inc %color.colorsc
          if (%color.colorsc == 7) { /set %color.colorsc 1 }
          if ($mid($gettok(%color.words,%color.wcounter,32),%color.cletter,1) isnum) { /set %color.final %color.final $+  $+ $gettok(%color.colors,%color.colorsc,32) $mid($gettok(%color.words,%color.wcounter,32),%color.cletter,1) }
          else { /set %color.final %color.final $+  $+ $gettok(%color.colors,%color.colorsc,32) $+ $mid($gettok(%color.words,%color.wcounter,32),%color.cletter,1) }
        }       
        if (%colortype == dark) {
          if ($mid($gettok(%color.words,%color.wcounter,32),%color.cletter,1) isnum) { /set %color.final %color.final $+  $+ %color.ccolor $mid($gettok(%color.words,%color.wcounter,32),%color.cletter,1) }
          else { /set %color.final %color.final $+  $+ %color.ccolor $+ $mid($gettok(%color.words,%color.wcounter,32),%color.cletter,1) }
          /inc %color.ccolor
          if (%color.ccolor == 14) { /set %color.ccolor 4 }
        }
        if (%color.cletter == $len($gettok(%color.words,%color.wcounter,32))) { /break }
      }
      /set %color.final %color.final $+ $chr(32) $+ $chr(32)
      if (%color.wcounter == $numtok(%color.words,32)) { /break }
    }
    /msg $active %color.final
    /unset %color.*
    /halt
  }
}

alias /color {
  if ($1 == on) { /set %color on }
  if ($1 == off) { /set %color off }
}
alias /ctype {
  if ($1 == light) { /set %colortype light }
  if ($1 == dark) { /set %colortype dark }
}
alias /cbold {
  if ($1 == on) { /set %colorbold on }
  if ($1 == off) { /set %colorbold off }
}

menu channel {
  Rainbow Text
  .Options
  ..Bold
  ...$iif(%colorbold == on,$style(1)) $+ On: /set %colorbold on
  ...$iif(%colorbold == off,$style(1)) $+ Off: /set %colorbold off
  ..Color Type
  ...$iif(%colortype == light,$style(1)) $+ Light:  /set %colortype light
  ...$iif(%colortype == dark,$style(1)) $+ Dark: /set %colortype dark
  .$iif(%color == on,$style(1)) $+ On: /set %color on
  .$iif(%color == off,$style(1)) $+ Off: /set %color off
}