Problem double input sur test input en remplacement text
yonaburur
Messages postés7Date d'inscriptionmardi 22 février 2005StatutMembreDernière intervention28 février 2005
-
22 févr. 2005 à 17:15
Nolson
Messages postés216Date d'inscriptionmardi 7 novembre 2000StatutMembreDernière intervention16 mars 2006
-
27 févr. 2005 à 15:44
Bonjour, je cherche a remplacer certains raccourcis ou abrev textes que je tape par une expression
exemple: si je tape mdr, je souhaite reformater en mort de rire et que ce soit mort de rire qui apparraisse. C'est la première fois que je script. J'ai ajouter un nouveau script .mrc dans remote avec un exemple de code ci-dessous.
Mon problème est que j'arrive bien a sortir le "mort de rire" mais que le "mdr" apparrait aussi
ex:
[22:02:12] <yoyo> mdr
[22:02:12] <yoyo> mort de rire
voici le code que j'ai utilisé:
on 1:INPUT:*: {
if ( $1 == mdr) { msg $active 14M7ort 14D7e 14R7ire $2- | halt }
if ( $1 == ptdr ) { msg $active 5) 14P7eté 14D7e 14R7ire $2- | halt }
etc...
Toute aide ou autre suggestion de code serait la bienvenue
Merci d'avance!
Yoooooooooo
A voir également:
Problem double input sur test input en remplacement text
En fait yonaburur, j'ai eu le meme problème et je
n'ai pas réussi à completement le régler, c'était dû à mon correcteur
d'orthographe, je pense, qui haltait déja des commandes et obligeaient d'autres à êtres envoyées, c'est peut etre ça :/
Si tu penses que ça peut etre ça tu cherches ton correcteur et tu insères ton input dans l'input du correcteur et ça marchera :)
Nolson
Messages postés216Date d'inscriptionmardi 7 novembre 2000StatutMembreDernière intervention16 mars 2006 24 févr. 2005 à 14:39
C'est un problème récurrent qui n'en est pas un réellement un. Le code que tu désires mettre est tout à fait valable cependant il ne faut pas oublier les principes de base du scripting mIRC.
Le remote sont distincts les uns des autres, et si dans 3 remotes tu mets un ON INPUT il va effectuer les opérations de chacun des remotes dans l'ordre croissant.
Si tu mets ton code dans un mIRC vierge tu n'auras aucun problème cela fonctionnera.
C'est pour cela que certains snippets ou addons ne fonctionnent pas correctement car ils sont en conflit avec d'autres capteurs d'évenements.
Lorsque tu te sers d'un script que tu n'as pas coder toi-même, c'est un problème qui arrive souvent lorsque tu veux rajouter un addon.
C'est pour cela qu'il est préférable dans la mesure du possible de n'utiliser qu'une fois un capteur d'évenements et de mettre des conditions ensuite pour les actions à suivre.
Ceux qui collectionnent une multitude d'addons dans un même mIRC sont souvent confrontés à des problèmes de fonctionnement et c'est tout à fait normal.
Il te suffit pour régler le problème donc de retrouver l'endroit dans ton script ou se trouve le premier capteur d'évenements ON INPUT et d'ajouter ton code.
yonaburur
Messages postés7Date d'inscriptionmardi 22 février 2005StatutMembreDernière intervention28 février 2005 25 févr. 2005 à 19:26
He bien.. merci Nolson, ton reply est interessant et je t'en remercie. Malheureusement, ce petit code tout simple est le seul d'un nouveau .mrc remote tout blanc auparavant (style script1.mrc). Aucun risque donc apriori de priorité sur le on imput ou quelquechose dans ce style. Et sinon, oui, ce code doit marcher mais il ne marche pas tout du moins le scripteur s'attend a autre chose. c kan meme bizarre! Il semblerait donc que ce probleme soit récurrent, je me pose aussi toujours cette question de savoir si il y a un standard sur mirc où si certains provider irc font leurs sauces à part.
Nolson
Messages postés216Date d'inscriptionmardi 7 novembre 2000StatutMembreDernière intervention16 mars 2006 27 févr. 2005 à 15:44
Je conçois bien que tu l'as mis dans un remote vierge, mais je suppose que ce n'est pas le seul remote de ton script, tu n'as pas essayé dans un mIRC vierge. Ce n'est pas parce que tu mettras un halt dans un nouveau remote qu'il bloquera ce qui est déclenché avant ou en même temps.
Le halt bloquera la routine, mais si dans un autre ON INPUT on oblige un affichage tu auras un double affichage même si tu mets des halt à chaque fois.
Le halt arrête le cours de la routine mais n'empeche pas les autres capteurs d'évenements de se déclencher aussi.
Pour tester tu n'as qu'à créer 3 nouveaux remotes et mettre un ON INPUT dans chaque remote :
on *:input:*: {
echo -a remote 1 : $1-
halt
}
on *:input:*: {
echo -a remote 2 : $1-
halt
}
on *:input:*: {
echo -a remote 3 : $1-
halt
}
Tu verras que t'as beau mettre des halt les 3 echos sont renvoyés quand tu essaieras d'écrire sur un salon.