Kick Someone When They Talk

By F15pilotX on Mar 29, 2009

This script kicks a person that you specify whenever they talk in a certain channel.

To change the person that you want to kick, just type /ck USER
To change the reason you kick the person for, just type /cr REASON

Be sure to change #chan in "on :TEXT::#chan:" to whatever channel you want.

  • In example, if I wanted it to work in #f15, "on :TEXT::#f15:"
  • You can make it work in multiple channels by using #chan1,#chan2
  • If you want it to work in all channels you are in, just put a # there.

Enjoy!

on *:TEXT:*:#chan: { 
  var %length = $len(%user) + 2
  var %persontalking = $mid($left($address(%user,0), %length),3,$len(%user))
  var %tester = $left($address,$len(%user))
  if ( %persontalking isin %tester ) { kick $chan $nick %reason } 
}

alias ck %user = $$1
alias cr %reason = $$1

Comments

Sign in to comment.
sercan386   -  Mar 30, 2009

i don't understand why you have all that stuff in your script. it could be done a much cleaner way:

on *:TEXT:*:#:{ if($chan == %kickchan) $iif($nick == %kicknick,ban,noop) -k $chan $nick 2 } 
alias kicknick set %kicknick $1
alias kickchan set %kickchan $1
 Respond  
Jethro   -  Mar 30, 2009

Well, I still see it not being useful because a channel can go dead pretty quickly if ban or kick is often enforced...sort of dictated.

 Respond  
bwyard   -  Mar 29, 2009

i actually am the one that requested the script and its for someone that actually needs to learn a lesson

 Respond  
F15pilotX   -  Mar 29, 2009

This was more for a friend of mine/for fun, as The_Almighty_Duelist said. He asked for it a certain way, so I gave it to him =P

Jethro:
The alias is used to set the local variable, so yes, it will work with that.
I realized the thing about the $$1's a few minutes after posting, so that's fixed now, thanks!

Thanks for the comments ya'll, it's greatly appreciated :)

 Respond  
^Neptune   -  Mar 29, 2009
on *:TEXT:*:#: { ban -k $nick }

?!?!

 Respond  
Tamaki   -  Mar 29, 2009

i'm sure it's all just for fun

and Jethro_ you don't have to have the =
set %var works just fine

it's useful if someone is just playing around with their friends...so mean

 Respond  
FordLawnmower   -  Mar 29, 2009

I don't get all the $len() $left() ? What is that for? Why not just make a variable

%auto.kick.user.addy = $address($$1,3)

and then

 if ($address($nick,3) == %auto.kick.user.addy) { kick $chan $nick %reason }

For me, I would just use akick or +b ~q: . This method seems like cruel and unusual punishment ;/

 Respond  
Jethro   -  Mar 29, 2009

First, be sure your script works before you post it. With local variable I don't think it will work...and it needs to be revised.
Second, your aliases are incorrect, they should be:

alias ck set %user = $$1
alias cr set %reason = $$1

Third, your script is not useful.

 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.