Jump to content

Archived

This topic is now archived and is closed to further replies.

Eyecu

Eggdrop Party Line Connection for mIRC

Recommended Posts

  • Administrators

his script will allow you to connect to one or more eggdrops without the need for a telnet program or dcc chat.
Unlike most of my scripts, I'm actually interested in this one, so if you have any suggestions for improvements please post them here.

Getting Started:

  • Paste to a blank remote and save with a unique filename.
  • Right Click the channel or status and select EggDrop Connect.
  • Fill in all the boxes and click Connect.

Explanation of the input boxes:

  • IP Address = The ip address of the eggdrop
  • Port = The port the bot is listening for connections on.
  • Handle = The name the bot knows you by(not your current nick). 
  • Password = The password you set with the eggdrop.
;EggDrop Connect by Ford_Lawmower irc.geekshed.net #Script-Help
;;Edit EggColor1 to change the nick color, your text and Emphesis text color.
alias -l EggColor1 return $+($chr(3),04)
;;Edit EggColor2 to change the primary response text.
alias -l EggColor2 return $+($chr(3),03)
;;Edit EggDivider to change the between the EggNick and the response text.
alias -l EggDivider return $+($chr(2),$EggColor1,»»,$chr(15))
menu channel,status,menubar,@EggDropConnect* {
  .EggDrop Connect:EggDropConnect
}
menu @EggDropConnect* {
  .$iif($EggIsConnect,$v1,Disconnected)
  .$iif($EggIsConnect,$style(2)) Connect:{
    sockopen $EggSockName $EggIP $EggPort
    EggMsg Connecting to Eggdrop.. Please Wait.....
    EggMsg Remember you must enter your username and password when prompted.
  }
  .$iif(!$EggNick,$style(2)) Disconnect:{
    EggMsg Disconnecting
    EggMsg Bye Bye :)
    sockclose $EggSockName
    EggMsg Disconnected
  }
}
alias -l EggIsConnect return $sock($EggSockName)
alias -l EggMsg echo $active $iif($EggNick,$+(<,$EggColor1,$v1,$chr(15),>),$+($EggColor1,EggConnect)) $EggDivider $+($EggColor2,$1-)
alias -l EggNick return $gettok($sock($EggSockName).mark,3,32)
alias -l EggSockName return $mid($active,2-)
alias -l EggIP return $gettok($mid($EggSockName,15-),1,58)
alias -l EggPort return $gettok($gettok($mid($EggSockName,15-),2,58),1,45)
dialog EggDropConnect {
  title "EggDrop Connect"
  size -1 -1 105 101
  option dbu
  text "IP Address:", 1, 4 10 37 8, right
  text "Port:", 2, 4 22 37 8, right
  text "Handle:", 3, 5 34 37 8, right
  text "Password:", 4, 5 47 37 8, right
  edit "", 5, 45 9 55 10, autohs
  edit "", 6, 45 21 55 10, autohs
  edit "", 7, 45 33 55 10, autohs
  edit "", 8, 45 46 55 10, pass autohs
  text "", 9, 4 62 97 13
  button "Connect", 10, 5 82 37 12
  button "Close", 11, 64 82 37 12, cancel
}
alias -l EggDropConnect dialog $iif($dialog(EggDropConnect),-v,-m) EggDropConnect EggDropConnect
On *:dialog:EggDropConnect:Sclick:10: {
  tokenize 32 $did($dname,5) $did($dname,6) $did($dname,7) $did($dname,8)
  if ($numtok($1-,32) < 4) {
    did -a $dname 9 Please fill in all the boxes and try again.
    .timereggcomment 1 4 did -a $dname 9    
  }  
  elseif (!$regex($1,(?:[\d]{1,3})\x2E(?:[\d]{1,3})\x2E(?:[\d]{1,3})\x2E(?:[\d]{1,3}))) {
    did -a $dname 9 IP Address must be in the form of xx.xx.xx.xx Check it and try again.
    .timereggcomment 1 4 did -a $dname 9
  }
  elseif ($2 !isnum) {
    did -a $dname 9 Port must be a number. Check it and try again.
    .timereggcomment 1 4 did -a $dname 9  
  }
  elseif ($numtok($1-,32) > 4) {
    did -a $dname 9 Unknown error in one of the fields. Please review them and try again.
    .timereggcomment 1 4 did -a $dname 9  
  }  
  else { eggconnect $1- }
}
alias eggconnect {
  var %sockname $+(EggDropConnect,$1,:,$2,-,TO,-,$3)
  if ($sock(%sockname)) sockclose %sockname
  sockopen %sockname $1 $2
  sockmark %sockname $3 $4
  if (!$window($+(@,%sockname))) { window -e $+(@,%sockname) }
  echo $+(@,%sockname) Connecting to your Eggdrop. Please Wait.......
}
on *:sockopen:EggDropConnect*: {
  if ($sockerr) {
    eggecho Socket Error Cannot Connect...
    eggecho No one seems to be listening on $mid($gettok($sockname,1,45),15-)
    eggecho Check your IP Address / Port Settings and Try Again.
    sockclose $sockname
  }
  elseif ($gettok($sock($sockname).mark,1,32)) { 
    sockwrite -nt $sockname $v1
    sockwrite -nt $sockname $gettok($sock($sockname).mark,2,32)
  }
}
on *:sockread:EggDropConnect*: {
  var %eggconnect | sockread %eggconnect
  if (%eggconnect) {
    eggdispformat $+(@,$sockname) $iif($gettok($sock($sockname).mark,3,32),$+(<,$EggColor1,$v1,$chr(15),>),$+($EggColor1,EggConnect)) $EggDivider %eggconnect
    if ($regex(%eggconnect,/Connected to (.*)\x2C running eggdrop/i)) sockmark $sockname 1 1 $regml(1)
    elseif (%eggconnect == You don't have access.) { 
      eggecho $+($EggColor1,EggConnect) $+($EggDivider,$EggColor2) It appears that the eggdrop doesn't know you by $&
        $+(",$iif($gettok($sock($sockname).mark,1,32),$v1,that name),")
      eggecho $+($EggColor1,EggConnect) $+($EggDivider,$EggColor2) Please Try again with the Name that the bot knows you by.
      sockclose $sockname
    }
    elseif (Negative on that isin %eggconnect) {
      eggecho $+($EggColor1,EggConnect) $+($EggDivider,$EggColor2) It appears that the password you entered is incorrect.
      eggecho $+($EggColor1,EggConnect) $+($EggDivider,$EggColor2) Please try again with the correct password.
      sockclose $sockname
    }
  }
}
alias -l eggecho echo $+(@,$sockname) $+($EggColor2,$1-)
alias -l eggsend { 
  sockwrite -nt $iif($sockname,$v1 $1-,$1-)
  echo $+(@,$iif($sockname,$v1 $me $EggDivider $+($EggColor1,$1-),$1 $+(<,$EggColor1,$me,$chr(15),>) $EggDivider $+($EggColor1,$2-)))  
}
alias -l eggdispformat { echo $1-3 $remove($+($EggColor2,$replace($4-,[1m,$+($chr(15),[,$EggColor1),[0m,$+($chr(15),],$EggColor2))),ÿû,ÿü) }
On *:input:@EggdropConnect*: { if ($left($1,1) != /) && ($EggIsConnect) eggsend $v1 $1- }
On *:close:@EggdropConnect*: { sockclose $mid($target,2-) }

All credits for this snippet goes to FordLawnmower. Originally posted on hawkeye.
Click Here

Link to comment
Share on other sites



×
×
  • Create New...