So i wanted to ask if some could do a rewrite for me, so the Script will accept nicks always when i put them in the accepted List. Appreciate
The Code - I was searching for the Coder, with no chance to find him/her
- Code: Select all
;***********************************
;Q-Apm-blocker V1.4 by Queen-Amidala on DALnet
;Written 10/7/03
;Last Updated 11/12/03
;***********************************
;******************
;DIALOG TABLE CODE
;******************
dialog Q-Apm-blockerV1.4 {
title "Q-Apm-blocker v1.4"
size -1 -1 131 117
option dbu
box "Manual Controls", 12, 62 66 66 32
combo 8, 5 13 54 84, size drop
list 1, 5 26 54 89, size extsel vsbar
list 2, 74 13 54 52, sort size extsel vsbar
text "Channel List", 3, 7 3 32 8
text "My Accept List", 4, 74 3 43 8
edit "", 10, 68 74 54 10, autohs
button "Add", 11, 68 85 20 9
button "Del", 7, 89 85 20 9
button "->", 5, 61 26 11 10
button "", 9, 999 999 0 0, hide disable cancel
text "By Queen-Amidala", 13, 64 108 46 8
icon 6, 112 100 15 15, $scriptdirqaicon.jpg, 0
}
;*************************************************************
;FIRST-TIME LOAD COMMAND(S) TO ALLOW YOU TO SET YOUR PM REPLY
;*************************************************************
on *:LOAD:{
echo -s 14[13Q-Apm-blocker v1.414] loaded successfully! Thank you for trying this script. Please direct any questions/comments or concerns to Queen-Amidala on DALnet. (queenie@gobbly.net)
set %pmblocker.reply $$?="Welcome to Q-Apm-blocker V1.4! Since this is the first time you have loaded this script, you need to configure your reply setting. Below, please enter a sentence that you would like automatically sent to users that are not on your accept list when they private message you to let them know that you will not be accepting their message. Example: I do not accept private messages from people I don't know, lamer. Please try to reach me in #Helpdesk instead. This can be set to whatever you want."
}
;**************
;INIT COMMANDS
;**************
on *:dialog:Q-Apm-blockerV1.4:init:*: {
;LOOPS THRU YOUR CHANNELS AND FILLS THE DROP DOWN BOX WITH CHANNELS
var %loop = 1
while (%loop <= $chan(0)) {
did -a $dname 8 $chan(%loop)
if ($chan(%loop) == $active) { did -c $dname 8 %loop }
inc %loop
}
;FILLS YOUR NICK LIST AND ACCEPT LIST
fillnick $dname
fillaccept $dname
}
;NICKLIST ADD BUTTON
on *:dialog:Q-Apm-blockerV1.4:sclick:5: {
auser friends $did(q-apm-blockerV1.4,1).seltext
fillaccept $dname
}
;MANUAL DELETE BUTTON
on *:dialog:Q-Apm-blockerV1.4:sclick:7:{
ruser friends $did($dname,2).seltext
fillaccept $dname
}
;COMBO DROP-DOWN BOX
on *:dialog:Q-Apm-blockerV1.4:sclick:8: {
fillnick $dname
}
;MANUAL ADD BUTTON
on *:dialog:Q-Apm-blockerV1.4:sclick:11: {
auser friends $did(q-apm-blockerV1.4,10).text
fillaccept $dname
did -r $dname 10
}
;********
;ALIASES
;********
;FILLS YOUR ACCEP LIST
alias -l fillaccept {
did -r $$1 2
var %i = 1
while (%i <= $ulist(*,friends,0)) {
did -a $$1 2 $ulist(*,friends,%i)
inc %i
}
}
;FILLS YOUR NICK LIST
alias -l fillnick {
did -r $$1 1
var %loop = 1
while (%loop <= $nick($did($$1,8).seltext,0)) {
did -a $$1 1 $nick($did($$1,8).seltext,%loop)
inc %loop
}
}
;******************************************************************
;OPENS A @BLOCKpm WINDOW SO YOU CAN TRACK/VIEW USER'S INFORMATION
;******************************************************************
;WHEN YOU RECEIVE A PM, IF THE USER IS ON YOUR ACCEPT LIST YOU WILL GET THEIR QUERY
;WINDOW AS NORMAL. IF THE PERSON IS NOT ON YOUR ACCEPT LIST, THEY WILL AUTOMATICALLY
;RECEIVE A PM BACK FROM YOU STATING THE SENTENCE YOU SET WHEN YOU LOADED THIS SCRIPT,
;TELLING THEM YOU DO NOT ACCEPT PM'S FROM UNAUTHORIZED PEOPLE. YOU WILL ALSO GET A
;WINDOW CALLED @BLOCKPM THAT POPS UP, AND KEEPS TRACK OF ALL UNAUTHORIZED PM'S THAT
;YOU RECEIVE. THIS IS MERELY SO YOU CAN TRACK THE PEOPLE THAT ARE PM'ING YOU, AND WHAT
;CHANNEL THEY ARE "SPAMMING" YOU FROM. YOU CAN ALSO SEE THEIR MESSAGE, JUST IN CASE
;IT'S IMPORTANT. UPON THEIR PM, THEY ARE AUTOMATICALLY ADDED TO YOUR IGNORE LIST FOR 20
;SECONDS, AND THEN AUTOMATICALLY BE REMOVED. AS WELL, ANYTHING THAT ENDS UP IN YOUR
;@BLOCKPM WINDOW WILL ALSO BE WRITTEN TO A LOG FILE IN WHATEVER DIRECTORY THIS SCRIPT
;WAS LOADED FROM TITLED BLOCKEDPMS.TXT IN CASE YOU NEED TO REFER TO IT IN THE FUTURE.
on ^friends:open:?:*:{ query -n $nick | echo $color(normal) -lmt $nick $+(<, $nick, >) $1- | haltdef }
on ^*:OPEN:?:*:{
if (!$halted) && ($nick != -psybnc) {
if (!$window(@blockPM)) { window -n @blockPM }
aline -h @blockPM $str(-,20)
aline @blockPM nick: $nick
aline -p @blockPM message: $strip($1-)
aline @blockPM time: $date $realtime
aline @blockPM address: $fulladdress
var %loop = $comchan($nick,0)
while (%loop) {
var %list = %list $comchan($nick,%loop)
dec %loop
}
if (%list) { aline @blockPM channels: %list }
aline @blockPM $str(-,20)
if (!%pmblocker. [ $+ [ $nick ] ]) && ((*http://*.* !iswm $1-) || (*www.* !iswm $1-) || (* free * !iswm $1-)) {
.msg $nick %pmblocker.reply
ignore -pu20 $nick
set -u10 %pmblocker. $+ $nick $true
}
elseif (%list) {
echo 13 -a $nick spammed you in %list
}
write $scriptdirBLOCKEDpms.txt $timestamp < $+ $nick $+ > ( $+ $address $+ ) $1-
halt
}
}
;****************
;MENU LIST POPUP
;****************
menu status,nicklist,channel {
$iif(!$dialog(Q-Apm-blockerv1.4),Q-Apm-blockerv1.4) : dialog -md Q-Apm-blockerv1.4 Q-Apm-blockerv1.4
}
;****************************************
;WEBSITE: http://home.gobbly.net/~queen/
;EMAIL: queenie@gobbly.net
;NETWORK: DALnet
;CHANNEL: #Helpdesk
;****************************************