DCX Invite manager

By D34th on May 27, 2011

***** This dialog is coded completly in DCX. If you do not have the DCX.dll and its aliases this script will not work for you

***** This script is to handle invites. 3 options.

  1. Join channel.
  2. Ignore Invite.
  3. Ignore with message

This script includes a flood protection for invites if some noob sends 20 invites it auto ignores the nicknames Invites

How to use: Past the code below in a new remote file and when you get a invite to a room it will open and display who is inviting you what server it is on and what room they are inviting you to

alias Sini {
  dialog -ma Sini 
}

dialog Sini {
  title "Invite Dialog"
  size -1 -1 385 179
}

on *:dialog:Sini:*:*: {
  if ($devent == init) {
    dcx Mark $dname Sini_cb
    xdialog -b $dname +zto

    xdialog -c $dname 2 button 3 155 75 20 tabstop
    xdid -t $dname 2 Join Channel

    xdialog -c $dname 5 edit 278 156 100 20 autohs autovs tabstop
    xdid -a $dname 5 Your Reply

    xdialog -c $dname 1 richedit 1 0 390 150 multi hsbar vsbar tabstop read

    xdialog -c $dname 3 button 83 155 85 20 tabstop
    xdid -t $dname 3 Ignore Invite

    xdialog -c $dname 4 button 174 155 98 20 tabstop
    xdid -t $dname 4 Notice And Ignore

    xdid -f $dname 1 +a ansi 10 Times New Roman
    xdid -f $dname 2,3,4,5 +a ansi 8 Times New Roman

    xdid -C $dname 1 +t $color(15)
    xdid -C $dname 1 +b $color(1)
    xdid -C $dname 1 +k $color(1)
    xdid -k $dname 1 $color(1)

  }
}
alias Sini_cb {
  If ($2 = Sclick) {
    If ($3 = 4) Notice %Nick.Sini 11,1 $chr(171) $+ 14(15Invite Not Approved14)11 $+ $chr(187)  Reason: $xdid($1,5).text | Dialog -x $1 $1
    If ($3 = 3) Dialog -x $1 $1
    If ($3 = 2) Join %Chan.Sini | Dialog -x $1 $1
  }
  If ($2 = Close) { Unset %Nick.Sini %Chan.Sini }
}
On ^*:Invite:*:{
  If (!%Flood) {
    Inc -z %Flood 20
    If (%Flood) Set %Nick.Flood %Nick.floodwhore | ignore -i $Nick | Timer 1 10 ignore -r %nick.Floodwhore
    If (!$Dialog(Sini)) {
      Dialog -m Sini Sini
      Set %Nick.Sini $Nick
      Set %Chan.Sini $Chan
      xdid -a Sini 1 15,1 Invite From $Nick $crlf
      xdid -a Sini 1 15,1 Server: $Server $crlf
      xdid -a Sini 1 15,1 Channel: $chan
      Halt
    }
    elseif ($Dialog(Sini)) {
      Set %Nick.Sini $Nick
      Set %Chan.Sini $Chan
      xdid -r Sini 1
      xdid -a Sini 1 15,1 Invite From $Nick $crlf
      xdid -a Sini 1 15,1 Server: $Server $crlf
      xdid -a Sini 1 15,1 Channel: $chan
      Halt
    }
  }
}

Comments

Sign in to comment.
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.