Previous Nick Addon v3.5

By DarthReven on Jan 05, 2005

This is an update to my Previous nick script.

Additional addons to the script will be posted at a later date.

If you want a copy of the orginal v3.0 I will be keeping a copy loaded in my network drive and well send it upon request.

ON *:START: {
  HMAKE PREV_SEEN 1000
  IF ($EXISTS(PREV_SEEN.HSH)) { HLOAD PREV_SEEN PREV_SEEN.HSH }
}
ON *:EXIT: { HSAVE -o PREV_SEEN PREV_SEEN.HSH }
ON *:JOIN:#: {
  IF ($NICK != $ME) {
    IF ($HGET(PREV_SEEN,$+(PREV.,$SITE))) {
      TOKENZIE 32 $V1
      IF ($ISTOK($2-,$NICK,32)) {
        IF ($NUMTOK($2-,32) > 10) {
          ECHO $COLOR(CTCP) -t $CHAN [PREVIOUS NICK] - $NICK was: $GETTOK($2-,2-,32)
          ECHO $COLOR(CTCP) -t $CHAN [PREVIOUS NICK] - $NICK was last seen: $ASCTIME($GETTOK($1,1,45))
          HADD PREV_SEEN $+(PREV.,$SITE) $+($CTIME,-,$NETWORK,-,$ASCTIME(mm)) $GETTOK($2-,2-11,32)
        }
        ELSE {
          ECHO $COLOR(CTCP) -t $CHAN [PREVIOUS NICK] - $NICK was: $2-
          ECHO $COLOR(CTCP) -t $CHAN [PREVIOUS NICK] - $NICK was last seen: $ASCTIME($GETTOK($1,1,45))
          HADD PREV_SEEN $+(PREV.,$SITE) $+($CTIME,-,$NETWORK,-,$ASCTIME(mm)) $2-
        }
      }
      ELSE {
        IF ($NUMTOK($REMTOK($2-,$NICK,1,32),32) > 10) {
          ECHO $COLOR(CTCP) -t $CHAN [PREVIOUS NICK] - $NICK was: $GETTOK($REMTOK($2-,$NICK,1,32),2-,32)
          ECHO $COLOR(CTCP) -t $CHAN [PREVIOUS NICK] - $NICK was last seen: $ASCTIME($GETTOK($1,1,45))
          HADD PREV_SEEN $+(PREV.,$SITE) $+($CTIME,-,$NETWORK,-,$ASCTIME(mm)) $MOVETOK($GETTOK($2,3-,32),$NICK,$NUMTOK($GETTOK($2,3-,32),32),32)
        }
        ELSE {
          ECHO $COLOR(CTCP) -t $CHAN [PREVIOUS NICK] - $NICK was: $REMTOK($2-,$NICK,1,32)
          ECHO $COLOR(CTCP) -t $CHAN [PREVIOUS NICK] - $NICK was last seen: $ASCTIME($GETTOK($1,1,45))
          HADD PREV_SEEN $+(PREV.,$SITE) $+($CTIME,-,$NETWORK,-,$ASCTIME(mm)) $MOVETOK($2-,$NICK,$NUMTOK($2-,32),32)
        }
      }
    }
    ELSE { HADD PREV_SEEN $+(PREV.,$SITE) $+($CTIME,-,$NETWORK,-,$ASCTIME(mm)) $NICK }
  }
}
ON *:PART:#: {
  IF ($HGET(PREV_sEEN,$+(PREV.,$SITE)) { TOKENIZE 32 $V1 | HADD PREV_SEEN $+(PREV.,$SITE) $+($CTIME,-,$NETWORK,-,$ASCTIME(mm)) $2- }
  ELSE { HADD PREV_SEEN $+(PREV.,$SITE) $+($CTIME,-,$NETWORK,-,$ASCTIME(mm)) $NICK }
}
ON *:QUIT: {
  IF ($HGET(PREV_sEEN,$+(PREV.,$SITE)) { TOKENIZE 32 $V1 | HADD PREV_SEEN $+(PREV.,$SITE) $+($CTIME,-,$NETWORK,-,$ASCTIME(mm)) $2- }
  ELSE { HADD PREV_SEEN $+(PREV.,$SITE) $+($CTIME,-,$NETWORK,-,$ASCTIME(mm)) $NICK }
}
ON *:NICK: {
  IF ($HGET(PREV_sEEN,$+(PREV.,$SITE)) { HADD PREV_SEEN $+(PREV.,$SITE) $+($CTIME,-,$NETWORK,-,$ASCTIME(mm)) $ADDTOK($ADDTOK($2-,$NICK,32),$NEWNICK,32) }
  ELSE { HADD PREV_SEEN $+(PREV.,$SITE) $+($CTIME,-,$NETWORK,-,$ASCTIME(mm)) $NICK }
}
ALIAS MOVETOK {
  ;$MOVETOK(TEXT,TOKEN,N,C)
  ;N = Position you wish to move the token to
  IF ($ISTOK($1,$2,$4)) {
    IF ($NUMTOK($1,$4) >= $3) {
      IF ($GETTOK($1,$3,$4) != $2) {
        IF ($3 == 1) { RETURN $+($2,$CHR($4),$REMTOK($1,$2,1,$4)) }
        ELSEIF ($3 == $NUMTOK($1,$4)) { RETURN $+($REMTOK($1,$2,1,$4),$CHR($4),$2) }
        ELSE { RETURN $+($GETTOK($REMTOK($1,$2,1,$4),$IIF($CALC($3 -1) > 1,$+(1-,$V1),1),$4),$CHR($4),$2,,$CHR($4),$GETTOK($REMTOK($1,$2,1,$4),$+($3,-),$4)) }
      }
      ELSE { BEEP 2 | ECHO $COLOR(INFO) -a [ERROR] - $2 IS ALREADY IN POSITION $3 }
    }
    ELSE { BEEP 2 | ECHO $COLOR(INFO) -a [ERROR] - SORRY YOU PROVIDED A NUMBER GREATER THEN THE NUMBER OF TOKENS }
  }
  ELSE { BEEP 2 | ECHO $COLOR(INFO) -a [ERROR] - SORRY BUT $2 IS NOT FOUND IN THE TEXT GIVEN }
}

Comments

Sign in to comment.
Daid   -  Feb 19, 2008

disappointed....all i get are errors for /if: invalid format

I\'ve yet to find one of these scripts that works really well....and don\'t know enough to script my own

 Respond  
Lindrian   -  Jan 29, 2007

yes please, pm me it or something. Thank you.

 Respond  
DarthReven   -  Jan 29, 2007

It has been tweeked and adjusted but i haven\'t releaced it here on hawkee cause I\'ve built it into my code and I haven\'t gotten around to make a version that is seperate. More then likely I won\'t post it here cause i\'m only here late at night for a few hours when i\'m not taking clases or fixing computers. If you want a more upto date copy i can send you a copy of my code and you could take it out of it.

 Respond  
Lindrian   -  Jan 28, 2007

Very nice, I like it. Isnt there a way to limit the nicks that shows up on join? Or like delete the last ones when it reaches a certain limit. Cause, it might get a bit spammy u know. (Sorry to bring up such a old script, but it needs some fixing :p)

 Respond  
DarthReven   -  Feb 22, 2005

Updated: the line length problem has been addressed

 Respond  
DarthReven   -  Jan 18, 2005

Updated the Query checking portion of the script

 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.