| View previous topic :: View next topic |
| Author |
Message |
Psyfire Voice
Joined: 05 Nov 2006 Posts: 36
|
Posted: Tue Mar 27, 2007 9:09 am Post subject: Userlist with specific flag |
|
|
Hello,
I need a small script where you are able to add users, which are on a channel. You store them into a list, by their hostname, with a flag and a position.
Example:
!add <user> <position> <flag>
Bot: User was added in the position "Clan Member" with the botflag f.
Of course I would need a command for deleting them and listing them.
Thank you  |
|
| Back to top |
|
 |
iamdeath Master

Joined: 11 Feb 2005 Posts: 323 Location: *HeLL*
|
Posted: Tue Mar 27, 2007 10:27 am Post subject: |
|
|
| Code: | # AddOp Script v2.0 for Eggdrop 1.3.x by Digger <Digger@hadiko.de>
# http://elreggid.home.pages.de (BOTs-homepage)
# http://digger.home.pages.de (my homepage)
#
# This script is originally by KuRuPTioN.
# I made it suitable for eggdrop 1.3.x and made some useful changes
# for using with the new flag-system.
##########################################################################
# Allows masters and owners to add global users with +of-flags (.addsop)
# Allows channelmasters, channelowners, masters and owners
# to add users with +of on their channels (.addop).
#
# Commands (pub):
# .addop <nick> <flags> - Adds an Op for that channel only ; <flags> changes flags for user
# on that channel as well
# .addsop <nick> <flags> - Adds an Op for all channels ; <flags> updates
# flags for all channels.
#
##########################################################################
set newflags "of"
# Flags for new ops
set addopflag "m|m"
# Flag required to add channelop (&m = Channelmaster, &n = Channelowner etc.)
set addsopflag "m"
# Flag required to add global op
#########################################################################
# DO NOT EDIT ANYTHING BELOW
#########################################################################
bind pub $addopflag .addop add_op_norm
proc add_op_norm {n u h c a} {
global botnick newflags
if {[lindex $a 0] == ""} {
putserv "NOTICE $n :Format: .addop <nickname> <extra flags>"
putserv "NOTICE $n :Extra Flags: n(owner), m (master), f (friend)"
return 1
}
set newop [lindex $a 0]
if {[onchan $newop $c] == 0} {
putserv "NOTICE $n :$newop is not on $c. You will need to add him/her manually through a DCC chat"
return 1
}
if {[lindex $a 1] != ""} {
set exflags [lindex $a 1]o
} { set exflags $newflags }
set newhost [maskhost [getchanhost $newop $c]]
if {[validuser $newop] == 1} {
if {[lsearch [getuser $newop hosts] $newhost] == "-1"} {
putserv "NOTICE $n :$newop exists in my database. Adding flags and hostmask."
chattr $newop |+$newflags $c
setuser $newop hosts $newhost
putserv "NOTICE $newop :Your flags have been upgraded to $exflags on $c and your new host \[$newhost\] has been added."
return 1
} {
putserv "NOTICE $n :$newop exists in my database. Adding flags."
chattr $newop |+$newflags $c
putserv "NOTICE $newop :Your flags have been upgraded to $exflags on $c."
return 1 }
}
if {[finduser $newhost] != "*"} {
putserv "NOTICE $n :$newop\[$newhost\] is known as user [finduser $newhost]"
return 1
}
adduser $newop $newhost
if {[chattr $newop |+$newflags $c] == "*"} {
putserv "NOTICE $n :Error adding flags to $newop."
return 1
}
putserv "NOTICE $n :$newop\[$newhost\] has been added $exflags on $c"
putserv "NOTICE $newop :Congradulations $newop!"
putserv "NOTICE $newop :$n has given you Ops with flags $exflags on $c."
putserv "NOTICE $newop :Please set a password: /msg $botnick pass <password>"
putserv "NOTICE $newop :where <password> is your selected password."
putserv "NOTICE $newop :You can get ops by: /msg $botnick op <password>"
save
}
bind pub $addsopflag .addsop add_op_super
proc add_op_super {n u h c a} {
global botnick newflags
if {[lindex $a 0] == ""} {
putserv "NOTICE $n :Format: .addsop <nickname> <extra flags>"
putserv "NOTICE $n :Extra Flags: n(owner), m (master), f (friend)"
return 1
}
set newop [lindex $a 0]
if {[onchan $newop $c] == 0} {
putserv "NOTICE $n :$newop is not on $c. You will need to add him/her manually through a DCC chat"
return 1
}
if {[lindex $a 1] != ""} {
set exflags [lindex $a 1]o
} { set exflags $newflags }
set newhost [maskhost [getchanhost $newop $c]]
if {[validuser $newop] == 1} {
if {[lsearch [getuser $newop hosts] $newhost] == "-1"} {
putserv "NOTICE $n :$newop exists in my database. Adding flags and hostmask."
chattr $newop |+$newflags $c
setuser $newop hosts $newhost
putserv "NOTICE $newop :Your flags have been upgraded to $exflags and your new host \($newhost\) has been added."
return 1
} {
putserv "NOTICE $n :$newop exists in my database. Adding flags."
chattr $newop |+$newflags $c
putserv "NOTICE $newop :Your flags have been upgraded to $exflags."
return 1 }
}
if {[finduser $newhost] != "*"} {
putserv "NOTICE $n :$newop\[$newhost\] is known as user [finduser $newhost]"
return 1
}
adduser $newop $newhost
chattr $newop |+$newflags
putserv "NOTICE $n :$newop\[$newhost\] has been added with flags $exflags"
putserv "NOTICE $newop :WOW! Congradulations $newop!"
putserv "NOTICE $newop :$n has given you SuperOps with flags $exflags on all channels I am on."
putserv "NOTICE $newop :Please set a password: /msg $botnick pass <password>"
putserv "NOTICE $newop :where <password> is your selected password."
putserv "NOTICE $newop :You can get ops by: /msg $botnick op <password>"
save
}
putlog "Addop v2.0 for Eggdrop1.3.x by Digger loaded..." |
I did'nt get "Clan Members" part, explain more. |
|
| Back to top |
|
 |
Psyfire Voice
Joined: 05 Nov 2006 Posts: 36
|
Posted: Tue Mar 27, 2007 10:41 am Post subject: |
|
|
Imagine you add a user with this command:
!add <user> <position> <flag>
If you got Clanmember and Clanowner, you add them like this.
!add User1 Clan Member f
!add User2 Clan Owner o
If you type now !list, you get this
Bot: User 1 | Clan Member | Flag: f
Bot: User 2 | Clan Owner | Flag: o |
|
| Back to top |
|
 |
Alchera Revered One

Joined: 11 Aug 2003 Posts: 3344 Location: Ballarat Victoria, Australia
|
Posted: Tue Mar 27, 2007 6:37 pm Post subject: |
|
|
Search the forums and/or Tcl Archive and you should find a number of clan scripts. _________________ Add [SOLVED] to the thread title if your issue has been.
Search | FAQ | RTM |
|
| Back to top |
|
 |
|