alias vinfo { set %v.state wait hs waiting } on *:notice:*:?:{ if ($nick == HostServ) { ;echo -a triggered if (%v.state == wait) { if ($regex($1-,/Displayed\sall\srecords/Si)) { set %v.state list | .timer 1 2 vhost.prev | halt } writeini vhosts.ini waiting $remove($2,Nick:,$chr(44)) $remove($3,vhost:) } elseif (%v.state == list) { if ($regex($1-,/Displayed\srecords\smatching/Si)) { halt } writeini vhosts.ini prev $remove($2,Nick:,$chr(44)) $remove($3,vhost:) writeini vhosts.ini time $remove($2,Nick:,$chr(44)) $ctime($remove($6-,$chr(41))) } } if ($nick == NickServ) { if (%v.group) && ($regex($1-,/(\d)+\snicknames\sin\sthe\sgroup\./Si)) { writeini vhosts.ini group %v.group $regml(1) vhost.group } } } alias vhost.prev { ;echo -a vhost.prev var %i = 1 while (%i <= $ini(vhosts.ini,waiting,0)) { hs list $ini(vhosts.ini,waiting,%i) inc %i } vhost.group .timer 1 10 vhost.disp .timer 1 11 unset %v.state } alias vhost.group { if (!%v.group) { set %v.group.i 1 } if ($ini(vhosts.ini,waiting,%v.group.i)) { set %v.group $ini(vhosts.ini,waiting,%v.group.i) ns glist $ini(vhosts.ini,waiting,%v.group.i) inc %v.group.i } } alias vhost.disp { var %i = 1 while (%i <= $ini(vhosts.ini,waiting,0)) { var %x = $ini(vhosts.ini,waiting,%i) msg #boten.anna vHost request by: %x Request: $readini(vhosts.ini,waiting,%x) $& $iif($ini(vhosts.ini,prev,%x),Last vHost: $readini(vhosts.ini,prev,%x) $iif($calc($calc($ctime + 7200) - $readini(vhosts.ini,time,%x)) >= 1209600,Time Ok,Time left: $duration($calc(1209600 - $calc($calc($ctime + 7200) - $readini(vhosts.ini,time,%x))),2)),no previous vhost) $& Grouped nicks: $readini(vhosts.ini,group,%x) inc %i } unset %v.state unset %v.group remini vhosts.ini waiting remini vhosts.ini prev remini vhosts.ini time remini vhosts.ini group }