cs_Yannick80
Messages postés10Date d'inscriptiondimanche 12 janvier 2003StatutMembreDernière intervention 7 décembre 2008 17 nov. 2007 à 10:29
Salut à tous,
Pour moi qui n'y connait strictement rien, ça aura au moins eu l'avantage de piger le on input...
Y'a toujurs quelque chose à tirer d'un code ...
MJ92
Messages postés185Date d'inscriptionlundi 23 janvier 2006StatutMembreDernière intervention14 décembre 2014 26 févr. 2007 à 00:45
Euh j'vais pas trop parler du code, mais plutôt du coté "syntaxe". Je connais pas mal de personnes qui se plante sur un mot, par exemple :
Ll
+o
Pour rattraper la faute du "o" manquant. Dans le cas où la personne à un axx sur le chan, il s'oppe avec ton input...
Tu vas me dire, on peut modifier le code, m'enfin, c'est pas l'intérêt et je pense pas que les gens prenant ce code, changeront leurs habitudes pour un code...
C'était juste une parenthèse =)
Bonne continuation.
cs_moirom1
Messages postés11Date d'inscriptionmardi 11 juillet 2006StatutMembreDernière intervention 4 mars 2009 10 nov. 2006 à 21:53
Merci de m'avoir tous aider grace a vous je vais peut etre m'amelionnaire en script
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 5 nov. 2006 à 13:20
pour que ça marche sur Quakenet (par ex), tu peux remplacer
elseif (%t) msg ChanServ $+($iif($left($1,1) == -,de),%t) #
par ça :
elseif (%t) msg $iif(quakenet isin $server,$iif(Q ison $chan,Q,L),ChanServ) $+($iif($left($1,1) == -,de),%t) #
après, y'a tellement de serveurs que c'est impossible de rendre ce code compatible sur tous ^^
J'ai fait le code non pas pour qu'il soit déposé ici, mais plutôt pour que tu essayes de le comprendre et que tu t'améliores
Si tu as des questions sur son fonctionnement, n'hésite pas !
cs_moirom1
Messages postés11Date d'inscriptionmardi 11 juillet 2006StatutMembreDernière intervention 4 mars 2009 5 nov. 2006 à 13:13
Par contre j'ai oublier de preciser je ne sais pas qu'il l'avait dit mais sur ton script rca arkanis tu utilise chanserv et comme quelqu'un l'as dit je sais plus qui tout les serveur n'ont pas chanserv comme moi car j'ai rien compris a anope voila
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 4 nov. 2006 à 15:18
il manque quoi à part le "mass" (càd une boucle avec $modespl) ?
Les différences sont (en fait quelques unes) :
- mon +b n'affecte que l'adresse (de type 2) sans bannir le pseudo
- j'ai rajouté +m et -m par rapport à ton code
- je ne mets pas +i/+s/+t $address(...)
cs_moirom1
Messages postés11Date d'inscriptionmardi 11 juillet 2006StatutMembreDernière intervention 4 mars 2009 4 nov. 2006 à 14:28
essaye j'ai changer le script cette fois j'ai essayer et par rapport au script d'atlantisfr il es beaucoup mieux car lorsce qu'on dit -o evidemmen ca deop et quand on dit +o la ca nous op pas comme surle code d'atlantisfr
Par contre il n'y a pas toutes les commandes qui était dans mon premier code
Tukkkko
Messages postés29Date d'inscriptionlundi 22 mars 2004StatutMembreDernière intervention29 janvier 2007 4 nov. 2006 à 14:11
OK Merci
cs_moirom1
Messages postés11Date d'inscriptionmardi 11 juillet 2006StatutMembreDernière intervention 4 mars 2009 4 nov. 2006 à 14:09
Tukkkko ce script est un mode plus simples de donner l'operateur a une personne ou a toi
exemple quand tu dit +o tu devient op
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 4 nov. 2006 à 14:05
elseif ($right($1,-1) == b)) mode # $1 $address($$2,2)
> elseif ($right($1,-1) = b) mode # $1 $address($$2,2)
tu as juste à regarder la ligne 47 pour t'apercevoir qu'il s'agit simplement d'une parenthèse en trop ...
si je pose ce bout de code ici, c'est très probablement parce qu'il est en rapport direct avec le sujet, tu crois pas ? :/
ce bout de code revient à faire le même truc que ton tout premier, avec ChanServ et gestion de +kb, +b, -b, +i, ... ce qui n'est pas le cas du code d'atlantisfr
il est tout de même assez explicite, et puis sinon tu peux tester ...
Tukkkko
Messages postés29Date d'inscriptionlundi 22 mars 2004StatutMembreDernière intervention29 janvier 2007 4 nov. 2006 à 13:21
Je suis probablement très bête!!!
Quelqu'un peut m'expliquer à quoi sert ce bout de code???
En général, quand je poste quelque chose, je décris l'utilité ;-)
atlantisfr
Messages postés76Date d'inscriptionsamedi 12 août 2006StatutMembreDernière intervention 9 août 2007 4 nov. 2006 à 11:47
J'ai mis ton code à la place et regarde ce que sa me donne :
* /elseif: invalid format (line 47, configuration.ini)
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 3 nov. 2006 à 22:05
wims, c'est si tu veux faire un mass modes
puis bon, c'est pas ma source ! c'est pas à moi de la coder en commentaire
j'ai fait une partie, à lui de l'améliorer (s'il le veut bien) pour en faire l'add-on ultime et j'espère qu'il se rend compte que ça ne sert pas à grand chose d'envoyer des codes comme il l'était avant, vu que pratiquement tout le monde peut le faire (et même en mieux en général)
puis c'est aussi à but éducatif pour lui ...
Perso, je n'utiliserai pas ce code vu qu'il utilise ChanServ et que sur Quakenet, y'a pas ^^
cs_moirom1
Messages postés11Date d'inscriptionmardi 11 juillet 2006StatutMembreDernière intervention 4 mars 2009 3 nov. 2006 à 18:32
Ok Merci pour vos exemple je vais faire des tests et ameliorer mon produit
ps:lol pour RCA Arkanis mais merci tout ces commentaire vont me permettre de m'ameliorer
C'est vrai que le +oooooooooooooooooooooooo est trés moche. ;)
cs_wims
Messages postés2466Date d'inscriptionvendredi 23 juillet 2004StatutMembreDernière intervention 1 août 20101 3 nov. 2006 à 18:08
Tu dis de ne pas oublier $modespl (très bien) mais dans le code ci dessus j'le vois pas :(
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 3 nov. 2006 à 13:12
en fait, après avoir lu "$address n'a rien à faire sur des modes channl (+i, +t, +s, +m, etc)" (Sorn), mon code devient :
ON *:INPUT:#:{
if (($right($1,-1) !isalpha) || (!$istok(+ -,$left($1,1),32))) return
var %t = $gettok(op halfop voice,$findtok(o h v,$right($1,-1),32),32)
if (!$2) {
if ($me isop #) {
if ($1 == +k) kick # $$2
elseif ($1 == +kb) ban -k # $$2 2 $3-
elseif ($right($1,-1) == b)) mode # $1 $address($$2,2)
elseif ($istok(i s t m,$right($1,-1),32)) mode # $1
else mode $chan $1 $str($+($me,$chr(32)),$len($right($1,-1)))
}
elseif (%t) msg ChanServ $+($iif($left($1,1) == -,de),%t) #
else return
}
else mode $chan $1-
halt
}
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 3 nov. 2006 à 13:05
mode $chan -hhhhhhhhhhhhhhhhhhhhhhhh $2-
vraiment très moche ...
mode $chan $+(-,$str(h,$numtok($2-,32))) $2-
en n'oubliant pas que tu es limité par $modespl
tu devrais utiliser des ELSE
ON *:INPUT:#:{
if (($right($1,-1) !isalpha) || (!$istok(+ -,$left($1,1),32))) return
var %t = $gettok(op halfop voice,$findtok(o h v,$right($1,-1),32),32)
if (!$2) {
if ($me isop #) {
if ($1 == +k) kick # $$2
elseif ($1 == +kb) ban -k # $$2 2 $3-
elseif ($istok(b i s t $right($1,-1),32)) mode # $1 $address($2,2)
mode $chan $1 $str($+($me,$chr(32)),$len($right($1,-1)))
}
elseif (%t) msg ChanServ $+($iif($left($1,1) == -,de),%t) #
else return
}
else mode $chan $1-
halt
}
j'ai pas testé, mais ça devrait être bon :)
j'ai également changé l'étoile du ON INPUT pour mettre #
cs_SornDrixer
Messages postés2084Date d'inscriptionjeudi 12 décembre 2002StatutMembreDernière intervention30 janvier 20118 3 nov. 2006 à 11:44
J'ai hésité à supprimer ta source car elle n'apporte rien de spécial, et qui en + n'est pas très bien codé.
Mais j'espère que tu vas l'améliorer afin de me confirmer que j'ai bien fais de ne pas la supprimer :o
+1 avec les remarques de atlantisfr : tu copies bêtement tes if sans prendre la peine d'adapter, $address n'a rien à faire sur des modes channl (+i, +t, +s, +m, etc)
2 if consécutifs avec la deuxième condition qui indique l'inverse de la première :
if (!$2) puis if ($2)
Pourquoi ne pas utiliser un else ?! c'est exactement la même condition, tu cherches justes à exprimer le contraire de la première, donc else est plus approprié
if ($1 == +k) { /k $2 $3- }
/k ? connais pas. C'est pas une commande universelle je crois bien, mais plutôt un alias ajouté à mIRC (alias k kick $1 $2-), utilise donc /kick
Et si jamais $2 ou $3- n'existe pas ? Vérifie ca avant de lancer ta commande (au moins $2, car $3- correspond à la raison, et est facultatif dans un kick)
Tes commandes de ban ne sont pas complète, si on veut juste bannir sur le pseudo, ou alors bannir sur l'host mais avec un autre type que 2, comment fait-on ? on ne peut pas avec ton code.
Pour les commandes d'op/halfop/voice, tu passes par ChanServ mais .. tout les serveurs n'ont pas ChanServ ! (provenant des services Anope/Epona). De plus, tu utilises l'alias "/cs", niveau compatibilité, vaudrait mieux passer par "/msg ChanServ"
Tu as de quoi améliorer je crois :o
Bonne continuation
cs_moirom1
Messages postés11Date d'inscriptionmardi 11 juillet 2006StatutMembreDernière intervention 4 mars 2009 3 nov. 2006 à 10:17
Merci atlantisfr voila les avantage:
-il est court
-il y a toutes les commandes
mais voici les inconveniens
Lors ce que je test ton script sur moi même je fait -o il me deop et lors ce que je fait un +o voila ce qu'il me met
your are not chanel operator
Merci comme même
atlantisfr
Messages postés76Date d'inscriptionsamedi 12 août 2006StatutMembreDernière intervention 9 août 2007 3 nov. 2006 à 10:10
Alors moirom1, il y a des choses imconpréhensible dans ton code ... Pourquoi tu rajoutes un $address aux modes i,t et s ? Optimise ton code, plus exactement retire les "/", "{" et "}" inutilent. Ton code est trés limiter niveau posibilité, puis c'est aussi du déja vu. J'ai un code assé simple qui niveau mode est large de posibilité.
Code :
ON *:INPUT:*:{
if ($left($1,1) == +) && ($gettok($1,1,43) isalpha) {
if (!$2) { mode $chan $1- $str($me $+ $chr(32),20) | halt }
else { mode $chan $1- | halt }
}
if ($left($1,1) == -) && ($gettok($1,1,45) isalpha) {
if (!$2) { mode $chan $1- $str($me $+ $chr(32),20) | halt }
else { mode $chan $1- | halt }
}
}
Sa prend mon de place que le tien et il y a largement plus de posibilité, prend exemple dessus.
cs_moirom1
Messages postés11Date d'inscriptionmardi 11 juillet 2006StatutMembreDernière intervention 4 mars 2009 3 nov. 2006 à 09:52
Voila j'attend vos demande je serais a l'écoute de n'importe quel question
17 nov. 2007 à 10:29
Pour moi qui n'y connait strictement rien, ça aura au moins eu l'avantage de piger le on input...
Y'a toujurs quelque chose à tirer d'un code ...
26 févr. 2007 à 00:45
Ll
+o
Pour rattraper la faute du "o" manquant. Dans le cas où la personne à un axx sur le chan, il s'oppe avec ton input...
Tu vas me dire, on peut modifier le code, m'enfin, c'est pas l'intérêt et je pense pas que les gens prenant ce code, changeront leurs habitudes pour un code...
C'était juste une parenthèse =)
Bonne continuation.
10 nov. 2006 à 21:53
5 nov. 2006 à 13:20
elseif (%t) msg ChanServ $+($iif($left($1,1) == -,de),%t) #
par ça :
elseif (%t) msg $iif(quakenet isin $server,$iif(Q ison $chan,Q,L),ChanServ) $+($iif($left($1,1) == -,de),%t) #
après, y'a tellement de serveurs que c'est impossible de rendre ce code compatible sur tous ^^
J'ai fait le code non pas pour qu'il soit déposé ici, mais plutôt pour que tu essayes de le comprendre et que tu t'améliores
Si tu as des questions sur son fonctionnement, n'hésite pas !
5 nov. 2006 à 13:13
4 nov. 2006 à 15:18
Les différences sont (en fait quelques unes) :
- mon +b n'affecte que l'adresse (de type 2) sans bannir le pseudo
- j'ai rajouté +m et -m par rapport à ton code
- je ne mets pas +i/+s/+t $address(...)
4 nov. 2006 à 14:28
Par contre il n'y a pas toutes les commandes qui était dans mon premier code
4 nov. 2006 à 14:11
4 nov. 2006 à 14:09
exemple quand tu dit +o tu devient op
4 nov. 2006 à 14:05
> elseif ($right($1,-1) = b) mode # $1 $address($$2,2)
tu as juste à regarder la ligne 47 pour t'apercevoir qu'il s'agit simplement d'une parenthèse en trop ...
si je pose ce bout de code ici, c'est très probablement parce qu'il est en rapport direct avec le sujet, tu crois pas ? :/
ce bout de code revient à faire le même truc que ton tout premier, avec ChanServ et gestion de +kb, +b, -b, +i, ... ce qui n'est pas le cas du code d'atlantisfr
il est tout de même assez explicite, et puis sinon tu peux tester ...
4 nov. 2006 à 13:21
Quelqu'un peut m'expliquer à quoi sert ce bout de code???
En général, quand je poste quelque chose, je décris l'utilité ;-)
4 nov. 2006 à 11:47
* /elseif: invalid format (line 47, configuration.ini)
3 nov. 2006 à 22:05
puis bon, c'est pas ma source ! c'est pas à moi de la coder en commentaire
j'ai fait une partie, à lui de l'améliorer (s'il le veut bien) pour en faire l'add-on ultime et j'espère qu'il se rend compte que ça ne sert pas à grand chose d'envoyer des codes comme il l'était avant, vu que pratiquement tout le monde peut le faire (et même en mieux en général)
puis c'est aussi à but éducatif pour lui ...
Perso, je n'utiliserai pas ce code vu qu'il utilise ChanServ et que sur Quakenet, y'a pas ^^
3 nov. 2006 à 18:32
ps:lol pour RCA Arkanis mais merci tout ces commentaire vont me permettre de m'ameliorer
C'est vrai que le +oooooooooooooooooooooooo est trés moche. ;)
3 nov. 2006 à 18:08
3 nov. 2006 à 13:12
ON *:INPUT:#:{
if (($right($1,-1) !isalpha) || (!$istok(+ -,$left($1,1),32))) return
var %t = $gettok(op halfop voice,$findtok(o h v,$right($1,-1),32),32)
if (!$2) {
if ($me isop #) {
if ($1 == +k) kick # $$2
elseif ($1 == +kb) ban -k # $$2 2 $3-
elseif ($right($1,-1) == b)) mode # $1 $address($$2,2)
elseif ($istok(i s t m,$right($1,-1),32)) mode # $1
else mode $chan $1 $str($+($me,$chr(32)),$len($right($1,-1)))
}
elseif (%t) msg ChanServ $+($iif($left($1,1) == -,de),%t) #
else return
}
else mode $chan $1-
halt
}
3 nov. 2006 à 13:05
vraiment très moche ...
mode $chan $+(-,$str(h,$numtok($2-,32))) $2-
en n'oubliant pas que tu es limité par $modespl
tu devrais utiliser des ELSE
ON *:INPUT:#:{
if (($right($1,-1) !isalpha) || (!$istok(+ -,$left($1,1),32))) return
var %t = $gettok(op halfop voice,$findtok(o h v,$right($1,-1),32),32)
if (!$2) {
if ($me isop #) {
if ($1 == +k) kick # $$2
elseif ($1 == +kb) ban -k # $$2 2 $3-
elseif ($istok(b i s t $right($1,-1),32)) mode # $1 $address($2,2)
mode $chan $1 $str($+($me,$chr(32)),$len($right($1,-1)))
}
elseif (%t) msg ChanServ $+($iif($left($1,1) == -,de),%t) #
else return
}
else mode $chan $1-
halt
}
j'ai pas testé, mais ça devrait être bon :)
j'ai également changé l'étoile du ON INPUT pour mettre #
3 nov. 2006 à 11:44
Mais j'espère que tu vas l'améliorer afin de me confirmer que j'ai bien fais de ne pas la supprimer :o
+1 avec les remarques de atlantisfr : tu copies bêtement tes if sans prendre la peine d'adapter, $address n'a rien à faire sur des modes channl (+i, +t, +s, +m, etc)
2 if consécutifs avec la deuxième condition qui indique l'inverse de la première :
if (!$2) puis if ($2)
Pourquoi ne pas utiliser un else ?! c'est exactement la même condition, tu cherches justes à exprimer le contraire de la première, donc else est plus approprié
if ($1 == +k) { /k $2 $3- }
/k ? connais pas. C'est pas une commande universelle je crois bien, mais plutôt un alias ajouté à mIRC (alias k kick $1 $2-), utilise donc /kick
Et si jamais $2 ou $3- n'existe pas ? Vérifie ca avant de lancer ta commande (au moins $2, car $3- correspond à la raison, et est facultatif dans un kick)
Tes commandes de ban ne sont pas complète, si on veut juste bannir sur le pseudo, ou alors bannir sur l'host mais avec un autre type que 2, comment fait-on ? on ne peut pas avec ton code.
Pour les commandes d'op/halfop/voice, tu passes par ChanServ mais .. tout les serveurs n'ont pas ChanServ ! (provenant des services Anope/Epona). De plus, tu utilises l'alias "/cs", niveau compatibilité, vaudrait mieux passer par "/msg ChanServ"
Tu as de quoi améliorer je crois :o
Bonne continuation
3 nov. 2006 à 10:17
-il est court
-il y a toutes les commandes
mais voici les inconveniens
Lors ce que je test ton script sur moi même je fait -o il me deop et lors ce que je fait un +o voila ce qu'il me met
your are not chanel operator
Merci comme même
3 nov. 2006 à 10:10
Code :
ON *:INPUT:*:{
if ($left($1,1) == +) && ($gettok($1,1,43) isalpha) {
if (!$2) { mode $chan $1- $str($me $+ $chr(32),20) | halt }
else { mode $chan $1- | halt }
}
if ($left($1,1) == -) && ($gettok($1,1,45) isalpha) {
if (!$2) { mode $chan $1- $str($me $+ $chr(32),20) | halt }
else { mode $chan $1- | halt }
}
}
Sa prend mon de place que le tien et il y a largement plus de posibilité, prend exemple dessus.
3 nov. 2006 à 09:52