Another script i was asked to do meant for chatspace. This script is meant for people who do not host their own chatspace and have to go through someone to get opers/admins added to the admin/oper list and also for people to help protect against people not admin getting admin. first things first with the server as the active server you can right click a persons name then go to safelist and add them that way. or you can do it manually but you have to get their ip to do it i use $address($nick,1) so if you wanna do it manually to make sure you have the right info just do //echo -a $address(nickhere,1) and it'll give ya the proper info. after you add them to that list you can then go into admin access add admin. or add oper whichever one you wanna add them to. it will ask you their nickname so put their nick then their login name then pass. so it would be like /oper loginname password. after you've added that they can then notice you /notice yournick admin/oper theirloginname theirpw and you will automatically give them admin
Menu menubar,nicklist,channel,status {
Admin access
..AddAdmin: { writeini admin.ini $server $+ admin $$?="their nick?" $$?="Their login name" $$?="Whats their pass?" }
..DelAdmin: { remini admin.ini $server $+ admin $$?="remove what nick" }
..Addoper: { writeini admin.ini $server $+ oper $$?="their nick?" $$?="Their login name" $$?="Whats their pass?" }
..Deloper: { remini admin.ini $server $+ oper $$?="remove what nick" }
Admin protect
.on off settings
..$iif($group(#admincheck) == On,$style(2)) Turn on: { .enable #admincheck }
..$iif($group(#admincheck) == Off,$style(2)) Turn off: { .disable #admincheck }
.adminsafelist
..SafeList Nick:auser AdminSafe *!*@ $+ $$?="SafeList What Nick?"
..UnSafeList Nick:ruser AdminSafe *!*@ $+ $$?"UnSafeList What Nick?"
..Safelist $1: { auser AdminSafe $address($1,2) }
..UnSafelist $1: { ruser AdminSafe $address($1,2) }
}
#admincheck off
on *:snotice:*is now an IRC Operator*:{
if ($level($address($4,2)) != AdminSafe) {
.kill $4 you are not in the safelist
}
}
#admincheck end
on *:notice:*:*: {
if (admin isin $1-) {
.set %checknick $nick
.whois $nick
.timer 1 4 admincheck $1-
}
if (oper isin $1-) {
.set %checknick $nick
.whois $nick
.timer 1 4 opercheck $1-
}
}
alias admincheck {
if ($level($address($nick,1) == AdminSafe)) && ($readini(admin.ini,$server $+ admin,%checknick) == $2-) {
.setoper %checknick +admin
}
}
alias opercheck {
if ($level($address($nick,1) == AdminSafe)) && ($readini(admin.ini,$server $+ oper,%checknick) == $2-) {
.setoper %checknick +oper
}
}