Buddy List v1
Posted by Ragnar
Wednesday, December 28, 2005
Description: This is a simple mIRC Buddy List I have worked for quite awhile on, planning and such. It is currently in beta stages right now, but there will be many more great unique features added in the next versions. Eventually, I plan to add to version 3, a user profile system and more! Keep your eyes peeled for version 2. After loading it, you'll need to type /buddy to open the buddy list dialog.


on *:LOAD:{
  set %available 1
  set %away 0
  set %dnd 0
  set %buddyonly 0
  set %availitem • Available
  set %awayitem Away
  set %dnditem Do Not Disturb
  set %buddiesonlyitem Buddies Only
  echo -a [^K]4mIRC Buddy List by Jarvis from #SleisySoft . Please keep in mind, this is only version 1.0, thus having many bugs and incomplete features. Version 2 will have several more features, and even though we haven't gotten this far, I eventually plan for version 3 to allow Buddy List users to create profiles and view them through the buddy list system, and even look up steam id's if a user has one set in their profile, for their CAL stats and information. [^B]Check out #FireWire , the best radio station since 2000[^B] , and also [^B]check out #SleisySoft for help with this script[^B] !
  echo -a [^K]4Also, be sure you create a .txt document called awaymessages.txt in the same directory as your IRC client and script! If you have any comments or suggestions, please submit them to my email address found under the Help menu, then go to About. If you are interested in contributing to the development of this Buddy List system, don't hesitate to email me.
  echo -a [^K]4This script is copyright protected and may not be sold, or redistributed in any way, shape or form without express written permission from it's creater, Matthew Leisy, created on Wednesday, December 28, 2005. It may only be redistributed in the same exact way that you received it from the creater, in the original form, with no modifications by yourself.
  echo -a [^K]4If you guys try to steal the credit for this thing, you can forget version 2 and version 3 ever, so, please don't take credit for my hard work. Thank you for your support.
}

dialog buddy {
  title "mIRC Buddy List by Jarvis Version 1"
  size -1 -1 125 145
  option dbu
  text "Nickname", 88, 7 4 23 8
  text "Status", 89, 89 4 23 8
  list 8, 7 14 115 115, size
  button "PM", 1, 10 130 37 12, default
  button "View Messages", 30, 75 130 45 12
  text "", 11, 7 245 111 8
  menu "File", 2
  item "Add Buddy", 3, 2
  item "break", 4, 2
  item "Options - Coming Soon", 5, 2
  menu "Status", 6
  item %availitem , 7, 6
  item %awayitem , 15, 6
  item %dnditem , 16, 6
  item %buddiesonlyitem , 17, 6
  menu "Help", 20
  item "Help Topics - Coming Soon", 21, 20
  item "break", 23, 20
  item "About", 22, 20
}

dialog buddyabout {
  title "mIRC Buddy List by Jarvis"
  size -1 -1 110 129
  option dbu
  text "mIRC Buddy List v1.0", 2, 2 5 49 7
  text "December.28.2005", 3, 2 12 49 7
  text "Coded by Jarvis from #SleisySoft", 4, 2 19 102 7
  link "http://www.sleisysoft.rr.nu", 5, 31 36 78 7
  link "Haz1337@GameSurge.net", 6, 31 28 70 7
  text "E-mail:", 7, 2 28 25 7
  text "Website:", 8, 2 36 25 7
  text "Credits:", 9, 2 65 25 7
  text "• Matthew Leisy a.k.a Jarvis from", 10, 15 75 90 7
  text "- #SleisySoft - Project Founder/Creator", 11, 10 85 99 7
  text "• poiuy_qwerty - Some Coding", 12, 15 95 99 7
  text "- Contributions", 13, 10 105 99 7
  text "• #Script - Scripting Help/Support", 14, 15 115 100 7
}


alias buddy {
  dialog -m buddy buddy
  parse
}

alias buddyabout {
  dialog -m buddyabout buddyabout
}

alias parse {
  var %a = 1
  while $notify(%a) { did -a buddy 8 $v1 - $iif($notify(%a).ison,Online,Offline) | inc %a }
}

on *:dialog:buddy:dclick:8:{
  query $gettok($did(buddy,8).seltext,1,32)
}

on *:dialog:buddy:rclick:8:{
  delbuddy $gettok($did(buddy,8).seltext,1,32)
}

on *:dialog:buddy:menu:*:{

  if ($did == 3) { set %newbuddy $$?="Enter the nickname" | /notify %newbuddy | added | did -r buddy 8 | parse | unset %newbuddy }
  if ($did == 5) { buddyoptions }
  if ($did == 7) { set %available 1 | set %away 0 | set %dnd 0 | set %buddyonly 0 | set %availitem • Available | set %awayitem Away | set %dnditem Do Not Disturb | set %buddiesonlyitem Buddies Only | did -o buddy 7 %availitem | did -o buddy 15 %awayitem | did -o buddy 16 %dnditem | did -o buddy 17 %buddiesonlyitem }
  if ($did == 15) { set %available 0 | set %away 1 | set %dnd 0 | set %buddyonly 0 | set %availitem Available | set %awayitem • Away | set %dnditem Do Not Disturb | set %buddiesonlyitem Buddies Only | did -o buddy 7 %availitem | did -o buddy 15 %awayitem | did -o buddy 16 %dnditem | did -o buddy 17 %buddiesonlyitem }
  if ($did == 16) { set %available 0 | set %away 0 | set %dnd 1 | set %buddyonly 0 | set %availitem Available | set %awayitem Away | set %dnditem • Do Not Disturb | set %buddiesonlyitem Buddies Only | did -o buddy 7 %availitem | did -o buddy 15 %awayitem | did -o buddy 16 %dnditem | did -o buddy 17 %buddiesonlyitem }
  if ($did == 17) { set %available 0 | set %away 0 | set %dnd 0 | set %buddyonly 1 | set %availitem Available | set %awayitem Away | set %dnditem Do Not Disturb | set %buddiesonlyitem • Buddies Only | did -o buddy 7 %availitem | did -o buddy 15 %awayitem | did -o buddy 16 %dnditem | did -o buddy 17 %buddiesonlyitem }
  if ($did == 21) { buddyhelp }
  if ($did == 22) { buddyabout }
  if ($did == 30) { run awaymessages.txt }
}


on *:dialog:buddy:*:*:{
  if $devent = rclick {
    delbuddy $gettok($did(buddy,8).seltext,1,32)
  }
  if $devent = sclick {
    if $did == 30 {
      run awaymessages.txt
    }
    if $did == 1 {
      if ($did(8).seltext == $null) { did -ri $dname 95 2 Select a nickname from the list! }
      else { if ($istok(%mb.h,$did(8),42) == $false) { query $gettok($did(buddy,8).seltext,1,32) } }

    }
  }
}

alias delbuddy {
  notify -r $$1
  did -r buddy 8
  parse
}





on *:TEXT:*:?:{
  if (%available == 1) { halt }
  elseif (%away == 1) { msg $nick I am currently away. Try again later, or leave a message. | write -a awaymessages.txt MESSAGE BY $nick on $date(mmmm dd yyyy) at $time : $1- }
  elseif (%dnd == 1) { msg $nick I do not want to be disturbed at the moment. Please try again later. Thanks. | close -m $nick }
  elseif (%buddyonly == 1) && ($notify( $nick ) >= 1) { halt }
  else { msg $nick I am currently only available to buddies specified on my buddy list. Please try again later. }
}


on ^*:NOTIFY:{ haltdef | set % [ $+ [ $nick ] $+ ] .status Online  }
on ^*:UNOTIFY:{ haltdef | set % [ $+ [ $nick ] $+ ] .status Offline  }
v1?
Posted by prompt
Thursday, December 29, 2005 10:50am PST
If this is version 1, why is it still in a beta stage? I mean you could possibly do it that way, but more people need to read up on version numbering [en.wikipedia.org]
Re: v1?
Posted by Ragnar
Thursday, December 29, 2005 06:15pm PST
Well, actually it technically not beta stage, sorry, but yeah.. w/e just a figure of speech not to bitch about any bugs since it's the first release.
...
Posted by Rustynails
Saturday, December 31, 2005 08:01am PST
Personally, I don't find this too impressive. Add some MDX in, you have Nickname and Status, yet the actual status doesn't allign.

I also get lots of errors for your "Coming Soon" options, which if they are coming soon, why have aliases for them?


BUDDYHELP Unknown command
-
BUDDYOPTIONS Unknown command
-
* Added Rustynails to notify list
-
ADDED Unknown command
-
BUDDYHELP Unknown command


When I added Rustynails to the notify list, it didn't update. I got a bunch of errors, and you should fix this.


* /run: unable to open 'awaymessages.txt' (line 103, buddylist.mrc)


Make a simple little if statement!

Rating.. 5/10
A for effort

Cheers,
Rustynails
...
Posted by Ragnar
Saturday, December 31, 2005 11:51am PST
* /run: unable to open 'awaymessages.txt' (line 103, buddylist.mrc)

^^^ You have to create an 'awaymessages.txt' file in your IRC client's directory.
...
Posted by Rustynails
Saturday, December 31, 2005 07:50pm PST
How was I/anyone supposed to know that?
...
Posted by Ragnar
Monday, January 02, 2006 01:40pm PST
Now you know :) create an awaymessages.txt file in your IRC client's directory!
version 2
Posted by Ragnar
Friday, February 10, 2006 11:25am PST
I am currently developing version 2.1.01 of this Buddy List. I expect for it to be finished up no later than February 25th. I will keep you updated. The new version of the Buddy List project will feature many new abilities... Firstly, everything will be run by a database, where you will need to create an account with this buddy system and login to it in order to use it. It will also feature profiles and many other useful things which are undecided, but as the time progresses, I will update you on features that I have decided to add. Also, as this version here uses the /notify in order to manage your buddies, version 2.1.01 won't. As I have mentioned, it will be managed by a central database. Visit #SleisySoft for further information if you have any questions.
Submit a comment
Oops! You need to login or register before you can post a comment!

ebaum's world