All pastes #953367 Raw Edit

Unnamed

public text v1 · immutable
#953367 ·published 2008-03-23 00:48 UTC
rendered paste body
alias big { 
  if ($bigtext.unsupp($1-)) { 
    echo -ac info * Characters not supported by Big Text present in your message: $bigtext.unsupp($1-) 
    return 
  } 
  var %lia, %lib, %lic, %lid, %lie, %i 1, %text $strip($1-, bur), %colregex /^(dd?(?:,dd?)?)/ 

  var %regex = /(?<= $+ $chr(3) $+ [0-9]| $+ $chr(3) $+ [0-9][0-9]) $+ $chr(44) $+ dd?/g, %res, %dummy = $regsub(%text, %regex, $null, %text) 

  while (%i <= $len(%text)) { 
    if ($mid(%text, %i, 1) == $chr(3)) { 
      var %lia $+(%lia, $chr(3)), %lib $+(%lib, $chr(3)), %lic $+(%lic, $chr(3)), %lid $+(%lid, $chr(3)), %lie $+(%lie, $chr(3)) 
      if ($mid(%text, $calc(%i + 1), 1) != $chr(32)) && ($regex(mtcol, $mid(%text, $calc(%i + 1), $mid(%text, $calc(%i + 1), 0)), %colregex)) { 
        var %m $regml(mtcol, 1) 
        var %lia %lia $+ %m, %lib %lib $+ %m, %lic %lic $+ %m, %lid %lid $+ %m, %lie %lie $+ %m 
        inc %i $len(%m) 
      } 
    } 
    else { 
      tokenize 32 $bigtext.char($mid(%text, %i, 1)) 
      var %lia $+(%lia, $1), %lib $+(%lib, $2), %lic $+(%lic, $3), %lid $+(%lid, $4), %lie $+(%lie, $5) 
      ; if ($bigtext.kern($mid(%text, %i, 2))) { 
      var %lia $+(%lia, .), %lib $+(%lib, .), %lic $+(%lic, .), %lid $+(%lid, .), %lie $+(%lie, .) 
      ; } 
    } 
    inc %i 
  } 
  say $bigtext.format(%lia) 
  say $bigtext.format(%lib) 
  say $bigtext.format(%lic) 
  say $bigtext.format(%lid) 
  say $bigtext.format(%lie) 
} 

alias -l bigtext.char { 
  if ($1 === $chr(32)) || ($1 === $null) return $& 
    ... $& 
    ... $& 
    ... $& 
    ... $& 
    ... 
  if ($1 === $chr(160)) return $& 
    ..... $& 
    ..... $& 
    ..... $& 
    ..... $& 
    ..... 
  elseif ($1 == 0) return $& 
    .XXXX. $& 
    XX..XX $& 
    XX.XXX $& 
    XXX.XX $& 
    .XXXX. 
  elseif ($1 == 1) return $& 
    .XXXX $& 
    XX.XX $& 
    ...XX $& 
    ...XX $& 
    ...XX 
  elseif ($1 == 2) return $& 
    XXXXX. $& 
    ....XX $& 
    ..XX.. $& 
    XX.... $& 
    XXXXXX 
  elseif ($1 == 3) return $& 
    XXXXX. $& 
    ....XX $& 
    .XXXX. $& 
    ....XX $& 
    XXXXX. 
  elseif ($1 == 4) return $& 
    .....XXX. $& 
    ...XX.XX. $& 
    .XX...XX. $& 
    XXXXXXXXX $& 
    ......XX. 
  elseif ($1 == 5) return $& 
    XXXXX $& 
    XX... $& 
    XXXX. $& 
    ...XX $& 
    XXXX. 
  elseif ($1 == 6) return $& 
    .XXXX. $& 
    XX.... $& 
    XXXXX. $& 
    XX..XX $& 
    .XXXX. 
  elseif ($1 == 7) return $& 
    XXXXXX $& 
    ...XX. $& 
    ..XX.. $& 
    .XX... $& 
    XX.... 
  elseif ($1 == 8) return $& 
    .XXXX. $& 
    XX..XX $& 
    .XXXX. $& 
    XX..XX $& 
    .XXXX. 
  elseif ($1 == 9) return $& 
    .XXXX. $& 
    XX..XX $& 
    .XXXXX $& 
    ....XX $& 
    .XXXX. 
  elseif ($1 == A) return $& 
    .XXXX. $& 
    XX..XX $& 
    XXXXXX $& 
    XX..XX $& 
    XX..XX 
  elseif ($1 == B) return $& 
    XXXXX. $& 
    XX..XX $& 
    XXXXX. $& 
    XX..XX $& 
    XXXXX. 
  elseif ($1 == C) return $& 
    .XXXX. $& 
    XX..XX $& 
    XX.... $& 
    XX..XX $& 
    .XXXX. 
  elseif ($1 == D) return $& 
    XXXX.. $& 
    XX.XX. $& 
    XX..XX $& 
    XX..XX $& 
    XXXXX. 
  elseif ($1 == E) return $& 
    XXXXX $& 
    XX... $& 
    XXXX. $& 
    XX... $& 
    XXXXX 
  elseif ($1 == F) return $& 
    XXXXX $& 
    XX... $& 
    XXXX. $& 
    XX... $& 
    XX... 
  elseif ($1 == G) return $& 
    .XXXX. $& 
    XX.... $& 
    XX.XXX $& 
    XX..XX $& 
    .XXXXX 
  elseif ($1 == H) return $& 
    XX...XX $& 
    XX...XX $& 
    XXXXXXX $& 
    XX...XX $& 
    XX...XX 
  elseif ($1 == I) return $& 
    XXXX $& 
    .XX. $& 
    .XX. $& 
    .XX. $& 
    XXXX 
  elseif ($1 == J) return $& 
    ....XX $& 
    ....XX $& 
    ....XX $& 
    XX..XX $& 
    .XXXX. 
  elseif ($1 == K) return $& 
    XX..XX $& 
    XX.XX. $& 
    XXXX.. $& 
    XX.XX. $& 
    XX..XX 
  elseif ($1 == L) return $& 
    XX... $& 
    XX... $& 
    XX... $& 
    XX... $& 
    XXXXX 
  elseif ($1 == M) return $& 
    XX....XX $& 
    XXX..XXX $& 
    XXXXXXXX $& 
    XX.XX.XX $& 
    XX....XX 
  elseif ($1 == N) return $& 
    XX..XX $& 
    XXX.XX $& 
    XXXXXX $& 
    XX.XXX $& 
    XX..XX 
  elseif ($1 == O) return $& 
    .XXXX. $& 
    XX..XX $& 
    XX..XX $& 
    XX..XX $& 
    .XXXX. 
  elseif ($1 == P) return $& 
    XXXXX. $& 
    XX..XX $& 
    XXXXX. $& 
    XX.... $& 
    XX.... 
  elseif ($1 == Q) return $& 
    .XXXX.. $& 
    XX..XX. $& 
    XX..XX. $& 
    XX..XX. $& 
    .XXXXXX 
  elseif ($1 == R) return $& 
    XXXXX. $& 
    XX..XX $& 
    XXXXX. $& 
    XX..XX $& 
    XX..XX 
  elseif ($1 == S) return $& 
    .XXXX. $& 
    XX.... $& 
    .XXXX. $& 
    ....XX $& 
    XXXXX. 
  elseif ($1 == T) return $& 
    XXXXXX $& 
    ..XX.. $& 
    ..XX.. $& 
    ..XX.. $& 
    ..XX.. 
  elseif ($1 == U) return $& 
    XX..XX $& 
    XX..XX $& 
    XX..XX $& 
    XX..XX $& 
    .XXXX. 
  elseif ($1 == V) return $& 
    XX....XX $& 
    XX....XX $& 
    .XX..XX. $& 
    ..XXXX.. $& 
    ...XX... 
  elseif ($1 == W) return $& 
    XX...XX $& 
    XX...XX $& 
    XX.X.XX $& 
    XXXXXXX $& 
    .XX.XX. 
  elseif ($1 == X) return $& 
    XX...XX $& 
    .XX.XX. $& 
    ..XXX.. $& 
    .XX.XX. $& 
    XX...XX 
  elseif ($1 == Y) return $& 
    XX..XX $& 
    XX..XX $& 
    .XXXX. $& 
    ..XX.. $& 
    ..XX.. 
  elseif ($1 == Z) return $& 
    XXXXXX $& 
    ...XX. $& 
    ..XX.. $& 
    .XX... $& 
    XXXXXX 
  elseif ($1 == $chr(35)) return $& 
    .XX..XX. $& 
    XXXXXXXX $& 
    .XX..XX. $& 
    XXXXXXXX $& 
    .XX..XX. 
  elseif ($1 == ') return $& 
    .XX $& 
    XX. $& 
    ... $& 
    ... $& 
    ... 
  elseif ($1 == ") return $& 
    XX..XX $& 
    XX..XX $& 
    ...... $& 
    ...... $& 
    ...... 
  elseif ($1 == +) return $& 
    ...... $& 
    ..XX.. $& 
    XXXXXX $& 
    ..XX.. $& 
    ...... 
  elseif ($1 == =) return $& 
    ...... $& 
    XXXXXX $& 
    ...... $& 
    XXXXXX $& 
    ...... 
  elseif ($1 == -) return $& 
    ...... $& 
    ...... $& 
    XXXXXX $& 
    ...... $& 
    ...... 
  elseif ($1 == _) return $& 
    ...... $& 
    ...... $& 
    ...... $& 
    ...... $& 
    XXXXXX 
  elseif ($1 == ] ) return $& 
    XXXXXX $& 
    ...... $& 
    ...... $& 
    ...... $& 
    ...... 
  elseif ($1 == [) return $& 
    .XXX. $& 
    XX.XX $& 
    .XXX. $& 
    ..... $& 
    ..... 
  elseif ($1 == :) return $& 
    .. $& 
    XX $& 
    .. $& 
    XX $& 
    .. 
  elseif ($1 == !) return $& 
    XX $& 
    XX $& 
    XX $& 
    .. $& 
    XX 
  elseif ($1 == ?) return $& 
    XXX. $& 
    ..XX $& 
    .XX. $& 
    .... $& 
    .XX. 
  elseif ($1 == .) return $& 
    .. $& 
    .. $& 
    .. $& 
    .. $& 
    XX 
  elseif ($1 == /) return $& 
    ....XX $& 
    ...XX. $& 
    ..XX.. $& 
    .XX... $& 
    XX.... 
  elseif ($1 == ) return $& 
    XX.... $& 
    .XX... $& 
    ..XX.. $& 
    ...XX. $& 
    ....XX 
  elseif ($1 == $chr(40)) return $& 
    ...XX $& 
    .XX.. $& 
    XX... $& 
    .XX.. $& 
    ...XX 
  elseif ($1 == $chr(41)) return $& 
    XX... $& 
    ..XX. $& 
    ...XX $& 
    ..XX. $& 
    XX... 
  elseif ($1 == $chr(37)) return $& 
    XX..XX $& 
    ...XX. $& 
    ..XX.. $& 
    .XX... $& 
    XX..XX 
  elseif ($1 == [) return $& 
    XXXXX $& 
    XX... $& 
    XX... $& 
    XX... $& 
    XXXXX 
  elseif ($1 == ]) return $& 
    XXXXX $& 
    ...XX $& 
    ...XX $& 
    ...XX $& 
    XXXXX 
  elseif ($1 == |) return $& 
    .XX. $& 
    .XX. $& 
    .XX. $& 
    .XX. $& 
    .XX. 
  elseif ($1 == <) return $& 
    ....XX $& 
    ..XX.. $& 
    XX.... $& 
    ..XX.. $& 
    ....XX 
  elseif ($1 == >) return $& 
    XX.... $& 
    ..XX.. $& 
    ....XX $& 
    ..XX.. $& 
    XX.... 
  elseif ($1 == ) return $& 
    .... $& 
    .... $& 
    .XX. $& 
    ..XX $& 
    XXX. 
  elseif ($1 == ,) return $& 
    ... $& 
    ... $& 
    XXX $& 
    .XX $& 
    XX. 
} 



alias bigtext.unsupp { 
  var %res, %dummy = $regsub($1-, /[]a-z  0-9# $+ $chr(44) $+ '+=:!?./()%[|<>_"-]/igS, $null, %res) 
  return %res 
} 

alias bigtext.kern { 
  var %res $true 
  if ($regex($1-, /^(.|[_GDSQL-]T|[TPFVY7/"]J|T.|L[1Y"]|[LTK<[]-|-[]>%]|S1|T4|?.|.?|[467L]|[J/]|L'|//|\|J|[_]|[T_]_|>.|.<)$/i)) %res = $false 
  return %res 
} 

alias bigtext.format { 
  var %res, %i 1, %previous 0, %current, %curcolor, %colregex /^(dd?(?:,dd?)?)/ 
  while (%i <= $len($1-)) { 
    if ($mid($1-, %i, 1) == $chr(3)) { 
      if ($regex(mtcol, $mid($1-, $calc(%i + 1), $mid($1-, $calc(%i + 1), 0)), %colregex)) { 
        if ($gettok($regml(mtcol, 1), 1, 44) != %curcolor) { 
          %curcolor = $gettok($regml(mtcol, 1), 1, 44) 
          if (%i != 1) && ($mid($1-, $calc(%i - 1), 1) == X) %res = %res $+ $chr(15) 
        } 
        inc %i $len($regml(mtcol, 1)) 
      } 
      elseif (%curcolor) { 
        %curcolor = 
        if (%i != 1) && ($mid($1-, $calc(%i - 1), 1) == X) %res = %res $+ $chr(15) 
      } 
    } 
    else { 
      %current = $iif($mid($1-, %i, 1) == ., 0, 1) 
      if (%previous != %current) { 
        %previous = %current 
        if (%curcolor) { 
          if (%current) %res = %res $+ $chr(3) $+ %curcolor $+ , $+ %curcolor 
          else %res = %res $+ $chr(3) 
        } 
        else %res = %res $+ $chr(22) 
      } 
      %res = %res $+ $chr(160) 
    } 
    inc %i 
  } 
  return %res 

  alias changerandom {
    if ($1 == $null) && (%briterandom != yes) {
      set %briterandom yes
      echo -a 13,1Random Text script is now on 1,13Brite Mode
      halt
    }
    if ($1 == $null) && (%briterandom != no) {
      set %briterandom no
      echo -a 13,1Random Text script is now on 1,13Normal Mode
      halt
    }
    if ($1 == brite) || ($1 == light) || ($1 == lite) || ($1 == bright) {
      set %briterandom yes
      echo -a 13,1Random Text script is now on 1,13Brite Mode
      halt
    }
    if ($1 == normal) || ($1 == dark) || ($1 == black) || ($1 == white) {
      set %briterandom no
      echo -a 1,13Random Text script is now on 13,1Normal Mode
      halt
    }
  }
  alias random {
    if ($1 == yes) || ($1 == on) {
      set %randomtext on
      goto halt
    }
    if ($1 == no) || ($1 == off) {
      unset %randomtext
      goto halt
    }
    if (%# == $left($1,1)) {
      if ($2 == yes) || ($2 == on) {
        set %randomtext [ $+ [ $1 ] ] on
        set %random on
        goto halt
      }
      if ($2 == no) || ($2 == off) {
        unset %randomtext [ $+ [ $1 ] ]
        unset %random
        goto halt
      }
      if ($2 == $null) {
        if (%randomtext [ $+ [ $1 ] ] == $null) {
          set %randomtext [ $+ [ $1 ] ] on
          set %random on
          goto halt
        }
        if (%randomtext [ $+ [ $1 ] ] == on) {
          unset %randomtext [ $+ [ $1 ] ]
          unset %random
          goto halt
        }
      }
    }
    if ($1 == $null) {
      if (%randomtext == $null) {
        set %randomtext on
        goto halt
      }
      if (%randomtext != $null) {
        unset %randomtext
        goto halt
      }
    }
    :halt
    if (%# == $left($1,1)) && (%random == on) {
      echo -a 13,1Random Text Now On For $1 $+ 
      goto halt2
    }
    if (%# == $left($1,1)) && (%random == $null) {
      echo -a 13,1Random Text Now Off For $1 $+ 
      goto halt2
    }
    if (%randomtext == on) {
      echo -a 13,1Random Text Now On
      goto halt2
    }
    if (%randomtext == $null) {
      echo -a 13,1Random Text Now Off
      goto halt2
    }
    :halt2
    unset %random
    halt
  }
  on *:input:#:{
    if (/ == $left($1,1)) { $1- | HALT }
    haltdef
    set %say $1-
    if (%randomtext [ $+ [ $chan ] ] != $null) || (%randomtext != $null) {
      set %random.max $len($1-)
      set %random.inc 0
      set %random.inc2 0
      :again
      set %random.inc2 0
      inc %random.inc
      set %random.letter $mid(%say,%random.inc,1)
      if (%random.letter == $null) {
        set %random.letter %random.letter $+ -
        goto again3
      }
      if (%random.letter == $chr(32)) {
        set %random.letter %random.letter $+ -
        goto again3
      }
      :again2
      inc %random.inc2
      set %random.1 $rand(0,6)
      if (%random.letter isnum) {
        set %random.1 $rand(0,3)
      }
      if (%random.1 > 3) {
        set %random.2 $rand(02,28)
        if (%random.2 == 15) || (%random.2 == 08) || (%random.2 == 09) || (%random.2 == 11) {
          goto again2
        }
        if (%random.2 > 15) {
          ;black - brite script changes
          set %random.2 1
          if (%briterandom == yes) {
            set %random.2 $rand(2,15)
          }
        }
      }
      if (%random.1 == 0) {
        ;random caps
        if (%random.letter isupper) {
          set %random.letter $capsdown(%random.letter)
        }
        if (%random.letter islower) {
          set %random.letter $capsup(%random.letter)
        }
        if (%random.inc2 < 5) {
          goto again2
        }
      }
      if (%random.1 == 1) {
        ;bold
        set %random.letter  $+ %random.letter $+ 
        if (%random.inc2 < 5) {
          goto again2
        }
      }
      if (%random.1 == 2) {
        ;underlined
        set %random.letter  $+ %random.letter $+ 
        if (%random.inc2 < 5) {
          goto again2
        }
      }
      if (%random.1 == 3) {
        ;nothing
        if (%random.inc2 < 5) {
          goto again2
        }
      }
      if (%random.1 > 3) {
        ;color
        if (%random.2 != 1) {
          set %random.letter  [ $+ [ %random.2 ] ] $+ %random.letter $+ 
        }
        if (%random.inc2 < 5) {
          goto again2
        }
      }
      :again3
      if (%random.inc == 1) {
        set %random.say %random.letter
        goto again
      }
      set %random.say %random.say $+ %random.letter
      if (%random.inc == %random.max) || (%random.inc > %random.max) {
        goto end
      }
      goto again
      :end
      set %random.say $replace(%random.say,-,$chr(32))
      set %say %random.say
      unset %random.*
    }
    msg $chan %say
    halt
  }
  alias capsup {
    return $replace($1-,a,A,b,B,c,C,d,D,e,E,f,F,g,G,h,H,i,I,j,J,k,K,l,L,m,M,n,N,o,O,p,P,q,Q,r,R,s,S,t,T,u,U,v,V,w,W,x,X,y,Y,z,Z)
  }
  alias capsdown {
    return $replace($1-,A,a,B,b,C,c,D,d,E,e,F,f,G,g,H,h,I,i,J,j,K,k,L,l,M,m,N,n,O,o,P,p,Q,q,R,r,S,s,T,t,U,u,V,v,W,w,X,x,Y,y,Z,z)
  }

  alias shadow {
    if ($len($1-) > 115) {
      echo -a Too many characters entered. Max 115
      halt
    }
    else {
      var %c = $rand(3,13)
      if ($1 == /me) {
        msg $active  $+ %c $+ , $+ %c $+ X $+ * $me $2- $+ X
        msg $active  $+ %c $+ , $+ %c $+ X1, $+ %c $+ * $me $2- $+  $+ %c $+ , $+ %c $+ X $+ 14,14X
        msg $active  $+ %c $+ , $+ %c $+ X $+ %c $+ , $+ %c $+ * $me $2- $+  $+ %c $+ , $+ %c $+ X $+ 14,14X
        msg $active 0,0X14,14 $+ X $+ * $me $2- $+ X
      }
      else {
        msg $active  $+ %c $+ , $+ %c $+ X $+ $1- $+ X
        msg $active  $+ %c $+ , $+ %c $+ X1, $+ %c $+ $1- $+  $+ %c $+ , $+ %c $+ X $+ 14,14X
        msg $active  $+ %c $+ , $+ %c $+ X $+ %c $+ , $+ %c $+ $1- $+  $+ %c $+ , $+ %c $+ X $+ 14,14X
        msg $active 0,0X14,14 $+ X $+ $1- $+ X
      }
    }
  }

  .-
  .Troubleshooting:wtxsetup tshoot
}