rendered paste bodyALIAS CLONE {
IF ($0) {
IF ($V1 == 2) {
IF ($IALCHAN($+(*!*@,$1),$2,0) > 1) {
VAR %CLONE_NUMBER $V1, %CLONE_OUT
WHILE (%CLONE_NUMBER) {
%CLONE_OUT = $ADDTOK(%CLONE_OUT,$IALCHAN($+(*!*@,$1),$2,$V1).NICK,44)
DEC %CLONE_NUMBER
}
RETURN $+($CHR(40),*!*@,$1,$CHR(41)) %CLONE_OUT
}
}
ELSE {
IF ($1 ISCHAN) {
HMAKE CLONE_TMP 1000
VAR %CLONE_NICKS $NICK($1,0), %CLONE_TOTAL
WHILE (%CLONE_NICKS) {
IF ($IALCHAN($ADDRESS($NICK($1,%CLONE_NICKS),2),$1,0) > 1) { HADD CLONE_TMP $ADDRESS($NICK($1,%CLONE_NICKS),2) $ADDTOK($NICK($1,%CLONE_NICKS),$HGET(CLONE_TMP,$ADDRESS($NICK($1,%CLONE_NICKS),2)),44) }
DEC %CLONE_NICKS
}
HSAVE -i CLONE_TMP CLONE_TMP.INI
HFREE CLONE_TMP
WINDOW -ahH @CLONE
WRITE -dl1 CLONE_TMP.INI
FILTER -cteufw 2 61 CLONE_TMP.INI @CLONE
.REMOVE CLONE_TMP.INI
VAR %PARSE.DATA 1
WHILE ($LINE(@CLONE,%PARSE.DATA)) { TOKENIZE 61 $V1 | msg $ACTIVE CLONE: $+($CHR(40),$1,$CHR(41)) $2- | INC %PARSE.DATA }
.CLOSE -@ @CLONE
}
}
}
ELSE {
IF ($ACTIVE ISCHAN) {
HMAKE CLONE_TMP 1000
VAR %CLONE_NICKS $NICK($CHAN,0), %CLONE_TOTAL
WHILE (%CLONE_NICKS) {
IF ($IALCHAN($ADDRESS($NICK($ACTIVE,%CLONE_NICKS),2),$ACTIVE,0) > 1) { HADD CLONE_TMP $ADDRESS($NICK($ACTIVE,%CLONE_NICKS),2) $ADDTOK($NICK($ACTIVE,%CLONE_NICKS),$HGET(CLONE_TMP,$ADDRESS($NICK($ACTIVE,%CLONE_NICKS),2)),44) }
DEC %CLONE_NICKS
}
HSAVE -i CLONE_TMP CLONE_TMP.INI
HFREE CLONE_TMP
WINDOW -ahH @CLONE
WRITE -dl1 CLONE_TMP.INI
FILTER -cteufw 2 61 CLONE_TMP.INI @CLONE
.REMOVE CLONE_TMP.INI
VAR %PARSE.DATA 1
WHILE ($LINE(@CLONE,%PARSE.DATA)) { TOKENIZE 61 $V1 | msg $ACTIVE CLONE: $+($CHR(40),$1,$CHR(41)) $2- | INC %PARSE.DATA }
.CLOSE -@ @CLONE
}
}
}
ON *:JOIN:#: {
IF ($NICK != $ME) { IF ($CLONE($SITE,$CHAN)) { msg $CHAN $V1 } }
ELSE { .WHO $CHAN | .ENABLE #CLONE.CHK | SET %CLONE_CHAN $CHAN }
}
#CLONE.CHK OFF
raw 352:*: { HALT }
raw 315:*: { CLONE %CLONE_CHAN | UNSET %CLONE_CHAN | .DISABLE #CLONE.CHK | HALT }
#CLONE.CHK END