menu channel {
$iif($group(#profdtl) == On,$style(1)) $+ ProfileScan ....
.Turn On:{ .enable #profdtl | echo -a 4..::Profile Scan Enabled::.. }
.Turn Off:{ .disable #profdtl | echo -a 4..::Profile Scan Disabled::.. }
.Settings Dialog: {
if (!$dialog(proscan)) { dialog -md proscan proscan }
else { echo -a 4 Proscan Already Open }
}
}
menu menubar {
$iif($group(#profdtl) == On,$style(1)) $+ ProfileScan ....
.Turn On:{ .enable #profdtl | echo -a 4..::Profile Scan Enabled::.. }
.Turn Off:{ .disable #profdtl | echo -a 4..::Profile Scan Disabled::.. }
.Settings Dialog:{
if (!$dialog(proscan)) { dialog -md proscan proscan }
else { echo -a 4 Proscan Already Open }
}
}
menu nicklist {
$iif($group(#profdtl) == On,$style(1)) $+ ProfileScan ....
.Turn On:{ .enable #profdtl | echo -a 4..::Profile Scan Enabled::.. }
.Turn Off:{ .disable #profdtl | echo -a 4..::Profile Scan Disabled::.. }
.-
.Add Trusted: {
write -ds $remove($ial($$1).addr,@gatekeeperpassport,@gatekeeper) $pstrusted
write -il1 $pstrusted $remove($ial($$1).addr,@gatekeeperpassport,@gatekeeper) $msn.decode($$1)
echo -a 4 $msn.decode($1) added as ProScan trusted
if ($dialog(proscan)) filllistbox proscan 123 $pstrusted 2
}
.Rem Trusted {
write -ds $remove($ial($$1).addr,@gatekeeperpassport,@gatekeeper) $pstrusted
echo -a 4 $msn.decode($$1) removed from ProScan trusted list
if ($dialog(proscan)) filllistbox proscan 123 $pstrusted 2
}
.-
.Diaolog Settings: {
if (!$dialog(proscan)) { dialog -mdo proscan proscan }
else { echo -a 4 Proscan Already Open }
}
}
#profdtl on
on *:JOIN:*:{
if (($nick == $me) || (> isin $nick) || ($left($nick,1) == ')) || ($read($pstrusted,s,$remove($ial($nick).addr,@gatekeeperpassport,@gatekeeper)) || (%HopSkip. [ $+ [ $nick ] ])) halt
set -u10 %DoingScan. [ $+ [ $nick ] ] $true
set -u60 %HopSkip. [ $+ [ $nick ] ] $true
.sockwrite -tn msn.server. $+ $cid prop $nick PUID
.timerclose 1 20 close -@ *Profile*
}
raw 818:*:{
if ($read($pstrusted,s,$remove($ial($2).addr,@gatekeeperpassport,@gatekeeper))) halt
if ($3 != MSNPROFILE) && (%DoingScan. [ $+ [ $2 ] ]) {
var %x http://chat.msn.com/profile.msnw?epuid= $+ $4-
set -u60 %PS. [ $+ [ $2 ] $+ ] url %x
set -u60 %PS. [ $+ [ $2 ] $+ ] puid $4
profile $2
}
haltdef
}
raw 819:*: haltdef
raw 301:*: haltdef
alias profile { sockopen $+(profile.,$1) chat.msn.com 80 }
alias profileinfo {
if ($prop == puid) { return $gettok($right($gettok($1,3,47),-10),1,38) }
if ($prop == userget) { return $gettok($1,3,47) }
}
on *:SOCKOPEN:profile.*:{
var %x = %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] puid
sockwrite $sockname GET /profile.msnw?epuid= $+ %x HTTP/1.1 $+ $crlf $+ Accept: */* $+ $crlf $+ Accept-Language: en-us $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) $+ $crlf $+ Host: chat.msn.com $+ $crlf $+ Connection: close $+ $crlf $+ $crlf
}
on *:SOCKOPEN:profile2.*:{
var %x = %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] userget
sockwrite $sockname GET / $+ %x HTTP/1.1 $+ $crlf $+ Accept: */* $+ $crlf $+ Accept-Language: en-us $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) $+ $crlf $+ Host: members.msn.com $+ $crlf $+ Connection: close $+ $crlf $+ $crlf
}
on *:SOCKREAD:profile.*:{
if ($sockerr > 0) return
var %t | sockread %t
while ($sockbr > 0) {
tokenize 32 %t
if ($1 == LOCATION:) {
set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] redir $1-
var %x = %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] redir
set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] userget $profileinfo(%x).userget
sockopen profile2. $+ $gettok($sockname,2,46) members.msn.com 80
return
}
sockread %t
}
}
on *:SOCKREAD:profile2.*:{
if ($sockerr > 0) return
var %x, %output
sockread %x
while ($sockbr > 0) {
$null($regsub(%x,/(<[^>]+>)/g,,%output))
if (*<A class=viewDesc title="http://* iswm %x) set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] page $wildtok(%x,*http://*,$pos(%x,http://,0),34)
if (*class*viewName* iswm %x) set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] profnick $remove(%output,$chr(9),$chr(32),& $+ nbsp,;)
if (*<B>Location</B>* iswm %x) set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] loc $remove($gettok(%x,$calc($findtok(%x,B>Location,1,60) + 2),60),br>,amp;,')
if (*<B>Age</B>* iswm %x) set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] age $remove($gettok(%x,$calc($findtok(%x,B>Age,1,60) + 3),60),br>,$chr(9))
if (*mypicture?user=* iswm %x) set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] picurl $wildtok(%x,*mypicture?user=*,1,34)
if (*Marital Status* iswm %x) set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] mar $remove($gettok(%x,$calc($findtok(%x,B>Marital Status,1,60) + 3),60),br>,$chr(9))
if (*Marital Status* iswm %x) set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] gen $remove($gettok(%x,1,60),$chr(9))
if ((*more about me below* iswm %x) && (*<B>Location</B>* !iswm %x)) {
var %o = $remove($gettok(%x,1,60),$chr(9),';,/tr>,</td,br>,/td>,amp;,tr>,',/B>)
if (*colspan=2* !iswm %o) && (*="images* !iswm %o) && (*height=5* !iswm %o) && (*href="#MORE"* !iswm %o) {
set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] occ %o
}
}
if (* A Little About* iswm %x) || (* Favorite* iswm %x) || (* Hobbies* iswm %x) {
set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] aboutme $remove(%output,$chr(9), ,')
}
if (*WWW-Authenticate: Passport1.4* iswm %x) {
if ($me isop $comchan($me,1)) && ($psini(do.adult)) {
access $comchan($me,1) add deny $ial($gettok($sockname,2,46)).addr $psini(adult.bm) : Adult Profile
kick $comchan($me,1) $gettok($sockname,2,46) $psini(adult.km)
}
if ($psini(do.msg.echo)) echo -t $comchan($me,1) $+ $color(info2) $+ * $msn.decode($gettok($sockname,2,46)) $+ : 12 $+ Has an Adult Rated Profile
if ($psini(do.msg.notice)) {
var %x 1
var %l $lines($psnoticenicks)
while (%x <= %l) {
tokenize 32 $read($psnoticenicks,%x)
if ($1 ison $comchan($me,1)) && ($2 == time) .ctcpreply $1 TIME (*) $msn.decode($gettok($sockname,2,46)) $+ : Has an Adult Rated Profile
elseif ($1 ison $comchan($me,1)) .notice $1 $+ $color(info2) $+ * $msn.decode($gettok($sockname,2,46)) $+ : 12 $+ Has an Adult Rated Profile
inc %x
}
}
tokenize 32 $psini(font.code) | var %f
if ($me isop $comchan($me,1)) && ($psini(do.msg.main)) && ($gettok($sockname,2,46) ison $comchan($me,1)) {
if ($1 isnum) %f = $chr($1)
else %f = $1
msg $comchan($me,1) S %f $+ $chr($2) $+ $3 $gettok($sockname,2,46) has an Adult Rated Profile
}
unset %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] *
}
if (*Location:*unknownmember.msnw* iswm %x) {
if ($me isop $comchan($me,1)) && ($psini(do.names.unknown)) {
access $comchan($me,1) add deny $ial($gettok($sockname,2,46)).addr $psini(names.unknown.bm) : Unkown Member
kick $comchan($me,1) $gettok($sockname,2,46) $psini(names.unknown.km)
}
if ($psini(do.msg.echo)) echo -t $comchan($me,1) $+ $color(info2) $+ * $msn.decode($gettok($sockname,2,46)) $+ : 12 $+ is an Unknown Member
if ($psini(do.msg.notice)) {
var %x 1
var %l $lines($psnoticenicks)
while (%x <= %l) {
tokenize 32 $read($psnoticenicks,%x)
if ($1 ison $comchan($me,1)) && ($2 == time) .ctcpreply $1 TIME (*) $msn.decode($gettok($sockname,2,46)) $+ : is an Unknown Member
elseif ($1 ison $comchan($me,1)) .notice $1 $+ $color(info2) $+ * $msn.decode($gettok($sockname,2,46)) $+ : 12 $+ is an Unknown Member
inc %x
}
}
tokenize 32 $psini(font.code) | var %f
if ($1 isnum) %f = $chr($1)
else %f = $1
if ($me isop $comchan($me,1)) && ($psini(do.msg.main)) && ($gettok($sockname,2,46) ison $comchan($me,1)) {
msg $comchan($me,1) S %f $+ $chr($2) $+ $3 $gettok($sockname,2,46) is an Unknown Member
}
unset %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] *
}
if (*ServerInfo:* iswm %x) {
if (%PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] picurl) { set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] pic Yes }
else { set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] pic No }
if (!%PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] occ) set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] occ Undisclosed
if (!%PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] page) set -u60 %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] page None
var %pic %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] pic
var %picurl %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] picurl
var %page %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] page
var %sex %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] gen
var %profnick %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] profnick
var %location %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] loc
var %age %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] age
var %status %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] mar
var %occupation %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] occ
var %nick $gettok($sockname,2,46)
var %chan $comchan($me,1)
var %url %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] url
var %aboutme %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] aboutme
if (%age !isnum) && (%age != undisclosed) %age = Undisclosed
if (%sex != male) && (%sex != female) %sex = Undisclosed
if (%occupation == $null) %occupation = Undisclosed
if (%status == $null) %status = Undisclosed
;;;; Variable Description list for Kicks or other whatevers to put in HERE;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; %pic value 'Yes' or 'No' if they have a pic
; %picurl value if above is Yes this will b the actual profile pic url else $null
; %page value 'None' or there homepage url
; %sex value 'male' 'female' or 'Undisclosed'
; %profnick value the nick on the profile
; %location value 'Undisclosed' or there location
; %age value 'Undisclosed' or there age
; %status value 'Undisclosed' or 'single' or 'marrried' etc etc
; %occupation value 'Undisclosed' or there occupation
; %chan value $chan
; %nick value $nick
; %url value the profile url
;;;skip all the kick criteria if not op
if ($me !isop %chan) goto msg
if (($wildread($psbadname,%nick)) || ($wildread($psbadname,%profnick))) && ($psini(do.names.kicklist)) {
access %chan add deny $ial(%nick).addr $psini(names.bm1) : %nick - badnick
kick %chan %nick $psini(names.km1)
}
if ((%profnick !isin %nick) && ($psini(do.names.dontmatch))) {
access %chan add deny $ial(%nick).addr $psini(names.bm2) : nicks nomatch - ( %nick ) ( %profnick )
kick %chan %nick $eval($psini(names.km2),3)
}
if ($psini(do.age.old)) && (%age != undisclosed) {
if ($psini(age.old.age) > %age) {
access %chan add deny $ial(%nick).addr $psini(age.old.bm) : %nick - %age $+ yo
kick %chan %nick $psini(age.old.km)
}
}
if ($psini(do.age.young)) && (%age != undisclosed) {
if ($psini(age.young.age) > %age) {
access %chan add deny $ial(%nick).addr $psini(age.young.bm) : %nick - %age $+ yo
kick %chan %nick $psini(age.young.km)
}
}
if ($psini(do.age.und)) && (%age = undisclosed) {
access %chan add deny $ial(%nick).addr $psini(age.und.bm) : %nick - age undisclosed
kick %chan %nick $psini(age.und.km)
}
if ($psini(do.gen.male)) && (%sex = male) {
access %chan add deny $ial(%nick).addr $psini(gen.male.bm) : %nick - sex male
kick %chan %nick $psini(gen.male.km)
}
if ($psini(do.gen.female)) && (%sex = female) {
access %chan add deny $ial(%nick).addr $psini(gen.female.bm) : %nick - sex female
kick %chan %nick $psini(gen.female.km)
}
if ($psini(do.gen.und)) && (%sex = undisclosed) {
access %chan add deny $ial(%nick).addr $psini(gen.und.bm) : %nick - sex undisclosed
kick %chan %nick $psini(gen.und.km)
}
if ($psini(do.loc.match)) && ($wildread($psbadloc,%location)) {
access %chan add deny $ial(%nick).addr $psini(loc.match.bm) : %nick - location %location
kick %chan %nick $psini(loc.match.km)
}
if ($psini(do.loc.nomatch)) && ($wildread($psgoodloc,%location)) {
access %chan add deny $ial(%nick).addr $psini(loc.nomatch.bm) : %nick - location %location
kick %chan %nick $psini(loc.nomatch.km)
}
if ($psini(do.loc.und)) && (%location == undisclosed) {
access %chan add deny $ial(%nick).addr $psini(loc.und.bm) : %nick - location undiclosed
kick %chan %nick $psini(loc.und.km)
}
if ($psini(do.web.kick)) && ($wildread($pspornsite,%page)) {
access %chan add deny $ial(%nick).addr $psini(website.bm) : %nick - pornpage %page
kick %chan %nick $psini(website.km)
}
if ($psini(do.web.search)) && ($wildread($pspornsite,$remove(%aboutme,$chr(44),$chr(32),$chr(9)))) {
access %chan add deny $ial(%nick).addr $psini(website.bm) : %nick - porn in 'aboutme'
kick %chan %nick $psini(website.km)
}
:msg
if ($psini(do.msg.echo)) echo -tmi25 %chan $+ $color(info2) $+ * $msn.decode(%nick) $+ 's ASL : $+ $eval($replace($psini(msg.echomsg),+,$ $+ +,`,%,@,,;,$!chr(44)),2)
if ($psini(do.msg.notice)) {
var %x 1
var %l $lines($psnoticenicks)
while (%x <= %l) {
tokenize 32 $read($psnoticenicks,%x)
if ($1 ison %chan) && ($2 == time) .ctcpreply $1 TIME (*) $eval($replace($psini(msg.mainmsg),+,$ $+ +,`,%,;,$!chr(44)),2)
elseif ($1 ison %chan) .notice $1 $+ $color(info2) $+ * $msn.decode(%nick) $+ : $+ $+ $eval($replace($psini(msg.echomsg),+,$ $+ +,`,%,@,,;,$!chr(44)),2)
inc %x
}
}
if ($me isop %chan) && ($psini(do.msg.main)) {
tokenize 32 $psini(font.code) | var %f
if ($1 isnum) %f = $chr($1)
else %f = $1
msg %chan S %f $+ $chr($2) $+ $3 $eval($replace($psini(msg.mainmsg),+,$ $+ +,`,%,@,,;,$!chr(44)),2)
}
if ($dialog(ProScan)) {
;;;;;;; default spy porn skip
if ($wildread($pspornsite,%page)) goto skip
if ($psini(do.spy.female)) && (%sex != female) goto skip
if ($psini(do.spy.male)) && (%sex != male) goto skip
if ($psini(do.spy.pic)) && (%pic != yes) goto skip
if ($psini(do.spy.age)) && (%age !isnum) goto skip
if ($psini(do.spy.age)) && ((%age < $psini(age.young.age)) || (%age > $psini(age.old.age))) goto skip
if ($psini(do.spy.loc)) && (!$wildread($psgoodloc,$remove(%location,$chr(44),$chr(32)))) goto skip
$dospypic(%picurl)
did -ra proscan 92 $msn.decode(%nick)
did -ra proscan 93 %age
did -ra proscan 94 %sex
did -ra proscan 99 %status
did -ra proscan 101 %location
did -ra proscan 103 $remove(%chan,$chr(35),$chr(37))
if ($psini(do.spy.sound)) splay $psini(spy.sound)
:skip
}
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
unset %PS. [ $+ [ $gettok($sockname,2,46) ] $+ ] *
}
sockread %x
}
}
#profdtl end
dialog ProScan {
title "Profile Scan"
size -1 -1 248 112
option dbu
tab "Names", 1, 0 0 248 112
text "Room / Pro Name Kicklist", 8, 8 16 65 8, tab 1 center
list 9, 8 26 66 65, tab 1 size vsbar
edit "", 10, 8 91 66 10, tab 1 autovs
button "Add", 11, 8 102 29 8, tab 1
button "Rem", 12, 42 102 29 8, tab 1
text "KickList Ban Mins Kick Msg", 13, 88 24 121 8, tab 1
check "", 14, 88 33 10 10, tab 1
edit "", 15, 128 32 18 10, tab 1
edit "", 16, 152 32 82 10, tab 1 autohs
text "If DontMatch Ban Mins Kick Msg", 17, 88 50 121 8, tab 1
check "", 18, 88 59 10 10, tab 1
edit "", 19, 128 58 18 10, tab 1
edit "", 20, 152 58 82 10, tab 1 autohs
tab "Age", 2
check "", 21, 42 35 10 10, tab 2
edit "", 22, 90 34 18 10, tab 2
edit "", 23, 114 34 82 10, tab 2 autohs
edit "", 24, 114 60 82 10, tab 2 autohs
edit "", 25, 90 60 18 10, tab 2
check "", 26, 42 61 10 10, tab 2
text "To young Age Ban Mins Kick Msg", 27, 34 52 137 8, tab 2
text " To old Age Ban Mins Kick Msg", 28, 34 26 137 8, tab 2
text "Undisclosed Ban Mins Kick Msg", 29, 34 78 137 8, tab 2
check "", 30, 42 87 10 10, tab 2
edit "", 32, 114 86 82 10, tab 2 autohs
edit "", 34, 60 60 18 10, tab 2
edit "", 31, 60 34 18 10, tab 2
edit "", 33, 90 86 18 10, tab 2
tab "Gender", 3
check "", 35, 42 35 10 10, tab 3
text " Male Ban Mins Kick Msg", 36, 34 26 137 8, tab 3
edit "", 38, 90 34 18 10, tab 3
edit "", 39, 114 34 82 10, tab 3 autohs
text " Female Ban Mins Kick Msg", 40, 34 52 137 8, tab 3
check "", 41, 42 61 10 10, tab 3
edit "", 43, 90 60 18 10, tab 3
edit "", 44, 114 60 82 10, tab 3 autohs
check "", 45, 42 87 10 10, tab 3
text "Undisclosed Ban Mins Kick Msg", 46, 34 78 137 8, tab 3
edit "", 47, 90 86 18 10, tab 3
edit "", 48, 114 86 82 10, tab 3 autohs
tab "Location", 4
text "Location If Match", 37, 8 16 65 8, tab 4 center
list 42, 8 26 66 17, tab 4 size vsbar
edit "", 49, 8 43 66 10, tab 4 autohs
button "Add", 50, 8 54 29 8, tab 4
button "Rem", 51, 42 54 29 8, tab 4
text "Undisclosed Ban Mins Kick Msg", 52, 88 74 121 8, tab 4
check "", 53, 88 33 10 10, tab 4
edit "", 54, 128 32 18 10, tab 4
edit "", 55, 152 32 82 10, tab 4 autohs
text "If NoMatch Ban Mins Kick Msg", 56, 88 50 121 8, tab 4
check "", 57, 88 59 10 10, tab 4
edit "", 58, 128 58 18 10, tab 4
edit "", 59, 152 58 82 10, tab 4 autohs
text "Location If No Match", 60, 8 64 65 8, tab 4 center
list 61, 8 74 66 17, tab 4 size vsbar
edit "", 62, 8 91 66 10, tab 4 autohs
button "Add", 63, 8 102 29 8, tab 4
button "Rem", 64, 42 102 29 8, tab 4
text "If Match Ban Mins Kick Msg", 65, 88 24 121 8, tab 4
check "", 66, 88 83 10 10, tab 4
edit "", 67, 128 82 18 10, tab 4
edit "", 68, 152 82 82 10, tab 4 autohs
tab "Website", 5
text "Homepage Kicklist", 69, 8 16 65 8, tab 5 center
list 70, 8 26 66 65, tab 5 size vsbar
edit "", 71, 8 91 66 10, tab 5 autohs
button "Add", 72, 8 102 29 8, tab 5
button "Rem", 73, 42 102 29 8, tab 5
check "", 74, 88 33 10 10, tab 5
text "KickList Ban Mins Kick Msg", 75, 88 24 121 8, tab 5
edit "", 76, 128 32 18 10, tab 5
edit "", 77, 152 32 82 10, tab 5 autohs
check "Search About Me Details", 78, 88 48 74 10, tab 5
check "", 91, 88 72 18 10, tab 5
text "KickAdult Ban Mins Kick Msg", 110, 88 64 121 8, tab 5
edit "", 111, 128 72 18 10, tab 5
edit "", 112, 152 72 82 10, tab 5 autohs
tab "Message", 6
list 79, 8 66 66 25, tab 6 size vsbar
edit "", 80, 8 91 66 10, tab 6 autohs
button "Add", 81, 8 102 29 8, tab 6
button "Rem", 82, 42 102 29 8, tab 6
check "Message to Main if OP", 83, 8 16 74 10, tab 6
edit "", 86, 8 26 234 10, tab 6 autohs
check "Notice Nicks", 87, 8 56 50 10, tab 6
check "Echo to Me", 7, 8 37 42 10, tab 6
edit "", 88, 8 47 234 10, tab 6 autohs
text "Color", 84, 88 73 25 8, tab 6 center
combo 113, 120 72 60 34, tab 6 drop
text "Font", 85, 88 84 25 8, tab 6 center
combo 114, 120 83 60 58, tab 6 sort size vsbar drop
check "Bold", 115, 99 96 26 10, tab 6
check "Italic", 116, 133 96 26 10, tab 6
check "Underlined", 117, 160 96 42 10, tab 6
button "Set", 118, 184 73 21 8, tab 6
button "Set", 119, 184 84 21 8, tab 6
text "Current Font :", 120, 96 60 41 8, tab 6 center
text "", 121, 138 60 106 8, tab 6
tab " Spy ", 89
box "ProfileScanPic", 90, 0 14 166 98, tab 89
text "", 92, 182 17 65 8, tab 89
text "", 93, 182 25 35 8, tab 89
text "", 94, 182 33 34 8, tab 89
text "Nick:", 95, 163 17 18 8, tab 89 right
text "Age:", 96, 163 25 18 8, tab 89 right
text "Sex:", 97, 169 33 12 8, tab 89 right
text "Stat:", 98, 163 41 18 8, tab 89 right
text "", 99, 182 41 65 8, tab 89
text "Live:", 100, 163 57 18 8, tab 89 right
text "", 101, 182 57 65 27, tab 89
text "Room:", 102, 164 49 18 8, tab 89 right
text "", 103, 183 49 64 8, tab 89
check "Females Only", 104, 168 102 42 8, tab 89
check "Males Only", 105, 168 93 42 8, tab 89
check "Pics Only", 106, 168 84 34 8, tab 89
check "Use Age", 107, 215 94 30 8, tab 89
check "Use Loc", 108, 215 85 30 8, tab 89
check "Sound", 109, 215 102 26 8, tab 89
tab "Trusted", 122
list 123, 176 34 66 65, tab 122 size vsbar
button "Remove Selected", 126, 178 102 61 8, tab 122
text "ProfileScan Skip list", 127, 176 16 65 8, tab 122 center
edit "", 128, 176 24 66 10, tab 122 read
box "General Information", 124, 8 16 162 90, tab 122
text "Trusted users can only b added by the nicklist menu item.", 125, 16 24 145 8, tab 122
text "Variables for the Msg's are.. `nick `age `sex `location", 129, 16 32 145 8, tab 122
text "`status `pic `page `url `picurl `profnick. Mirc colors for the", 130, 16 40 145 8, tab 122
text "echo use (@) (;) turn to (,) (+) to remove space. Notice's", 131, 16 48 145 8, tab 122
text "use the echo msg.. if u add (time) after the nick when ", 132, 16 56 145 8, tab 122
text "adding it uses the main msg and is sent as a ", 133, 16 64 145 8, tab 122
text "time reply.. better for webchat. Chosen font only ", 134, 16 72 145 8, tab 122
text "effects the Message to Main.", 135, 16 80 145 8, tab 122
text "Names Locations & Website.. make sure eg *string*", 136, 16 88 145 8, tab 122
text "Designed for Mirc + Vincula + MsnPayChat.", 137, 16 96 145 8, tab 122
check "", 138, 88 84 10 10, tab 1
edit "", 139, 128 84 18 10, tab 1
edit "", 140, 152 84 82 10, tab 1 autohs
text "Unknown Ban Mins Kick Msg", 141, 88 76 121 8, tab 1
}
alias wildread {
var %x 1
var %l $lines($1)
while (%x <= %l) {
if ($read($1,%x) iswm $2-) return $true
inc %x
}
return $false
}
alias pstrusted return ~PStrusted.txt
alias psnoticenicks return ~PSnoticenicks.txt
alias pspornsite return ~PSpornsite.txt
alias psgoodloc return ~PSgoodloc.txt
alias psbadloc return ~PSbadloc.txt
alias psbadname return ~PSbadname.txt
alias psinifile return ~ProScan.ini
alias psini {
if ($2 == $null) return $readini($psinifile,n,settings,$$1)
if ($1 == r) remini $psinifile settings $$2
else writeini $psinifile settings $$1 $2-
}
alias dospypic {
var %m
%m = $msn.ndll(detach,$window($msn.ndll(find,ProfileScanPic)).hwnd)
var %ProfileScanPic = $msn.ndll(find,ProfileScanPic)
%m = $msn.ndll(attach,$window(%ProfileScanPic).hwnd)
%m = $msn.ndll(attach,%ProfileScanPic)
if ($1) %m = $msn.ndll(navigate,$1)
else $msn.ndll(navigate,http://groups.msn.com/Editorial/en-us/images/home_icons_msnbutterfly_48x40_c.gif)
}
alias setfontcode {
var %x = $psini(font.color)
var %c $replace(%x,white,1,black,2,darkred,3,darkgreen,4,darkblue,5,darkyellow,6,purple,7,teal,8,lightgray,9,darkgray,\n,red,11,green,12,blue,\r,yellow,14,pink,15,cyan,16)
%x = 1
if ($psini(font.b)) inc %x
if ($psini(font.i)) %x = $calc(%x + 2)
if ($psini(font.u)) %x = $calc(%x + 4)
psini font.code %c %x $replace($psini(font.font),$chr(32),\b) $+;0
}
;;; [$dname] [$did] [file] [space delimited token number]
alias filllistbox {
did -r $1 $2
var %c = 1 | var %n = $lines($3)
while (%c <= %n) {
did -a $1 $2 $gettok($read($3,%c),$4,32)
inc %c
}
}
on *:start: {
unset %DoingScan.*
unset %HopSkip.*
unset %PS.*
if ($exists($+(",$psinifile,"))) { halt }
else {
psini names.unknown.bm 1440
psini names.unknown.km Unknown
psini font.color darkgray
psini font.font Arial
setfontcode
psini adult.bm 15
psini adult.km No Adult Profiles thanx
psini spy.sound $msn.registry(HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\\MediaPath) $+ \ding.wav
psini names.bm1 15
psini names.km1 Change your nick
psini names.bm2 1440
psini names.km2 um.. % $!+ profnick ?
psini age.old.age 45
psini age.old.bm 15
psini age.old.km They have computers in old folk homes now ??
psini age.young.age 16
psini age.young.bm 15
psini age.young.km I'd get locked up for chattn to u....
psini age.und.bm 15
psini age.und.km Profile age required
psini gen.male.bm 15
psini gen.male.km girls only
psini gen.female.bm 15
psini gen.female.km boys only
psini gen.und.bm 15
psini gen.und.km Profile Gender required
psini loc.match.bm 15
psini loc.match.km porn ?
psini loc.nomatch.bm 15
psini loc.nomatch.km Local chatter only plz
psini loc.und.bm 15
psini loc.und.km more profile details plz.. or r u homeless ??
psini website.bm 1440
psini website.km hah !! porn/spam/pimp GTFO !!
psini msg.mainmsg `nick + 's asl: `age +; `sex +; `location +; `status +; Pic= + `pic
psini msg.echomsg @12 `age +; `sex +; `location +; `status +; `occupation +; Pic= + `pic `profnick
write $psbadname *sexy*
write $psbadname *georgeous*
write $pspornsite *outwar*
write $pspornsite *outpimp*
write $pspornsite *cam.*
write $pspornsite *cams*
write $pspornsite *tasty*
write $pspornsite *webgirls*
write $pspornsite *internetpron*
write $pspornsite *hushlips*
write $pspornsite *chat-prive*
write $psbadloc *maryland*
write $psbadloc *pakistan*
write $psgoodloc *australia*
}
}
On *:Dialog:proscan:init:*: {
did -a $dname 15 $psini(names.bm1)
did -a $dname 16 $psini(names.km1)
did -a $dname 19 $psini(names.bm2)
did -a $dname 20 $psini(names.km2)
did -a $dname 31 $psini(age.old.age)
did -a $dname 22 $psini(age.old.bm)
did -a $dname 23 $psini(age.old.km)
did -a $dname 34 $psini(age.young.age)
did -a $dname 25 $psini(age.young.bm)
did -a $dname 24 $psini(age.young.km)
did -a $dname 33 $psini(age.und.bm)
did -a $dname 32 $psini(age.und.km)
did -a $dname 38 $psini(gen.male.bm)
did -a $dname 39 $psini(gen.male.km)
did -a $dname 43 $psini(gen.female.bm)
did -a $dname 44 $psini(gen.female.km)
did -a $dname 47 $psini(gen.und.bm)
did -a $dname 48 $psini(gen.und.km)
did -a $dname 54 $psini(loc.match.bm)
did -a $dname 55 $psini(loc.match.km)
did -a $dname 58 $psini(loc.nomatch.bm)
did -a $dname 59 $psini(loc.nomatch.km)
did -a $dname 67 $psini(loc.und.bm)
did -a $dname 68 $psini(loc.und.km)
did -a $dname 76 $psini(website.bm)
did -a $dname 77 $psini(website.km)
did -a $dname 86 $psini(msg.mainmsg)
did -a $dname 88 $psini(msg.echomsg)
did -a $dname 111 $psini(adult.bm)
did -a $dname 112 $psini(adult.km)
did -a $dname 139 $psini(names.unknown.bm)
did -a $dname 140 $psini(names.unknown.km)
if ($psini(do.names.unknown)) did -c proscan 138
if ($psini(do.adult)) did -c proscan 91
if ($psini(do.names.kicklist)) did -c proscan 14
if ($psini(do.names.dontmatch)) did -c proscan 18
if ($psini(do.age.old)) did -c proscan 21
if ($psini(do.age.young)) did -c proscan 26
if ($psini(do.age.und)) did -c proscan 30
if ($psini(do.gen.male)) did -c proscan 35
if ($psini(do.gen.female)) did -c proscan 41
if ($psini(do.gen.und)) did -c proscan 45
if ($psini(do.loc.match)) did -c proscan 53
if ($psini(do.loc.nomatch)) did -c proscan 57
if ($psini(do.loc.und)) did -c proscan 66
if ($psini(do.web.kick)) did -c proscan 74
if ($psini(do.web.search)) did -c proscan 78
if ($psini(do.msg.main)) did -c proscan 83
if ($psini(do.msg.echo)) did -c proscan 7
if ($psini(do.msg.notice)) did -c proscan 87
if ($psini(do.spy.pic)) did -c proscan 106
if ($psini(do.spy.male)) did -c proscan 105
if ($psini(do.spy.female)) did -c proscan 104
if ($psini(do.spy.loc)) did -c proscan 108
if ($psini(do.spy.age)) did -c proscan 107
if ($psini(do.spy.sound)) did -c proscan 109
if ($psini(font.b)) did -c proscan 115
if ($psini(font.i)) did -c proscan 116
if ($psini(font.u)) did -c proscan 117
filllistbox $dname 9 $psbadname 1
filllistbox $dname 42 $psbadloc 1
filllistbox $dname 61 $psgoodloc 1
filllistbox $dname 70 $pspornsite 1
filllistbox $dname 79 $psnoticenicks 1
filllistbox $dname 123 $pstrusted 2
did -ra $dname 121 ( $psini(font.font) ) ( $psini(font.color) )
didtok $dname 113 44 Black,White,DarkBlue,DarkGreen,Red,DarkRed,Purple,DarkYellow,Yellow,Green,Teal,Cyan,Blue,Pink,DarkGray,Gray
var %l 1
var %s
while ($hget(msn.fonts,%l) != $null) {
%s = %s $+ $hget(msn.fonts,%l) $+ ,
inc %l
}
didtok $dname 114 44 $left(%s,-1)
}
on *:dialog:proscan:edit:*:{
if ($did == 15) psini names.bm1 $did($dname,15).text
if ($did == 16) psini names.km1 $did($dname,16).text
if ($did == 19) psini names.bm2 $did($dname,19).text
if ($did == 20) psini names.km2 $did($dname,20).text
if ($did == 31) psini age.old.age $did($dname,31).text
if ($did == 22) psini age.old.bm $did($dname,22).text
if ($did == 23) psini age.old.km $did($dname,23).text
if ($did == 34) psini age.young.age $did($dname,34).text
if ($did == 25) psini age.young.bm $did($dname,25).text
if ($did == 24) psini age.young.km $did($dname,24).text
if ($did == 33) psini age.und.bm $did($dname,33).text
if ($did == 32) psini age.und.km $did($dname,32).text
if ($did == 38) psini gen.male.bm $did($dname,38).text
if ($did == 39) psini gen.male.km $did($dname,39).text
if ($did == 43) psini gen.female.bm $did($dname,43).text
if ($did == 44) psini gen.female.km $did($dname,44).text
if ($did == 47) psini gen.und.bm $did($dname,47).text
if ($did == 48) psini gen.und.km $did($dname,48).text
if ($did == 54) psini loc.match.bm $did($dname,54).text
if ($did == 55) psini loc.match.km $did($dname,55).text
if ($did == 58) psini loc.nomatch.bm $did($dname,58).text
if ($did == 59) psini loc.nomatch.km $did($dname,59).text
if ($did == 67) psini loc.und.bm $did($dname,67).text
if ($did == 68) psini loc.und.km $did($dname,68).text
if ($did == 76) psini website.bm $did($dname,76).text
if ($did == 77) psini website.km $did($dname,77).text
if ($did == 84) psini msg.font $did($dname,84).text
if ($did == 86) psini msg.mainmsg $did($dname,86).text
if ($did == 88) psini msg.echomsg $did($dname,88).text
if ($did == 111) psini adult.bm $did($dname,111).text
if ($did == 112) psini adult.km $did($dname,112).text
if ($did == 139) psini names.unknown.bm $did($dname,139).text
if ($did == 140) psini names.unknown.km $did($dname,140).text
}
on *:dialog:proscan:sclick:*:{
if ($did == 138) { if ($psini(do.names.unknown)) { psini r do.names.unknown | did -u proscan 138 }
else { psini do.names.unknown $true | did -c proscan 138 }
}
if ($did == 91) { if ($psini(do.adult)) { psini r do.adult | did -u proscan 91 }
else { psini do.adult $true | did -c proscan 91 }
}
if ($did == 14) { if ($psini(do.names.kicklist)) { psini r do.names.kicklist | did -u proscan 14 }
else { psini do.names.kicklist $true | did -c proscan 14 }
}
if ($did == 18) { if ($psini(do.names.dontmatch)) { psini r do.names.dontmatch | did -u proscan 18 }
else { psini do.names.dontmatch $true | did -c proscan 18 }
}
if ($did == 21) { if ($psini(do.age.old)) { psini r do.age.old | did -u proscan 21 }
else { psini do.age.old $true | did -c proscan 21 }
}
if ($did == 26) { if ($psini(do.age.young)) { psini r do.age.young | did -u proscan 26 }
else { psini do.age.young $true | did -c proscan 26 }
}
if ($did == 30) { if ($psini(do.age.und)) { psini r do.age.und | did -u proscan 30 }
else { psini do.age.und $true | did -c proscan 30 }
}
if ($did == 35) { if ($psini(do.gen.male)) { psini r do.gen.male | did -u proscan 35 }
else { psini do.gen.male $true | did -c proscan 35 }
}
if ($did == 41) { if ($psini(do.gen.female)) { psini r do.gen.female | did -u proscan 41 }
else { psini do.gen.female $true | did -c proscan 41 }
}
if ($did == 45) { if ($psini(do.gen.und)) { psini r do.gen.und | did -u proscan 45 }
else { psini do.gen.und $true | did -c proscan 45 }
}
if ($did == 53) { if ($psini(do.loc.match)) { psini r do.loc.match | did -u proscan 53 }
else { psini do.loc.match $true | did -c proscan 53 }
}
if ($did == 57) { if ($psini(do.loc.nomatch)) { psini r do.loc.nomatch | did -u proscan 57 }
else { psini do.loc.nomatch $true | did -c proscan 57 }
}
if ($did == 66) { if ($psini(do.loc.und)) { psini r do.loc.und | did -u proscan 66 }
else { psini do.loc.und $true | did -c proscan 66 }
}
if ($did == 74) { if ($psini(do.web.kick)) { psini r do.web.kick | did -u proscan 74 }
else { psini do.web.kick $true | did -c proscan 74 }
}
if ($did == 78) { if ($psini(do.web.search)) { psini r do.web.search | did -u proscan 78 }
else { psini do.web.search $true | did -c proscan 78 }
}
if ($did == 83) { if ($psini(do.msg.main)) { psini r do.msg.main | did -u proscan 83 }
else { psini do.msg.main $true | did -c proscan 83 }
}
if ($did == 7) { if ($psini(do.msg.echo)) { psini r do.msg.echo | did -u proscan 7 }
else { psini do.msg.echo $true | did -c proscan 7 }
}
if ($did == 87) { if ($psini(do.msg.notice)) { psini r do.msg.notice | did -u proscan 87 }
else { psini do.msg.notice $true | did -c proscan 87 }
}
if ($did == 106) { if ($psini(do.spy.pic)) { psini r do.spy.pic | did -u proscan 106 }
else { psini do.spy.pic $true | did -c proscan 106 }
}
if ($did == 105) { if ($psini(do.spy.male)) { psini r do.spy.male | did -u proscan 105 }
else {
psini do.spy.male $true | did -c proscan 105
if ($psini(do.spy.female)) { psini r do.spy.female | did -u proscan 104 }
}
}
if ($did == 104) { if ($psini(do.spy.female)) { psini r do.spy.female | did -u proscan 104 }
else {
psini do.spy.female $true | did -c proscan 104
if ($psini(do.spy.male)) { psini r do.spy.male | did -u proscan 105 }
}
}
if ($did == 108) { if ($psini(do.spy.loc)) { psini r do.spy.loc | did -u proscan 108 }
else { psini do.spy.loc $true | did -c proscan 108 }
}
if ($did == 107) { if ($psini(do.spy.age)) { psini r do.spy.age | did -u proscan 107 }
else { psini do.spy.age $true | did -c proscan 107 }
}
if ($did == 109) { if ($psini(do.spy.sound)) { psini r do.spy.sound | did -u proscan 109 }
else { psini do.spy.sound $true | did -c proscan 109 }
}
if ($did == 11) {
if (!$did($dname,10).text) halt
if ($read($psbadname,w,$did($dname,10).text)) write -dl $+ $readn $psbadname
write -il1 $psbadname $did($dname,10).text
filllistbox $dname 9 $psbadname 1
did -r $dname 10
}
if ($did == 12) {
if (!$did($dname,9).seltext) halt
var %x $read($psbadname,w,$did($dname,9).seltext)
write -dl $+ $readn $psbadname
filllistbox $dname 9 $psbadname 1
}
if ($did == 50) {
if (!$did($dname,49).text) halt
if ($read($psbadloc,w,$did($dname,49).text)) write -dl $+ $readn $psbadloc
write -il1 $psbadloc $did($dname,49).text
filllistbox $dname 42 $psbadloc 1
did -r $dname 49
}
if ($did == 51) {
if (!$did($dname,42).seltext) halt
var %x $read($psbadloc,w,$did($dname,42).seltext)
write -dl $+ $readn $psbadloc
filllistbox $dname 42 $psbadloc 1
}
if ($did == 63) {
if (!$did($dname,62).text) halt
if ($read($psgoodloc,w,$did($dname,62).text)) write -dl $+ $readn $psgoodloc
write -il1 $psgoodloc $did($dname,62).text
filllistbox $dname 61 $psgoodloc 1
did -r $dname 62
}
if ($did == 64) {
if (!$did($dname,61).seltext) halt
var %x $read($psgoodloc,w,$did($dname,61).seltext)
write -dl $+ $readn $psgoodloc
filllistbox $dname 61 $psgoodloc 1
}
if ($did == 72) {
if (!$did($dname,71).text) halt
if ($read($pspornsite,w,$did($dname,71).text)) write -dl $+ $readn $pspornsite
write -il1 $pspornsite $did($dname,71).text
filllistbox $dname 70 $pspornsite 1
did -r $dname 71
}
if ($did == 73) {
if (!$did($dname,70).seltext) halt
var %x $read($pspornsite,w,$did($dname,70).seltext)
write -dl $+ $readn $pspornsite
filllistbox $dname 70 $pspornsite 1
}
if ($did == 81) {
if (!$did($dname,80).text) halt
if ($read($psnoticenicks,w,$did($dname,80).text)) write -dl $+ $readn $psnoticenicks
write -il1 $psnoticenicks $did($dname,80).text
filllistbox $dname 79 $psnoticenicks 1
did -r $dname 80
}
if ($did == 82) {
if (!$did($dname,79).seltext) halt
var %x $read($psnoticenicks,w,$did($dname,79).seltext)
write -dl $+ $readn $psnoticenicks
filllistbox $dname 79 $psnoticenicks 1
}
if ($did == 118) {
if (!$did(113)) halt
psini font.color $did(113))
did -ra $dname 121 ( $psini(font.font) ) ( $psini(font.color) )
setfontcode
}
if ($did == 119) {
if (!$did(114)) halt
psini font.font $did(114))
did -ra $dname 121 ( $psini(font.font) ) ( $psini(font.color) )
setfontcode
}
if ($did == 115) { if ($psini(font.b)) { psini r font.b | did -u proscan 115 }
else { psini font.b $true | did -c proscan 115 }
setfontcode
}
if ($did == 116) { if ($psini(font.i)) { psini r font.i | did -u proscan 116 }
else { psini font.i $true | did -c proscan 116 }
setfontcode
}
if ($did == 117) { if ($psini(font.u)) { psini r font.u | did -u proscan 117 }
else { psini font.u $true | did -c proscan 117 }
setfontcode
}
if ($did == 123) did -ra $dname 128 $gettok($read($pstrusted,w,* $+ $did($did).seltext $+ *),1,32)
if ($did == 126) {
if (!$did(123).seltext) halt
write -ds $gettok($read($pstrusted,w,* $+ $did(123).seltext $+ *),1,32) $pstrusted
did -ra $dname 128
filllistbox $dname 123 $pstrusted 2
}
}
Edited May 2, 2004 6:53 PM by X-Fusion