/*
Anti DEOP
*/
#deop off
on 1:deop:*:{
  if ($nick != $me) {
    if ($opnick == $me) {
      if (quakenet !isin $server && undernet !isin $server && wanadoo !isin $server && voila !isin $server && x-echo !isin $server && sentoo !isin $server && geeknode !isin $server) { .msg chanserv op $chan $me }
      if (quakenet isin $server) { .msg q op $chan $me }
      if (undernet isin $network) { .msg x op $chan $me }
      if (geeknode isin $server) { .msg c op $chan $me }
      if (wanadoo isin $server || voila isin $server || x-echo isin $server || sentoo isin $server) { .msg irix op $chan $me }
    }
  }
}
#deop end

/*
Anti BAN
*/
#aban off
On ^*:ban:#:{ if (($me ishop #) || ($me isop #)) {
    if ($banmask iswm $address($me,0) || $banmask iswm $address($me,1) || $banmask iswm $address($me,2) || $banmask iswm $address($me,3) || $banmask iswm $address($me,4) || $banmask iswm $address($me,5) || $banmask iswm $address($me,6) || $banmask iswm $address($me,7) || $banmask iswm $address($me,8) || $banmask iswm $address($me,9) || $banmask iswm $address($me,10)) {
      mode $chan -b $banmask
    }
  }
}
#aban end

/*
Réaction à l'ouverture d'un pv
*/
on *:open:?:*:{ echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 Privé: $+ %col3 $nick veux te parler en pv }

/*
Limitation du nombre de PV
*/
on ^*:open:?:*:{ 
  if (%pv != $null && $query(0) >= %pv) {
    haltdef
    .msg $nick %msg.pvmax
    if (%pvmax.not == on) {
      var %pv $1-
      echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 Privé: $+ %col3 $nick voulait te parler en pv :  %pv
    }
  }
}

/*
Réaction à l'écriture de son pseudo dans une autre fenêtre que celle active
*/
on ^1:text:*:#:{
  if ($away == $true && %log.away == on) { goto blip }
  if ($me isin $strip($1-,burc) && $chan != $active) {
    var %hl.tmp $strip($1-,burc)
    if (%exact == on) { var %hl.reg (^( $+ $me $+ [ ,.>!?;:]+)|( + $+ $me $+ [ ,.>!?;:]+)|( + $+ $me $+ ) $+ $chr(36) $+ )
      if ((($regex(%hl.tmp ,%hl.reg) != 0)) || $$me == %hl.tmp) { echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 Echo $+ %col3 de $+ %col1 < $+ %col2 $+ $nick $+  $+ %col1 $+ > $+ %col3 sur #  $+ %col2 $+ [ %hl.tmp  $+ %col2 $+ ] : $time }
    }
    elseif ($left($me,%reac) isin %hl.tmp) { echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 Echo $+ %col3 de $+ %col1 < $+ %col2 $+ $nick $+  $+ %col1 $+ > $+ %col3 sur #  $+ %col2 $+ [ %hl.tmp  $+ %col2 $+ ] : $time }
  }
  :blip
}

on ^1:action:*:#:{
  if ($away == $true && %log.away == on) { goto blop }
  if ($me isin $strip($1-,burc) && $chan != $active) {
    var %hl.tmp $strip($1-,burc)
    if (%exact == on) { var %hl.reg (^( $+ $me $+ [ ,.>!?;:]+)|( + $+ $me $+ [ ,.>!?;:]+)|( + $+ $me $+ ) $+ $chr(36) $+ )
      if ((($regex(%hl.tmp ,%hl.reg) != 0)) || $$me == %hl.tmp) { echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 Echo $+ %col3 de $+ %col1 < $+ %col2 $+ $nick $+  $+ %col1 $+ > $+ %col3 sur #  $+ %col2 $+ [ * $nick %hl.tmp  $+ %col2 $+ ] : $time }
    }
    elseif ($left($me,%reac) isin %hl.tmp) { echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 Echo $+ %col3 de $+ %col1 < $+ %col2 $+ $nick $+  $+ %col1 $+ > $+ %col3 sur #  $+ %col2 $+ [ * $nick %hl.tmp  $+ %col2 $+ ] : $time }
  }
  :blop
}

/*
Délai avant de joindre un canal automatiquement lors de la connexion
*/
on *:connect:{ if (%jdel != $null) .autojoin -d $+ %jdel }

/*
Réponses Ctcp
*/
ctcp !*:ping:{
  haltdef
  .notice $nick %msg.ctcp.ping
  if (Dialog isin %mode.evenement && $dialog(arf).title == $null) { hu }
  if (Echos isin %mode.evenement) { echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 [Ping] $+ %col3 $nick vient de faire un CTCP Ping sur toi !!! }
  if ($dialog(arf).title != $null) { did -i arf 1 1 $time ¿ $nick a fait un CTCP Ping sur toi }
  if ($dialog(arf2).title != $null) { did -i arf2 1 1 $time ¿ $nick a fait un CTCP Ping sur toi }
}

ctcp !*:time:{ haltdef
  .notice $nick %msg.ctcp.time
  if (Dialog isin %mode.evenement && $dialog(arf).title == $null) { hu }
  if (Echos isin %mode.evenement) { echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 [Time] $+ %col3 $nick vient de faire un CTCP Time sur toi !!! }
  if ($dialog(arf).title != $null) { did -i arf 1 1 $time ¿ $nick a fait un CTCP Time sur toi }
  if ($dialog(arf2).title != $null) { did -i arf2 1 1 $time ¿ $nick a fait un CTCP Time sur toi }
}

ctcp !*:version:{ haltdef
  .notice $nick version ? Hmmm! NisScript [ %nsv ] dispo sur http://wushunisroch.free.fr/irc.html !!
  if (Dialog isin %mode.evenement && $dialog(arf).title == $null) { hu }
  if (Echos isin %mode.evenement) { echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 [Version] $+ %col3 $nick vient de faire un CTCP Version sur toi !!! }
  if ($dialog(arf).title != $null) { did -i arf 1 1 $time ¿ $nick a fait un CTCP Version sur toi }
  if ($dialog(arf2).title != $null) { did -i arf2 1 1 $time ¿ $nick a fait un CTCP Version sur toi }
}

ctcp !*:finger:{ haltdef
  .notice $nick %msg.ctcp.finger
  if (Dialog isin %mode.evenement && $dialog(arf).title == $null) { hu }
  if (Echos isin %mode.evenement) { echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 [Finger] $+ %col3 $nick vient de faire un CTCP Finger sur toi !!! }
  if ($dialog(arf).title != $null) { did -i arf 1 1 $time ¿ $nick a fait un CTCP Finger sur toi }
  if ($dialog(arf2).title != $null) { did -i arf2 1 1 $time ¿ $nick a fait un CTCP Finger sur toi }
}

ctcp !*:dcc:{
  if (dcc isin $1- && send isin $1-) {
    if (Echos isin %mode.evenement) { echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 [DCC] $+ %col3 $nick vient de faire un DCCsend sur toi !!! }
    if (Dialog isin %mode.evenement && $dialog(arf).title == $null) { hu }
    if ($dialog(arf).title != $null) { did -i arf 1 1 $time %e.sign $nick a fait un DCCsend sur toi }
    if ($dialog(arf2).title != $null) { did -i arf2 1 1 $time %e.sign $nick a fait un DCCsend sur toi }
  }
}

ctcp !*:*:{
  if (Echos isin %mode.evenement) { echo -ga  $+ %col1 $+ %e.sign $+  $+ %col2 [?] $+ %col3 $nick vient de faire un CTCP inconnu sur toi !!! }
  if (Dialog isin %mode.evenement && $dialog(arf).title == $null) { hu }
  if ($dialog(arf).title != $null) { did -i arf 1 1 $time ? $nick a fait un CTCP inconnu sur toi }
  if ($dialog(arf2).title != $null) { did -i arf2 1 1 $time ? $nick a fait un CTCP inconnu sur toi }
}

/*
Unban auto sur ban -u pour les non vhost
*/
#uban off
on ^1:RAWMODE:*:{
  if (+b isin $1 && - !isin $1) {
    if (@*- isin $2) { var %uban $2 | .timer.uban 1 % [ $+ [ bantime ] ] mode # -b %uban }
  }
  .disable #uban
}
#uban end

/*
Remise à zéro du script
*/
alias ReloadNisScript {
  .copy -a variables.ini variables.sav
  if ($script(sysinfo.mrc) != $null) .unload -rs sysinfo.mrc
  if ($script(gtsdll.ini) != $null) .unload -rs gtsdll.ini
  if ($script(folding.mrc) != $null) .unload -rs folding.mrc
  if ($script(colorholic.mrc) != $null) { .unload -rs colorholic.mrc | .load -rs5 system\remotes\couleur.mrc }
  .remove variables.ini
  .disable #*
  .fullname NisScript
  .nick NSuser
  .anick xXx
  .emailaddr ...
  .writeini mirc.ini ident userid NSuser
  .copy -o variables.txt variables.ini
  .saveini
  exit
}

/*
Supression du fichier de mise à jour
*/
alias miseajourterminee {
  .saveini
  .timer 1 10 .unload -rs maj.mrc
  .timer 1 10 .remove maj.mrc
  if ($exists(majns.exe) = $true) { .timer 1 10 .remove majns.exe }
}

/*
Vérification de la version des NS en ligne sur le canal
*/
on *:text:!version:*: if ($nick == Nisroch) .notice $nick NisScript %nsv
