Jump to content
chain

xChat Away Nicks

Recommended Posts

  • Administrators

A new snippet from me!
Thats rare ;D

Okay. Lets see what we have here.

I've titled it xChat Away Nicks as it directly relates to
how xChat handles Nicks when a user is away,
this script will change the nick of the user to Gray if
they are away and back again when they return.

Upside:
VERY USEFUL!
Yes, great if you dont want x-Smelly-Welly-Chat and prefer
using mIRC.

Downside:
It's spammy when it syncs up with a server.
Mainly I cannot help annoying mIRC messages
regarding the nick colors. Silly mIRC has no obvious
way to silence this obmination.

Mini trivia:
Coded around 5am.
Uses my coder tools that are modified.

Bugs/Problems:

  • Sometimes it don't work, Maybe different IRCD's?
  • Not a good idea on BNC's that you connect to with more than one client at a time. (Load on both to fix)
; xChat Away Nicks.
; Connect to a server and it will work!
; CAUTION: Syncing is noisy!
; This script practically disables /WHO as
; it's blocking the output, soon to be fixed.

; SCRIPT By Thomas Edwards (Fudgie/TMFKSOFT) 2012

on 1:CONNECT:{
  timerxaway $+ $network 0 10 /raw -q who *
  echo xChat Away Nicks activated. Script will be spammy upon sync with server.
}
alias nickaway {
  cnick -a $1 14
  HALTDEF
}
alias nickback {
  cnick -r $1 14
  HALTDEF
}
raw 352:*:{
  if (G isin $7) {
    if ($getvar(isaway,$6,$network) != true) {
      echo -t $active 14 $+ $6 is away.
      nickaway $+($6,!,$3,@,$4)

      setvar isaway $6 $network true
    }
  }
  else {
    if ($getvar(isaway,$6,$network) == true) {
      echo -t $active 14 $+ $6 is no longer away.
      nickback $+($6,!,$3,@,$4)
      unsetvar isaway $6 $network
    }
  }
  HALTDEF
}
raw 315:*:{
  ; Blocking end of /who message
  HALTDEF
}
alias back {
  away
}
on 1:QUIT:{
  ; If they quit we make sure they are removed, even if they're not it fixes its self.
  unsetvar isaway $nick $network
  nickback $address($nick,5)
}
alias setvar {
  set % $+ $1 $+ . $+ $2 $+ . $+ $3 $4-
}
alias getvar {
  return % [ $+ [ $1 ] $+ . $+ [ $2 ] $+ . $+ [ $3 ] ]
}
alias unsetvar {
  unset % $+ $1 $+ . $+ $2 $+ . $+ $3
}
on 1:JOIN:{
  if ($nick == $me) {
    who *
  }
}

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...


×
×
  • Create New...