on $*:TEXT:/^[!@](idlename|idledef)/Si:#:{ writeini idlenames.ini Nicks $address($nick,1) $2- .notice $nick $c2(Your default name for) $c1($address($nick,1)) $c2(has been set to) $c1($2-) } on $*:text:/^[!@](idle|idlestats)/Si:#: { set %idle.way $iif($left($1,1) == @, .msg $chan, .notice $nick) if (!$2) && ($readini(idlenames.ini,n,Nicks,$address($nick,1))) { set %idle.nick $readini(idlenames.ini,n,Nicks,$address($nick,1)) } elseif (!$2) { set %idle.nick $nick } else { set %idle.nick $2- } sockopen IRPG www.superirc.info 80 } on *:SOCKOPEN:IRPG: { sockwrite -nt $sockname GET /irpg.php?player= $+ %idle.nick sockwrite -nt $sockname Host: www.superirc.info sockwrite -nt $sockname $crlf $crlf } on *:SOCKREAD:IRPG: { if ($sockerr) { echo -at ** Error ** in scoket: $sockerr | halt } else { var %sockreader sockread %sockreader if (*No such user.* iswm %sockreader) { %idle.way $c2(ERROR: User) $c1(%idle.nick) $c2(was not found.) | unset %idle.* | set %idle.wrong 1 | halt } if (*Level:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.lvl $nohtml($2) } if (*Class:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.class $nohtml($2-) } if (*Next level:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.nxtlvl $nohtml($remove($2-,level:)) } if (*Total time idled:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.total $nohtml($remove($2-,time idled:)) } if (*sum:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.sum $nohtml($2-) } if (*Status:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.status $nohtml($2-) } if (*[* iswm %sockreader) { tokenize 32 %sockreader | %idle.specits = %idle.specits $nohtml($remove($3-,[,])) $+($chr(40),$nohtml($2),$chr(41)) - } if (*Alignment:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.align $nohtml($2-) } if ($regex(%sockreader,.(0[1-9]|1[012])[/](0[1-9]|[12][0-9]|3[01])[/]07)) { tokenize 32 %sockreader | set %idle.charmods $nohtml([ $+ $2-) } } } on *:sockclose:IRPG: { if ($var(%idle.wrong)) { unset %idle.wrong | halt } else { %idle.way $c2(Player info for :**) $c1(%idle.nick) $c2(**:) %idle.way $c2(Level:) $c1(%idle.lvl) $c2(Next level in:) $c1(%idle.nxtlvl) $c2(Total Time Idled:) $c1(%idle.total) $c2(Class:) $c1(%idle.class) $c2(Item Sum:) $c1(%idle.sum) $c2(Status:) $c1(%idle.status) $c2(Alignment:) $c1(%idle.align) %idle.way $c2(Recent Character Modifications:) $c1(%idle.charmods) if ($var(%idle.specits)) { %idle.way $c2(Special Items:) $c1(%idle.specits) } else { %idle.way $c2(Special Items:) $c1(NONE) } unset %idle.* } } on $*:TEXT:/^[!@](quest|idlequest)/Si:#:{ .set %quest.way $iif($left($1,1) == @,.msg $chan,.notice $nick) .sockopen QUEST www.superirc.info 80 } on *:SOCKOPEN:QUEST: { sockwrite -nt $sockname GET /irpg.php?id=quest sockwrite -nt $sockname Host: www.superirc.info sockwrite -nt $sockname $crlf $crlf } on *:SOCKREAD:QUEST: { if ($sockerr) { echo -at ** Error ** in socket: $sockerr | halt } else { var %questit sockread %questit if (*

Sorry, there is no active quest.

* iswm %questit) { %quest.way $c2(Sorry, there is no active quest for the) $c1(SuperIRC) $c2(network.) unset %quest.* set %quest.wrong 1 halt } if (*

Quest:* iswm %questit) { tokenize 32 %questit set %quest.info $nohtml($2-) } if (*p>Participant 1:* iswm %questit) { tokenize 32 %questit set %quest.par1 $nohtml($3-) } if (*p>Participant 2:* iswm %questit) { tokenize 32 %questit set %quest.par2 $nohtml($3-) } if (*p>Participant 3:* iswm %questit) { tokenize 32 %questit set %quest.par3 $nohtml($3-) } if (*p>Participant 4:* iswm %questit) { tokenize 32 %questit set %quest.par4 $nohtml($3-) } if (*Position:* iswm %questit) { tokenize 32 %questit if (!%quest.po1) set %quest.po1 $nohtml($2) elseif (!%quest.po2) set %quest.po2 $nohtml($2) elseif (!%quest.po3) set %quest.po3 $nohtml($2) elseif (!%quest.po4) set %quest.po4 $nohtml($2) } if (*

Current Goal:* iswm %questit) { tokenize 32 %questit set %quest.goal $nohtml($3-) } if (*

Time to completion:* iswm %questit) { tokenize 32 %questit set %quest.goal $remove($nohtml($3-),completion:) } } } on *:SOCKCLOSE:QUEST: { if ($var(%quest.wrong)) { unset %quest.wrong | halt } else { %quest.way $c2(Current Quest Info:) $c1(%quest.info) %quest.way $c2(Quest Goal:) $c1(%quest.goal) %quest.way $c2(Participant's: 1:) $c1(%quest.par1) $iif(%quest.po1 != $null,$c2(Position:) $c1(%quest.po1)) $c2(2:) $c1(%quest.par2) $iif(%quest.po2 != $null,$c2(Position:) $c1(%quest.po2)) $c2(3:) $c1(%quest.par3) $iif(%quest.po3 != $null,$c2(Position:) $c1(%quest.po3)) $c2(4:) $c1(%quest.par4) $iif(%quest.po4 != $null,$c2(Position:) $c1(%quest.po4)) } unset %quest.* } on $*:text:/^[!@](cirpg|compidle)/Si:#: { if (!$2) || (!$3) { .notice $nick $c2(Syntax:) $c1(!cirpg NAME1 NAME2) halt } else { set %idle.way1 $iif($left($1,1) == @,.msg $chan,.notice $nick) set %idle.nick1 $2 set %idle.nick2 $3 sockopen IRPG1 pure.nullrouted.biz 80 sockopen IRPG2 pure.nullrouted.biz 80 } } on *:SOCKOPEN:IRPG1: { sockwrite -nt $sockname GET /~xnemesis/playerview.php?player= $+ %idle.nick1 sockwrite -nt $sockname Host: pure.nullrouted.biz sockwrite -nt $sockname $crlf $crlf } on *:SOCKREAD:IRPG1: { if ($sockerr) { echo -at ** Error ** in scoket: $sockerr | halt } else { var %sockreader sockread %sockreader if (*No such user.* iswm %sockreader) { set %idle.wrong1 1 | halt } if (*Level:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.lvl1 $nohtml($2) } if (*Class:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.class1 $nohtml($2-) } if (*Next level:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.nxtlvl1 $nohtml($remove($2-,level:)) } if (*sum:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.sum1 $nohtml($2-) } if (*Status:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.status1 $nohtml($2-) } if (*Alignment:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.align1 $nohtml($2-) } } } on *:SOCKOPEN:IRPG2: { sockwrite -nt $sockname GET /~xnemesis/playerview.php?player= $+ %idle.nick2 sockwrite -nt $sockname Host: pure.nullrouted.biz sockwrite -nt $sockname $crlf $crlf } on *:SOCKREAD:IRPG2: { if ($sockerr) { echo -at ** Error ** in scoket: $sockerr | halt } else { var %sockreader sockread %sockreader if (*No such user.* iswm %sockreader) { set %idle.wrong2 1 | halt } if (*Level:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.lvl2 $nohtml($2) } if (*Class:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.class2 $nohtml($2-) } if (*Next level:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.nxtlvl2 $nohtml($remove($2-,level:)) } if (*sum:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.sum2 $nohtml($2-) } if (*Status:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.status2 $nohtml($2-) } if (*Alignment:* iswm %sockreader) { tokenize 32 %sockreader | set %idle.align2 $nohtml($2-) } } } on *:SOCKCLOSE:IRPG2: { if (%idle.wrong1 == 1) || (%idle.wrong2 == 1) { %idle.way1 $c2(User) $c1($iif(%idle.nick1 == 1,%idle.nick1,%idle.nick2)) $c2(was not found.) | unset %idle.* | unset %idle.* | halt } else { %idle.way1 $c2(Idle comparison for) $c2($chr(40)) $+ $c1(%idle.nick1) $c2(the level) $c1(%idle.lvl1) $c1(%idle.class1) $c2($chr(40)) $+ $c1(%idle.status1) $+ $c2($chr(41)) $+ $c2($chr(41)) $c2(and) $c2($chr(40)) $+ $c1(%idle.nick2) $c2(the level) $c1(%idle.lvl2) $c1(%idle.class2) $c2($chr(40)) $+ $c1(%idle.status2) $+ $c2($chr(41)) $+ $c2($chr(41)) $+ $c2(:) %idle.way1 $c2($chr(40)) $+ $c1(%idle.nick1) $+ $c2($chr(41)) $+ $c2('s) $c2(alignment is) $c1(%idle.align1) $c2(and) $c2($chr(40)) $+ $c1(%idle.nick2) $+ $c2($chr(41)) $+ $c2('s) $c2(alignment is) $c1(%idle.align2) $+ $c2(.) %idle.way1 $c2($chr(40)) $+ $c1(%idle.nick1) $+ $c2($chr(41)) $c2(is) $c1($datediff(%idle.nxtlvl1,%idle.nxtlvl2,wdhns)) $c2($iif(%idle.nxtlvl1 < %idle.nxtlvl2,behind,ahead)) $c2($chr(40)) $+ $c1(%idle.nick2) $+ $c2($chr(41)) $+ $c2(.) %idle.way1 $c2($chr(40)) $+ $c1(%idle.nick1) $+ $c2($chr(41)) $c2(has) $c1($iif(%idle.sum1 < %idle.sum2, $calc(%idle.sum2 - %idle.sum1), $calc(%idle.sum1 - %idle.sum2))) $c2($iif(%idle.sum1 < %idle.sum2,less,more)) $c2(of an item sum than) $c2($chr(40)) $+ $c1(%idle.nick2) $+ $c2($chr(41)) $+ $c2(.) unset %idle.* } } alias datediff { var %t,%result,%n = $crlf , %com = dd $+ $ticks, %s = $iif($3,$qt($1),Date) , %e = $qt($iif($3,$2,$1)), %values = $($+($,$0),2), $& %error = $regex(%values,/[^yqmwadhns]/g), %values = $gettok($regsubex(%values,/([yqmwdhnsa])/g,$+(\t,$chr(44))),1-,44), $& %right = y,q,m,w,d,h,n,s, %values = $iif(a !isin %values,$gettok($remove(%right, [ $remove(%right, [ %values ] ) ] ),1-,44),%right) if ($istok(95 98,$os,32)) return E_OS if (%error) return E_FORMAT %t = Dim sd,ed,ret, $+ %values %n sd = %s %n ed = %e %n If isDate(sd) AND isDate(ed) Then %n tokenize 44 %values while ($0) { %t = %t $1 = DateDiff( $qt($replace($upper($1),y,YYYY)) ,sd,ed) %n if (e !isin $prop) %t = %t sd = DateAdd( $qt($replace($upper($1),y,YYYY,w,ww)) , $1 ,sd) %n tokenize 32 $2- } %t = %t ret = $replace(%values,$chr(44),$+($chr(32),&,,$chr(32)," ",,$chr(32),&,$chr(32))) %n Else ret = "E_DATE" %n End If .comopen %com MSScriptControl.ScriptControl if ($comerr) return E_COM noop $com(%com,language,4,bstr*,vbscript) if ($com(%com,executestatement,1,bstr*,%t)) && ($com(%com,eval,3,bstr*,ret )) %result = $com(%com).result else return = E_VB :error if ($com(%com)) .comclose %com $com(%com,reset,1) if ((E_* iswm %result) || (s isin $prop)) return %result else return $regsubex($replacex($regsubex(%result,/(\d+)/g,$+(\t,$gettok(%values,\n,44))),y,years,m,months,q,quarters,w,weeks,d,days,h,hours,n,minutes,s,seconds),/(?