All pastes #839017 Raw Edit

Anonymous

public text v1 · immutable
#839017 ·published 2007-12-30 20:21 UTC
rendered paste body
ON *:START: {
  hmake seen 100
  if ($isfile(seen.dat)) { hload seen seen.dat }
}
ON *:EXIT: {
  if ($hget(seen)) { hsave -o seen seen.dat }
}
ON *:TEXT:*:#: {
  if ($chan == #kingsofchaos) { halt }
  hadd seen $nick text $chan $ctime $1-
  if ($1 = !seen) {
    if ($2 ison $chan) { msg $chan $2 is right here. }
    else { msg $chan $nick $+ : $seenparse($2) }
  }
}
alias seen {
  echo $colour(info) -a *** $seenparse($1)
}
ON *:ACTION:*:#: {
  hadd seen $nick act $chan $ctime $1-
}
ON *:QUIT: {
  hadd seen $nick quit $ctime $1-
}
on *:PART:#: {
  hadd seen $nick part $chan $ctime $1-
}
on *:JOIN:#: {
  hadd seen $nick join $chan $ctime $1-
}
ON *:NICK: {
  hadd seen $nick nick $newnick $ctime
}
ON *:KICK:#: {
  hadd seen $nick kicking $chan $ctime $knick $1-
  hadd seen $knick kick $chan $ctime $nick $1-
}
alias -l seenparse {
  var %x = $hget(seen,$1)
  if (!%x) { return I have not seen $1 }
  var %n = $1
  tokenize 32 %x
  if ($1 = text) { return I last saw %n in $2 $duration($calc($ctime - $3)) ago saying $4- }
  if ($1 = act) { return I last saw %n in $2 $duration($calc($ctime - $3)) ago acting $4- }
  if ($1 = quit) { return I last saw %n quiting $duration($calc($ctime - $2)) ago $iif($3,with the message $3-) }
  if ($1 = part) { return I last saw %n leaving $2 $duration($calc($ctime - $3)) ago with the message $4- }
  if ($1 = join) { return I last saw %n joining $2 $duration($calc($ctime - $3)) ago. }
  if ($1 = nick) { return I last saw %n changing their nickname to $2 $duration($calc($ctime - $3)) ago. }
  if ($1 = kicking) { return I last saw %n kicking $4 from $2 $duration($calc($ctime - $3)) ago with the reason $5- }
  if ($1 = kick) { return I last saw %n being kicked from $2 by $4 $duration($calc($ctime - $3)) with the reason $5- }
}