Protection complet

Contenu du snippet

ya rien a dire pour le lancer taper /protect

Source / Exemple :


alias protect { if (!$dialog(protect)) dialog -m protect protect }
dialog protect {
  title "Protections personnelles /protect"
  size -1 -1 150 155
  option dbu
  tab "Flood", 1, 5 5 140 145
  tab "CTCP", 2
  tab "Autres", 3
  box "Type", 4, 10 20 130 85, tab 1
  check "CTCP", 5, 15 30 40 10, tab 1
  check "Message", 6, 15 40 40 10, tab 1
  check "Privé", 7, 15 50 40 10, tab 1
  check "Notice", 8, 15 60 40 10, tab 1
  check "Invitation", 9, 15 70 40 10, tab 1
  check "DCC chat", 10, 15 80 40 10, tab 1
  check "DCC send", 11, 15 90 40 10, tab 1
  edit "", 12, 60 30 17 10, tab 1 limit 3 center
  edit "", 13, 60 40 17 10, tab 1 limit 3 center
  edit "", 14, 60 50 17 10, tab 1 limit 3 center
  edit "", 15, 60 60 17 10, tab 1 limit 3 center
  edit "", 16, 60 70 17 10, tab 1 limit 3 center
  edit "", 17, 60 80 17 10, tab 1 limit 3 center
  edit "", 18, 60 90 17 10, tab 1 limit 3 center
  edit "", 19, 90 30 17 10, tab 1 limit 3 center
  edit "", 20, 90 40 17 10, tab 1 limit 3 center
  edit "", 21, 90 50 17 10, tab 1 limit 3 center
  edit "", 22, 90 60 17 10, tab 1 limit 3 center
  edit "", 23, 90 70 17 10, tab 1 limit 3 center
  edit "", 24, 90 80 17 10, tab 1 limit 3 center
  edit "", 25, 90 90 17 10, tab 1 limit 3 center
  text "en", 26, 80 31 10 8, tab 1
  text "en", 27, 80 41 10 8, tab 1
  text "en", 28, 80 51 10 8, tab 1
  text "en", 29, 80 61 10 8, tab 1
  text "en", 30, 80 71 10 8, tab 1
  text "en", 31, 80 81 10 8, tab 1
  text "en", 32, 80 91 10 8, tab 1
  text "secondes", 33, 110 31 25 8, tab 1
  text "secondes", 34, 110 41 25 8, tab 1
  text "secondes", 35, 110 51 25 8, tab 1
  text "secondes", 36, 110 61 25 8, tab 1
  text "secondes", 37, 110 71 25 8, tab 1
  text "secondes", 38, 110 81 25 8, tab 1
  text "secondes", 39, 110 91 25 8, tab 1
  box "Ignore", 40, 10 110 130 35, tab 1
  text "Mask :", 41, 15 120 25 8, tab 1
  text "Temps :", 42, 15 132 25 8, tab 1
  text "secondes", 43, 65 132 25 8, tab 1
  combo 44, 45 118 90 83, tab 1 size drop
  edit "", 45, 45 131 17 10, tab 1 limit 3 center
  box "Réponses aux CTCP", 46, 10 20 130 75, tab 2
  check "Ping", 47, 15 30 40 10, tab 2
  check "Version", 48, 15 40 40 10, tab 2
  check "Script", 49, 15 50 40 10, tab 2
  check "Help", 50, 15 60 40 10, tab 2
  check "Time", 51, 15 70 40 10, tab 2
  check "Finger", 52, 15 80 40 10, tab 2
  edit "", 53, 60 30 75 10, tab 2 autohs
  edit "", 54, 60 40 75 10, tab 2 autohs
  edit "", 55, 60 50 75 10, tab 2 autohs
  edit "", 56, 60 60 75 10, tab 2 autohs
  edit "", 57, 60 70 75 10, tab 2 autohs
  edit "", 58, 60 80 75 10, tab 2 autohs
  box "Autres protections", 59, 10 20 130 55, tab 3
  check "Anti op", 60, 15 30 45 10, tab 3
  check "", 61, 80 30 50 10, tab 3
  check "Anti ban", 62, 15 40 45 10, tab 3
  check "", 63, 80 40 50 10, tab 3
  check "Auto rejoin sur kick", 64, 15 50 60 10, tab 3
  check "", 65, 80 50 50 10, tab 3
  check "Anti voice", 66, 15 60 45 10, tab 3
  check "Anti dévoice", 67, 80 60 50 10, tab 3
  check "Mettre topic", 68, 70 114 50 10, tab 3
  check "Mettre modes", 69, 70 124 50 10, tab 3
  check "S'auto voicer", 70, 70 134 50 10, tab 3
  edit "", 71, 40 89 95 10, tab 3 autohs
  edit "", 72, 40 99 95 10, tab 3 autohs
  box "Modes et topic par défauts", 73, 10 80 130 65, tab 3
  text "Topic :", 74, 15 90 20 8, tab 3
  text "Modes :", 75, 15 100 20 8, tab 3
  text "Si le chan est vide :", 76, 15 115 52 8, tab 3
  button "", 77, 110 155 30 12, cancel
}
on *:dialog:protect:init:0:{
  dll $mdx SetDialog $dname icon 0 images\protect.ico
  did -ra $dname 61 Anti déop ( $+ %robot $+ )
  did -ra $dname 63 Anti ban ( $+ %robot $+ )
  did -ra $dname 65 Anti kick ( $+ %robot $+ )
  didtok $dname 44 44 [0] *!user@hôte.domaine,[1] *!*user@hôte.domaine,[2] *!*@hôte.domaine,[3] *!*user@*.domaine,[4] *!*@*.domaine,[5] nick!user@hôte.domaine,[6] nick!*user@hôte.domaine,[7] nick!*@hôte.domaine,[8] nick!*user@*.domaine,[9] nick!*@*.domaine
  var %i = 5 | while (%i < 12) { if (!%flood. [ $+ [ %i ] $+ ]) did -m $dname $calc(%i +7) $+ , $+ $calc(%i +14) | else did -c $dname %i | inc %i }
  var %i = 47 | while (%i < 53) { if ($read(sauv.txt,$calc(%i + 57)) == 0) did -m $dname $calc(%i +6) | else did -c $dname %i | inc %i }
  var %i = 12 | while (%i < 19) { did -ra $dname %i %flood. [ $+ [ $calc(%i - 7) ] $+ ] .nbre | inc %i }
  var %u = 19 | while (%u < 26) { did -ra $dname %u %flood. [ $+ [ $calc(%u - 14) ] $+ ] .temp | inc %u }
  var %i = 111 | while (%i < 117) { did -ra $dname $calc(%i -58) $read(sauv.txt,%i) | inc %i }
  var %i = 118 | while (%i < 129) { if ($read(sauv.txt,%i) == 1) did -c $dname $calc(%i -58) | inc %i }
  did -c $dname 44 %flood.mask | did -ra $dname 45 %flood.temps | did -ra $dname 71 $read(sauv.txt,130) | did -ra $dname 72 $read(sauv.txt,131)
  if ($read(sauv.txt,126) == 0) did -m $dname 71
  if ($read(sauv.txt,127) == 0) did -m $dname 72
}
on *:dialog:protect:sclick:*:{
  if ($did > 4) && ($did < 12) {
    if ($did($did).state == 0) { did -m $dname $calc($did +7) $+ , $+ $calc($did +14) | set %flood. $+ $did $false }
    if ($did($did).state == 1) { did -n $dname $calc($did +7) $+ , $+ $calc($did +14) | set %flood. $+ $did $true }
  }
  if ($did > 46) && ($did < 53) {
    if ($did($did).state == 0) { did -m $dname $calc($did +6) | write -l $+ $calc($did +57) sauv.txt 0 }
    if ($did($did).state == 1) { did -n $dname $calc($did +6) | write -l $+ $calc($did +57) sauv.txt 1 }
  }
  if ($did == 44) set %flood.mask $did(44).sel
  if ($did == 77) { 
    var %i = 111 | while (%i < 117) { write -l $+ %i sauv.txt $did($calc(%i -58)) | inc %i }
    write -l130 sauv.txt $did(71) | write -l131 sauv.txt $did(72)
  }
  if ($did > 59) && ($did < 71) { if ($did($did).state == 0) write -l $+ $calc($did +58) sauv.txt 0 | else write -l $+ $calc($did +58) sauv.txt 1 }
  if ($did == 60) { if ($did(60).state == 1) did -u $dname 61 | write -l119 sauv.txt 0 }
  if ($did == 61) { if ($did(61).state == 1) did -u $dname 60 | write -l118 sauv.txt 0 }
  if ($did == 66) { if ($did(66).state == 1) did -u $dname 67 | write -l125 sauv.txt 0 }
  if ($did == 67) { if ($did(67).state == 1) did -u $dname 66 | write -l124 sauv.txt 0 }
  if ($did == 68) { if ($did(68).state == 0) did -m $dname 71 | else did -n $dname 71 }
  if ($did == 69) { if ($did(69).state == 0) did -m $dname 72 | else did -n $dname 72 }
}
on *:dialog:protect:edit:*:{
  if ($did > 11) && ($did < 19) set %flood. $+ $calc($did -7) $+ .nbre $did($did)
  if ($did > 18) && ($did < 26) set %flood. $+ $calc($did -14) $+ .temp $did($did)
  if ($did == 45) set %flood.temps $did(45)
}
ON *:TEXT:*:?: {
  if (%flood.6) {
    if (%protection.6.nick == $nick) { inc %flood.6.count }
    else { set $+(-u,%flood.6.temp) %protection.6.nick $nick | set $+(-u,%flood.6.temp) %flood.6.count 1 }
    if (%flood.6.count >= %flood.6.nbre) { .ignore -pu $+ %flood.temps %protection.6.nick $calc(%flood.mask -1) | close -m $nick | echo -at 5[Info]14 Tu viens d'ignorer $nick pour tentative de MESSAGE Flood( $+ %flood.temps secondes) | unset %flood.6.count | unset %protection.6.nick }
  }
}
ON 1:OPEN:?:{ if  (%flood.7) { inc $+(-u,%flood.7.temp) %flood.7.count 1 | if (%flood.7.count >= %flood.7.nbre) { .ignore -pu $+ %flood.temps *!*@* | echo -at 5[Info]14 Tu viens d'ignorer tous les messages privés car tentative de PRIVE Flood( $+ %flood.temps secondes) | unset %flood.7.count } } }
ON *:NOTICE:*:?: {
  if (%flood.8) && ($nick != IriX) && ($nick != X) && ($nick != Q) {
    if (%protection.8.nick == $nick) { inc %flood.8.count }
    else { set $+(-u,%flood.8.temp) %protection.8.nick $nick | set $+(-u,%flood.8.temp) %flood.8.count 1 }
    if (%flood.8.count >= %flood.8.nbre) { .ignore -nu $+ %flood.temps %protection.8.nick $calc(%flood.mask -1) | echo -at 5[Info]14 Tu viens d'ignorer $nick pour tentative de NOTICE Flood( $+ %flood.temps secondes) | unset %flood.8.count | unset %protection.8.nick }
  }
}
ON 1:INVITE:*:{
  if (%flood.9) {
    if (%protection.9.nick == $nick) { inc %flood.9.count }
    else { set $+(-u,%flood.9.temp) %protection.9.nick $nick | set $+(-u,%flood.9.temp) %flood.9.count 1 }
    if (%flood.9.count >= %flood.9.nbre) { .ignore -iu $+ %flood.temps %protection.9.nick $calc(%flood.mask -1) | echo -at 5[Info]14 Tu viens d'ignorer $nick pour tentative de INVITATION Flood( $+ %flood.temps secondes) | unset %flood.9.count | unset %protection.9.nick }
  }
}
ctcp *:dcc chat:*:{ if (%flood.10) { inc $+(-u,%flood.10.temp) %flood.10.count 1 | if (%flood.10.count >= %flood.10.nbre) { .ignore -du $+ %flood.temps *!*@* | echo -at 5[Info]14 Tu viens d'ignorer tous les DCCs car tentative de DCC CHAT Flood( $+ %flood.temps secondes) | unset %flood.10.count } } }
ctcp *:dcc send:*:{ if (%flood.11) { inc $+(-u,%flood.11.temp) %flood.11.count 1 | if (%flood.11.count >= %flood.11.nbre) { .ignore -du $+ %flood.temps *!*@* | echo -at 5[Info]14 Tu viens d'ignorer tous les DCCs car tentative de DCC SEND Flood( $+ %flood.temps secondes) | unset %flood.11.count } } }
ctcp *:*:*: {
  if (%flood.5) {
    if (%protection.5.nick == $nick) { inc %flood.5.count }
    else { set $+(-u,%flood.5.temp) %protection.5.nick $nick | set $+(-u,%flood.5.temp) %flood.5.count 1 }
    if (%flood.5.count >= %flood.5.nbre) { .ignore -tu $+ %flood.temps %protection.5.nick $calc(%flood.mask -1) | echo -at 5[Info]14 Tu viens d'ignorer $nick pour tentative de CTCP Flood( $+ %flood.temps secondes) | unset %flood.5.count | unset %protection.5.nick }
  }
  if ($1 == ping) { if ($read(sauv.txt,104) == 1) ctcpreply $nick ping $read(sauv.txt,111) | else return | halt }
  if ($1 == motfv) { if ($read(sauv.txt,105) == 1) ctcpreply $nick version $read(sauv.txt,112) | else ctcpreply $nick version mIRC v $+ $version Khaled Mardam-Bey (Yi2OrU ScRipT) | halt }
  if ($1 == script) { if ($read(sauv.txt,106) == 1) ctcpreply $nick script $read(sauv.txt,113) | else return | halt }
  if ($1 == help) { if ($read(sauv.txt,107) == 1) ctcpreply $nick help $read(sauv.txt,114) | else return | halt }
  if ($1 == time) { if ($read(sauv.txt,108) == 1) ctcpreply $nick time $read(sauv.txt,115) | else return | halt }
  if ($1 == finger) { if ($read(sauv.txt,109) == 1) ctcpreply $nick finger $read(sauv.txt,116) | else return | halt }
}
ON *:OP:*:{ if ($opnick == $me) && ($nick != IriX) && ($nick != X) && ($nick != Q) && ($read(sauv.txt,118) == 1) .mode $chan -o $me }
ON *:DEOP:*:{ if (%robot ison $chan) && ($nick != $me) && ($nick != IriX) && ($nick != X) && ($nick != Q) && ($opnick == $me) && ($read(sauv.txt,119) == 1) .msg %robot op $chan $me }
ON  *:VOICE:*:{ if ($vnick == $me) && ($me isop $chan) && ($nick != $me) && ($read(sauv.txt,124) == 1) { .mode $chan -v $me } }
ON *:DEVOICE:*:{ if ($vnick == $me) && ($me isop $chan) && ($nick != $me) && ($read(sauv.txt,125) == 1) { .mode $chan +v $me } }
ON ^1:KICK:*:{
  if ($knick == $me) {
    if ($read(sauv.txt,122) == 1) join $chan
    if ($read(sauv.txt,123) == 1) && (%robot ison $chan) {
      if ($nick != %robot) { .msg %robot kick $chan $nick 12Anti Kick Protection | halt }
      .msg %robot rdefmodes $chan
      if ($read(sauv.txt,122) == 1) .timer 1 1 join $chan
    }
  }
}
on @1:BAN:*:{
  if ($read(sauv.txt,120) == 1) && ($nick != $me) { if ($bnick == $me) || ($banmask iswm $address($me,5)) { .mode $chan -o $nick | .mode $chan -b $banmask | .kick $chan $nick 12Anti Ban Protection | halt } }
}
on ^1:BAN:*:{
  if ($read(sauv.txt,121) == 1) && ($nick != $me) && (%robot ison $chan) { if ($bnick == $me) || ($banmask iswm $address($me,5)) { if ($nick == %robot) { .msg %robot unban $chan $banmask | halt } | else { .msg %robot deop $chan $nick | .msg %robot unban $chan $banmask | .msg %robot kick $chan $nick 12Anti Ban Protection | .msg %robot ban $chan $address($nick,2) 12Anti Ban Protection } } }
}
ON ^1:TOPIC:#: {
  if (%bloque.topic. [ $+ [ $chan ] ]) && ($nick != $me) && (($me isop $chan) || (t !isin $chan($chan).mode)) { topic # %bloque.topic. [ $+ [ # ] ] }
  if (%bloque.topic. [ $+ [ $chan ] ]) && ($nick == $me) set %bloque.topic. [ $+ [ # ] ] $1-
}
raw 324:*:{
  if ($3 == +) && ($me isop $2) {
    if ($read(sauv.txt,126) == 1) topic $2 $read(sauv.txt,130)
    if ($read(sauv.txt,127) == 1) mode $2 $read(sauv.txt,131)
    if ($read(sauv.txt,128) == 1) mode $2 +v $me
  }
  halt
}

Conclusion :


aucun bug

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.