Skip to content
MSN Addons Archive

msn addons june

A TG007 community discussion started by Ozzy10.

Closed discussion 6 posts
Page 1 of 1
Closed
Topic #530 · 6 published posts · 2,462 views

Please feel free to post msn addons here, but also remember that some people dont know too much about msn and are learning.

Please make sure you post full code for your addon and that you add credits for other peoples work.

Edited May 24, 2004 11:33 AM by ozzy

My code does NOT have bugs. It just develops random features.

on *:TEXT:*:#:{
if ($nick == $me) halt
write alllog.txt $asctime(dd/mm-HH:nn) $chr(46) $nick $chr(46) $1-
if (($asctime(HH:nn) == 00:00) && (%filechecked == $null)) { .signal logdel | halt }
else halt
}

on *:KICK:#:{
/write alllog.txt $asctime(dd/mm-HH:nn) $chr(46) $nick KICK $knick $1-
}

on *:ACTION:*:#:{
write alllog.txt $asctime(dd/mm-HH:nn) $chr(46) $nick $chr(46) $1-
}

on *:TOPIC:#:{
write alllog.txt $asctime(dd/mm-HH:nn) $chr(46) $nick Change TOPIC $chr(46) $1-
}


on *:TEXT:*@dellog*:?:{
if ($nick !isowner $comchan($me,1)) halt
else remove alllog.txt
}

on *:TEXT:*@log*:?:{
if ($2 == $null) halt
;if ($nick !isowner $comchan($me,1)) halt
else {
  set %lineread 1
  while ( %lineread <= $lines(alllog.txt) ) {
    query $nick $read(alllog.txt, nw,* $+ $2 $+ * $+ $3 $+ *,%lineread)
    set %var1 $readn
    if ($3 == $null) goto repeat
    query $nick $read(alllog.txt, nw,* $+ $3 $+ * $+ $2 $+ *,%lineread)
    :repeat
    set %var2 $readn
    inc %search
    if ((%var1 == 0) && (%var2 == 0)) break  
    if (%search > 50) { query $nick Too much record , pls specified more | break } 
    if (%var1 >= %var2) %lineread = $calc( %var1 + 1 )
    if (%var2 > %var1) %lineread = $calc( %var2 + 1 )   
  }
  unset %search %lineread %var*
  close -m
}
}
on *:SIGNAL:logdel:{  
echo -s logdel started
set -u3600 %filechecked 1
set %lineread1 $read(alllog.txt, w, * $+ $asctime($calc($ctime($asctime(dd/mm/yy HH:nn:ss)) - 86400), dd/mm) $+ * )
set %lineread1 $readn
while ( %lineread1 > 0 )  {
  if ( * $+ $asctime($calc($ctime($asctime(dd/mm/yy HH:nn:ss)) - 604800), dd/mm) $+ * iswm * $+ $read(alllog.txt,%lineread1) $+ * ) { write -dl $+ %lineread1 alllog.txt | dec %lineread1 | continue } 
  else { dec %lineread1 | continue }
}
}

 

This is log for room and can query back the log by @log command

 

Please feel free to ask for help ~

My flood protection

#textflood on
on @*:text:*:#: { 
 if ($strip($1-) isin %tf. [ $+ [ $nick ] ]) { 
   inc -u10 %tn. [ $+ [ $nick ] ] 
 } 
 else { 
   set -u10 %tf. [ $+ [ $nick ] ] $strip($1-) 
 } 
 if (%tn. [ $+ [ $nick ] ] >= 2) { 
   kick $chan $nick Text Flood! 
 } 
} 
on @*:action:*:#: { 
 if ($strip($1-) isin %tf. [ $+ [ $nick ] ]) { 
   inc -u10 %tn. [ $+ [ $nick ] ] 
 } 
 else { 
   set -u10 %tf. [ $+ [ $nick ] ] $strip($1-) 
 } 
 if (%tn. [ $+ [ $nick ] ] >= 2) { 
   kick $chan $nick Text Flood! 
 } 
} 
on ^*:KICK:#:{
 unset %tn. [ $+ [ $knick ] ]
 unset %tf. [ $+ [ $knick ] ]
}
#textflood end

Edited Jun 2, 2004 6:21 PM by Spike1506

#NickDetect on
on *:JOIN:#: exoclonecheck $nick $address $chan
raw knock:*: exoclonecheck $nick $address $1

alias exoclonecheck {
 if ($1 != $me) {
 ;If you want it to store more or less nicknames,
 ;change this number below to the number you want to store.
   var %n 20
 ;change the 5 to the number of clones you want to detect
   var %x $read($scriptdir $+ exoclonecheck.dat,sn,$2)
   if (%x == $null) write $+(",$scriptdir,exoclonecheck.dat") $2 $1
   else {
     %x = $addtok(%x,$1,32)
     if ($numtok(%x,32) > %n) %x = $deltok(%x,1,32)
     write -l $+ $readn $+(",$scriptdir,exoclonecheck.dat") $2 %x
   }
   if ($numtok(%x,32) > 1) amsg $ecc.decode($1 $+ 's last $numtok(%x,32) names: $replace(%x,$chr(32),$chr(44) $+ $chr(32)))
   elseif ((%x != $1) && (%x)) amsg $ecc.decode($1 $+ 's last name: %x)
 }
}

alias ecc.decode {
 if ($msn.vver) return $msn.ifdecode($1-)
 else return $1-
}
#NickDetect end

 

eXyonyte's Clone Detector works good with the above passport flood protection devil.gif

this clone detector will show a users last 20 nicks and order like this for example

 

JeremyStCyr : X-Cessive-Force's last 4 names: X-Cessive-Force, LetItBurn, MucHMothaFoOker, PimpJuice
Edited Jun 11, 2004 1:55 PM by JeremyStCyr

to ban guests, just use this code.

 

alias GuestBan { access $chan add deny >*!*@*$* 0 }

 

This alias will ban all guests. smile.gif

on admin:TEXT:.access*:#:{
 set %access $iif($2 == $null, all, $2)
 set %access2 0
 set %accesschan $chan
 enable #access2
 access $chan
 timer 1 2 disable #access2
 timer 1 2 getaccess
}

#access2 off
raw 804:*:{
 if (%access == all) {
   privmsg %accesschan $3 $4 $5 Reason: $7-
   inc %access2
 }
 else {
   if (%access == $3) {
     privmsg %accesschan $3 $4 $5 Reason: $7-
     inc %access2
   }
 }
}
#access2 end

alias getaccess {
 if (%access2 == 0) { privmsg %accesschan The $iif(%access == all, whole, %access) access list was cleaned out before i got there. }
 if (%access2 != 0) { privmsg %accesschan There were %access2 thing's found on %access access list. }
 unset %access*
}

Simple access finder I use for my script. Works good. If you type .access it'll bring up the access list for the room. EX if you type .access it'll bring up who is on owner access and for how long.