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 /^(\d\d?(?:,\d\d?)?)/
var %regex = /(?<= $+ $chr(3) $+ [0-9]| $+ $chr(3) $+ [0-9][0-9]) $+ $chr(44) $+ \d\d?/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 rbig {
big $rainbow($1-);
}
alias rtxt {
msg $chan $+ $rainbowtxt($1-);
}
alias rnick {
nick $rainbow($1-);
}
alias rtxtnick {
nick $rainbowtxt($1-);
}
alias rt {
msg $chan $+ $rainbowtxt($1-) $rainbow($1-);
}
alias rban {
set %rban $rainbow($1-);
mode $chan +b-b %rban %rban
}
alias rtopic {
topic $chan $rainbow($1-);
}
; You may customize this alias however you want to.
; It is Big Text's font, used above.
; The return value consists of dots and X's, to denote
; unlit and lit points in the font, respectively;
; there are 5 tokens of the same length, each
; corresponding to a line in the 5-line output.
; Note how the . and X's look like the characters;
; you can use this to your advantage!
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.
elseif ($1 == ^) return $&
..XX.. $&
X....X $&
....... $&
....... $&
.......
elseif ($1 == ;) return $&
XXX $&
...$&
XXX $&
.XX $&
XX.
elseif ($1 == ü) return $&
XX..XX $&
...... $&
XX..XX $&
XX..XX $&
.XXXX.
}
; Returns all unsupported characters within a Big Text message
; Supported characters are a-z, space, digits, #'"+=°:!?./\()%-[]<>|¸,
alias bigtext.unsupp {
var %res, %dummy = $regsub($1-, /[]a-z 0-9# $+ $chr(44) $+ '+ü=°^;:!?./\\()%[|<>_¯"¸-]/igS, $null, %res)
return %res
}
; Returns $true if a space should be added between two characters,
; or $false if not.
; Note: This is here only for aesthetic purposes. :)
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
}
; Takes an input string of the form:
; .XX..XX....XX.XX.XXXXX
; And formats it for display.
alias bigtext.format {
var %res, %i 1, %previous 0, %current, %curcolor, %colregex /^(\d\d?(?:,\d\d?)?)/
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 gayshit {
var %g = $chr(2) $chr(31)
var %p = $numtok(%g,32)
var %l = $len($1-) , %tx
var %ct $replace($1-,$chr(32),ã)
var %i = 0
while (%i <= %l) {
var %r = $r(1,2)
inc %i
if (%r == 1) {
%tx = %tx $+ $+($gettok(%g,$r(1,%p),32),$mid(%ct,%i,1))
}
if (%r == 2) {
%tx = %tx $+ $+($gettok(%g,$r(1,%g),32),$mid(%ct,%i,1),$gettok(%g,$r(1,%p),32))
}
}
return $replace(%tx,ã,$chr(32))
}
alias rainbowtxt {
if (%countertxt == $null) { set %countertxt 1 }
set %countertxt $calc(%countertxt + 1)
if (%countertxt > 7) set %countertxt 1
var %coltxt 04 07 08 09 11 12 13
var %rbotxt 1 , %rbtxt %countertxt , %txatxt
var %cttxt $replace($1-,$chr(32),ã) , %rttxt 1
while (%rbotxt < $CALC($len(%cttxt) + 1 )) {
if (%rbtxt > 7) %rbtxt = 1
%txatxt = %txatxt $+ $($chr(3) $+ $gettok(%coltxt,%rbtxt,32)) $+ $mid(%cttxt,%rbotxt,1)
inc %rbotxt
inc %rbtxt
}
set %rrtxt %rbtxt
return $replace(%txatxt,ã,$chr(32))
}
alias rainbow {
if (%counter == $null) { set %counter 1 }
set %counter $calc(%counter + 1)
if (%counter > 12) set %counter 1
var %col 04 07 08 09 03 10 11 12 02 06 13 05
var %rbo 1 , %rb %counter , %txa
var %ct $replace($1-,$chr(32),ã) , %rt 1
while (%rbo < $CALC($len(%ct) + 1 )) {
if (%rb > 12) %rb = 1
%txa = %txa $+ $($chr(3) $+ $gettok(%col,%rb,32)) $+ $mid(%ct,%rbo,1)
inc %rbo
inc %rb
}
set %rr %rb
return $replace(%txa,ã,$chr(32))
}
alias r {
say $+ $rainbow($1-);
}
alias gs {
say $gayshit($1-);
}
alias rgs {
say $rainbow($gayshit($1-));
}
alias warning {
say 8,1W1,8A8,1R1,8N8,1I1,8N8,1G0,4 $& $upper($1-) $& 8,1W1,8A8,1R1,8N8,1I1,8N8,1G
}
alias caution {
say 8,1C1,8A8,1U1,8T8,1I1,8O8,1N0,4 $& $upper($1-) $& 8,1C1,8A8,1U1,8T8,1I1,8O8,1N
}
alias alert {
say 8,1A1,8L8,1E1,8R8,1T1,80,4 $& $upper($1-) $& 8,1A1,8L8,1E1,8R8,1T
}
alias fb {
say 8,0***FLASH0,8BANG*** $& $upper($1-) $& 8,0***FLASH0,8BANG***
say 0,8***FLASH8,0BANG*** $& $upper($1-) $& 0,8***FLASH8,0BANG***
}
alias piss {
say 5,8piss on me8,5piss on me5,8piss on me8,5piss on me5,8piss on me8,5piss on me
say 8,5piss on me5,8piss on me8,5piss on me5,8piss on me8,5piss on me5,8piss on me
}
alias sekretmsg {
say <sekretmsg $1 $+ > $+ $2- $+ </sekretmsg>
}
alias xmas1 {
var %i = 1
while (%i <= $0) {
if (%switch1 == 0) {
set %switch1 1
set %col 04,09
goto skip
}
if (%switch1 == 1) {
set %switch1 0
set %col 09,04
goto skip
}
:skip
var %output = %output $& %col $+ $gettok($1-,%i,32)
inc %i
}
say %output
}
alias xmas2 {
set %start %switch2
var %i = 1
var %x $replace($1-,$chr(32),ª)
while (%i <= $len(%x)) {
if ($mid(%x,%i,1) == ª) {
set %col 00
goto skip
}
if (%switch2 == 0) {
set %switch2 1
set %col 09,04
goto skip
}
if (%switch2 == 1) {
set %switch2 0
set %col 04,09
goto skip
}
:skip
var %output = %output $+ %col $+ $mid(%x,%i,1))
inc %i
}
say $replace(%output,ª,$chr(32))
if (%start == %switch2) {
if (%switch2 == 1) {
set %switch2 0
halt
}
if (%switch2 == 0) {
set %switch2 1
halt
}
}
}