All pastes #635853 Raw Edit

Invite system

public text v1 · immutable
#635853 ·published 2007-07-27 12:49 UTC
rendered paste body
on *:invite:#:{
  if ([ [ $+(%,ignored.,$address($nick,2)) ] ] == yes) { notice $nick You have been ignored from inviting me. | halt }
  notice $nick I am using a secure invite system. Please wait for me to accept this invite.
  set %latestinvitechan $chan
  set %latestinvitenick $nick
  echo  $+ $nick has invited me to $chan $+ . To accept, press F2. To deny, press F3.
  echo To permanently ignore someone's invite, type /addignore nick $+ . To remove the invite ignore, type /delignore nick $+ .
}
alias F2 {
  if (%latestinvitechan == $null && %latestinvitenick == $null) { echo Noone has invited me. | halt }
  notice %latestinvitenick Invite has been accepted. I will now join %latestinvitechan $+ .
  echo Invite accepted. Joining %latestinvitechan $+ .
  join %latestinvitechan
  .timer 1 1 msg %latestinvitechan I've been invited to %latestinvitechan by %latestinvitenick $+ !
  .timer 1 2 unset %latestinvitechan
  .timer 1 2 unset %latestinvitenick
}
alias F3 {
  if (%latestinvitechan == $null && %latestinvitenick == $null) { echo Noone has invited me. | halt }
  notice %latestinvitenick Invite has been denied. I will not join %latestinvitechan $+ .
  echo Invite denied.
  unset %latestinvitechan
  unset %latestinvitenick
}
alias addignore {
  if ($1 == $me) { echo You can't ignore yourself. | halt }
  set %ignored. $+ $address($1,2) yes
  notice $1 You have been ignored from inviting me.
  echo -a  $+ $1 denied.
}
alias delignore {
  if ($1 == $me) { echo You can't unignore yourself. | halt }
  unset %ignored. $+ $address($1,2)
  notice $1 You have been removed from my invite ignore list.
  echo -a  $+ $1 accepted.
}