Ce script est un Anti BadWord simple. Il se gere entièrement via un dialogue. Il permettra (si vous êtes op ou halfop la personne qui prononce un mot interdit est ni op ni halfop) de : avertir 3 fois, dévoicer 2minutes, kick, et enfin, ban 30minutes.
Je l'avais créer à la base sur une demande et comme je le trouvais pas mal, je voulais savori ce que vous en pensiez...
Source / Exemple :
#################################
######## Source By TidZ` ########
#### irc.evilsnet.org ####
#### Contact@EvilsNeT.Org ####
#################################
menu channel,menubar {
BadWords : /dialog -m BadWord BadWord
}
on *:load:{
echo -a 7[14BadWord7] 3- 14Anti BadWords By TidZ`3 Chargé14 !
echo -a 7[14BadWord7] 3- 14Vous pouvez le gerer via le menu principal de votre script.
echo -a 7[14BadWord7] 3- 14Si vous rencontrez des problèmes à cause de cette source, contactez moi à l'adresse suivante : 3Contact@EvilsNeT.Org14.
}
dialog BadWord {
title " ~ BadWords - By TidZ` ~"
size -1 -1 200 285
option dbu
text "Système Anti-BadWords By TidZ`. Entrez le mot que vous voulez interdire dans la case, cliquer sur + pour l'ajouté a la liste interdites. Pour en supprimer un, sélectionnez le et cliquez sur -.", 1, 15 10 160 40, center pour
check "Activer / Désactiver", 2, 15 35 60 10
list 3, 15 50 75 75
edit "", 5, 100 75 70 10
button "+", 6, 115 89 10 10
button "-", 7, 145 89 10 10
button "Valider", 9, 40 255 50 10, ok
button "Retour", 10, 110 255 50 10, cancel
text "Ajouter un mot", 11, 115 65 70 10
link "- Site du créateur -", 12, 77 275 50 45 9
text "Définissez la phrase d'avertissement :", 13, 16 130 150 10
edit "", 14, 16 140 168 10
text "Définissez la phrase de dévoice :", 23, 16 155 150 10
edit "", 24, 16 165 168 10
text "Combien temps que la personne restera dévoice (en minute) ?", 15, 16 180 170 10
edit "", 16, 168 178 16 10
text "Définissez la raison du kick :", 17, 16 190 70 10
edit "", 18, 16 200 168 10
text "Définissez la raison du ban :", 19, 16 215 70 10
edit "", 20, 16 225 168 10
text "Combien temps que la personne restera bannie (en minute) ?", 21, 16 240 170 10
edit "", 22, 168 238 16 10
}
alias badwords { dialog -m BadWord BadWord }
on *:dialog:BadWord:init:0:{
if (%badword == on) { did -c $dname 2 }
else { did -u $dname 2 }
loadbuf -o BadWord 3 bw.txt
set %NbrLigneBw $lines(bw.txt)
did -a $dname 14 %pavert
did -a $dname 16 $calc(%tdev / 60)
did -a $dname 18 %pkick
did -a $dname 20 %pban
did -a $dname 22 $calc(%tban / 60)
did -a $dname 24 %pdev
}
on *: dialog:BadWord:edit:*:{
if ($did(14) != $null) { set %pavert $did(14) }
else { unset %pavert }
if ($did(16) != $null ) { set %tdev $calc($did(16) * 60) }
else { unset %tdev }
if ($did(18) != $null ) { set %pkick $did(18) }
else { unset %pkick }
if ($did(20) != $null ) { set %pban $did(20) }
else { unset %pban }
if ($did(22) != $null ) { set %tban $calc($did(22) * 60) }
else { unset %tban }
if ($did(24) != $null ) { set %pdev $did(24) }
else { unset %pdev }
}
on *:dialog:BadWord:sclick:*:{
if ($did == 12) { run http://www.evilsnet.org }
if ($did(2).state == 1) { set %badword on }
else { unset %badword }
if ($did == 6) { write bw.txt $did(5) | did -a $dname 3 $did(5) }
if ($did == 7) {
echo -a 14Vous avez retirer le mot3 $did(3).seltext 14de la liste des Bad-Words.
did -d BadWord 3 $did(3).sel
write -c bw.txt
set %BWcompteur 1
set %MaxBW $did(3).lines
while ( %BWcompteur <= %MaxBW ) {
write bw.txt $did(3,%BWcompteur).text
inc %BWcompteur
}
}
}
on *:dialog:BadWord:close:*:{
if (%badword == on) { echo -a 14Anti BadWord 3Activé ! }
else { echo -a 14Anti BadWord 4Désactivé ! }
}
on *:text:*:#:{
if (%badword == on) {
if (($me isop #) || ($me ishop #)) {
if (($nick isop #) || ($nick ishop #)) { halt }
set %NbrMotPhrase $0
set %NbrMotPhraseCompteur 1
while (%NbrMotPhraseCompteur <= %NbrMotPhrase) {
set %parcoursLignesBw 1
set %CoupureDroite $pos($strip($1-),$chr(32),%NbrMotPhraseCompteur )
set %CoupureGauche $pos($strip($1-),$chr(32),$calc(%NbrMotPhraseCompteur - 1))
if (%NbrMotPhraseCompteur <= 1) {
set %MotVérifié $remove($left( $strip($1-),%CoupureDroite),$chr(32),*,?)
}
if ((%NbrMotPhraseCompteur > 1) && (%NbrMotPhraseCompteur < %NbrMotPhrase)) {
set %MotVérifié $remove($mid($strip($1-),%CoupureGauche,$calc(%CoupureDroite - %CoupureGauche)),$chr(32),*,?)
}
if (%NbrMotPhraseCompteur == %NbrMotPhrase) {
set %MotVérifié $remove($mid( $strip($1-),%CoupureGauche),$chr(32),*,?)
}
if ($read(bw.txt,w,%MotVérifié)) {
inc %bad $+ $nick
if (%bad [ $+ [ $nick ] ] <= 3) {
if (%pavert != $null) { msg # %pavert }
else { msg # 7[14Avertissement7] 3- 14Reste poli(e)3 $nick 14! }
}
if (%bad [ $+ [ $nick ] ] == 4) {
mode # -v $nick
if (%pdev != $null) { msg # %pdev }
else { msg # 7[14Dévoice7] 3- 14Je t'avais dit de rester poli(e)3 $nick 14! Un dévoice de3 214minutes. }
if {%tdev != $nulm) { timer 1 %tdev mode # +v $nick }
else { timer 1 120 mode # +v $nick }
}
if (%bad [ $+ [ $nick ] ] == 5) {
if (%pkick != $null) { kick # $nick %pkick }
else { kick # $nick 14Est-ce si compliquer de rester 3poli(e) 14?? }
}
if (%bad [ $+ [ $nick ] ] => 6) {
mode # +b $address($nick,2)
if (%pban != $null) { kick # $nick %pban }
else { kick # $nick 14Trop, c'est trop ! }
if (%tban != $null) { timer 1 %tban mode # -b $address($nick,2) }
else { timer 1 3600 mode # -b $address($nick,2) }
}
}
inc %NbrMotPhraseCompteur
}
}
}
}
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.