Onjoin avec mémorisation antifloodage

Résolu
Niarouf Messages postés 4 Date d'inscription mardi 23 août 2005 Statut Membre Dernière intervention 23 août 2005 - 23 août 2005 à 16:43
Nolson Messages postés 216 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 16 mars 2006 - 23 août 2005 à 21:18
Salut,
Je voudrai faire un truc dans ce genre là mais qui permette de repondre automatiquement a un user mais, en plus, permette d'eviter que si l'user flood un mot, je flood en reponse...
Par exemple, sur ce modele ... :
On 1:Text:*salut*:#:/msg $chan Salut $nick :) | /msg $me j'ai dit salut a $nick

Je voudrai donc un truc dans ce genre :
On 1:Text:*salut*:#: /set %quiadejaeu +$ $nick 1 if %quiadejaeu +$ $nick == 1 { halt } | /timer 1 5 unset %quiadejaeu | /msg $chan Salut $nick :) ... | /msg $me j'ai dit salut a $nick

Mais je dois avoir faux quelque part ...
Merci d'avance de votre aide :)

9 réponses

S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
23 août 2005 à 19:53
Ouais je suis très con parfois ^^ dans le code que jtai dit, ça mets le truc à 1 puis ça arrète évidemment le script !



On 1:Text:*salut*:#:{

if ($eval($+(%,quiadejaeu,$nick),2) == 1) { halt }

set $+(%,quiadejaeu,$nick) 1

.timer 1 5 unset $+(%,quiadejaeu,$nick)

msg $chan Salut $nick :)

msg $me j'ai dit salut a $nick

}

----------------------
Signature des parents :
3
S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
23 août 2005 à 17:33
remplace +$ par $+ et ça marchera ptetre :)

Sinon bah tu peux le faire en hashtable. exactement comme un truc de flood, mais à l'envers ^^


---------------------------
Signature des parents :
0
Niarouf Messages postés 4 Date d'inscription mardi 23 août 2005 Statut Membre Dernière intervention 23 août 2005
23 août 2005 à 17:40
non :( ca ne marche toujours pas...
Ayant des centaines de ligne dans le genre, j'aimerai autant ne pas tout changer
Merci quand meme.
0
S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
23 août 2005 à 18:28
arf je comprends, tu as mis en ligne quelque chose qui ne se met pas en ligne.

D'autre part, tu es obligé de changer +$ par $+, je ne disais pas ça au hasard non plus !



On 1:Text:*salut*:#:{

set %quiadejaeu +$ $nick 1

if ($eval($+(%,quiadejaeu,$nick),2) == 1) { halt }

.timer 1 5 unset $+(%,quiadejaeu,$nick)

msg $chan Salut
$nick :)

msg $me j'ai dit salut a $nick

}


---------------------------
Signature des parents :
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Niarouf Messages postés 4 Date d'inscription mardi 23 août 2005 Statut Membre Dernière intervention 23 août 2005
23 août 2005 à 19:31
Et non :-( toujours pas ...

J'ai aussi essayé en virant le . devant timer mais ca change rien ... en remplacant le premier +$ par $+ non plus...
Merci de m'aider :-)) ca doit etre presque ca, mais je vois pas trop ou c'est faux...
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
23 août 2005 à 19:53
On *:Text:*:#:{
if ($1 == salut) {
if ($+(%exist,$nick)) { halt }
else {
.timer 1 5 unset $+(%exist,$nick)
msg $chan Salut $nick :)
echo -a j'ai dit salut a $nick
}
}
}
0
Niarouf Messages postés 4 Date d'inscription mardi 23 août 2005 Statut Membre Dernière intervention 23 août 2005
23 août 2005 à 20:09
Ouaisssss merci bien S333 :)) !!
Pour wims j'ai testé juste vite fait (vu ke l'autre marché) et il semble y avoir un bug puisque au final ca ne marche pas.
Quoiqu'il en soit merci a vous
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
23 août 2005 à 20:28
oui il manque juste le set %exist $+ $nick mais si tu comprend un peu le code , tu pourrais la rajotuer seul :)
0
Nolson Messages postés 216 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 16 mars 2006
23 août 2005 à 21:18
Je pense que set -u est plus adapté dans ce genre de cas.
Ca nous fait économisé le timer.
De plus avec le ! on économise le halt.
En reprenant le code de S333 ça donne :

On *:Text:*salut*:#:{
if (!$eval($+(%,quiadejaeu,$nick),2)) {
set -u5 $+(%,quiadejaeu,$nick) 1
msg $chan Salut $nick :)
msg $me j'ai dit salut a $nick
}
}
0
Rejoignez-nous