Originally Posted by maroon
Sorry, a last second edit messed it up. Since I was not calling the alias using a timer, I should not have called the alias using $unsafe(). Here's the updated alias, where I removed that $unsafe() and changed the #channelname, and changed the anon* to minduser*

Also, you will need to test this against a different nick, because it will fail to detect when you change to a minduser* nick, because ($me isop #Alessandra) is seeing $me as the old nick, but sees your $newnick as being @op

Code
ON @*:JOIN:#Alessandra: { if (MindUser* iswm $nick) badnick_alias $unsafe($chan $nick) }
ON *:NICK: { if ((MindUser* iswm $newnick) && ($me isop #Alessandra) && ($newnick ison #Alessandra)) badnick_alias #Alessandra $newnick }

alias badnick_alias {
  var %chan $1 , %nick $2
  if ((MindUser* !iswm %nick) || (%nick !ison %chan)) return
  if (!$3) {
    .notice %nick Please change your nick within 2 minutes, or you will be kicked.
    .timer 1  30 badnick_alias $unsafe($1-2  30)
    .timer 1  90 badnick_alias $unsafe($1-2  90)
    .timer 1 120 badnick_alias $unsafe($1-2 120)
    return
  }
  elseif ($3 == 30) /notice %nick This is your second warning change your nick or be kicked 1 minute remaining!!
  elseif ($3 == 90) /notice %nick This is your LAST warning change your nick or be kicked 30 seconds remaining!!
  elseif ($3 == 120) kick %chan %nick Please change your nick
}
You great Mr. maroon wink . This work almost perfectly. Just I edited timers because 2 minutes are too much :-P
I really thanks You a lot for Your creation.

Last edited by Fernet; 05/03/23 06:48 PM. Reason: Better if I keep /notice than /say in channel