All pastes #135129 Raw Edit

Charmed

public text v1 · immutable
#135129 ·published 2006-08-16 18:45 UTC
rendered paste body
on *:start: {
  nicktracker
}
on ^*:join:#: {
  if (!$hget(join)) nicktracker
  hinc join $address($nick,2) $+ $chan $+ .num
  if ($hget(join,$address($nick,2) $+ $chan $+ .last)) echo $color(join) -t #  * $nick has joined # ( $+ $gettok($address( $nick ,5),2,$asc(!)) $+ ) - Joined $hget(join,$address($nick,2) $+ $chan $+ .num) times - Last as $hget(join,$address($nick,2) $+ $chan) $duration($calc($ctime - $hget(join,$address($nick,2) $+ $chan $+ .last))) ago
  else echo $color(join) -t # * $nick has joined # ( $+ $gettok($address( $nick ,5),2,$asc(!)) $+ ) - First join
  hadd join $address($nick,2) $+ $chan $nick
  hadd join $address($nick,2) $+ $chan $+ .last $ctime
  var %a = 1,%n = 0,%b = 1
  while $hget(join,$address($nick,2) $+ .nicknum. $+ %a) {
    if ($v1 == $nick) %n = 1 
    inc %a
  }
  if (%n == 0) hadd join $address($nick,2) $+ .nicknum. $+ %a $nick
  while $nick(#,%b) {
    if ($nick(#,%b) != $nick) && ($address($nick(#,%b),2) == $address($nick,2)) echo $color(Mode) -t # * $nick is the clone of $nick(#,%b) $+ !
    inc %b
  }
  haltdef
}
on *:nick: {
  if (!$hget(join)) nicktracker
  var %a = 1,%n = 0
  while $hget(join,$address($newnick,2) $+ .nicknum. $+ %a) {
    if ($v1 == $newnick) %n = 1 
    inc %a
  }
  if (%n == 0) hadd join $address($newnick,2) $+ .nicknum. $+ %a $newnick
}
menu nicklist {
  Previous nicks:/prevnicks $$1
}
alias prevnicks {
  if (!$hget(join)) nicktracker
  var %a = 1,%s
  while $hget(join,$address($1,2) $+ .nicknum. $+ %a) {
    %s = %s $v1
    inc %a
  }
  echo $color(join) -t # * $1 has had the nicks: %s
}
alias nicktracker {
  hmake join 1000
  hload join join.hsh
  .timer 0 600 hsave join join.hsh
}