All pastes #485562 Raw Edit

dildo

public text v1 · immutable
·published 2007-05-13 02:29 UTC
rendered paste body
on *:LOAD:{
  set %RainbowTextOn 0
  set %RainTxtStatus Enable
  set %RainTxtColK Background
  set %RainTxtColH 0
  halt
}

on *:INPUT:*:{
  if (/* !iswm $1) && (%RainbowTextOn == 1) {
    set %RainTxtCols 4,7,8,9,11,12,6
    var %RainTxtK = $replace($1-,$chr(32),~)
    var %k = 1, %l = 1
    while (%l <= $len(%RainTxtK)) {
      if (%k > 7) {
        var %k = 1
        continue
      }
      elseif ($mid(%RainTxtK,%l,1) == ~) {
        inc %l
        var %RainTxt = $+(%RainTxt,~)
        continue
      }
      else {
        var %RainTxtCol = $gettok(%RainTxtCols,%k,44)
        $iif(%RainTxtColH == 0,set -u0 %RainTxt $+(%RainTxt,,%RainTxtCol,$mid(%RainTxtK,%l,1)), $&
          set -u0 %RainTxt $+(%RainTxt,,1,$chr(44),%RainTxtCol,$mid(%RainTxtK,%l,1)))
        inc %l
        inc %k
      }
    }
    msg $target $replace(%RainTxt,~,$chr(32))
    halt
  }
}

menu channel {
  -
  Rainbow Text
  .%RainTxtStatus:{
    $iif(%RainTxtStatus == Enable,set %RainbowTextOn 1,set %RainbowTextOn 0)
    $iif(%RainTxtStatus == Enable,set %RainTxtStatus Disable,set %RainTxtStatus Enable)
    halt
  }
  .Use %RainTxtColK Colors:{
    $iif(%RainTxtColK == Foreground,set %RainTxtColH 0,set %RainTxtColH 1)
    $iif(%RainTxtColK == Foreground,set %RainTxtColK Background,set %RainTxtColK Foreground)
    halt
  }
  -
}