Krams06
Messages postés1Date d'inscriptionmercredi 8 juin 2011StatutMembreDernière intervention16 octobre 2012 16 oct. 2012 à 07:54
Bonjour je suis nouveau dans le domaine pourrais t-on m'expliquer ce que je dois faire pour que remote fonctionne ??
Merci
hisoka2501
Messages postés264Date d'inscriptionlundi 19 mai 2003StatutMembreDernière intervention 7 juillet 2009 4 nov. 2006 à 23:12
éssaie: if (ishop $nick $chan)
cs_lebaronrouge
Messages postés288Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention14 février 2009 4 nov. 2006 à 19:28
Bon j'ai un soucis avec la protections des halfop ca ne veux en aucuns cas la prendre en compte et je n'arrive pas à trouver pourquoi quelque soit la syntaxe utilisée pour identifié si $nick et halfop ...
hisoka2501
Messages postés264Date d'inscriptionlundi 19 mai 2003StatutMembreDernière intervention 7 juillet 2009 26 juil. 2006 à 03:38
bon épuronts tout ca:
on *:exit:{ hsave -o badwords badwords }
devient:
on *:exit:hsave -o badwords badwords
les { } ne servent que si il y a plusieurs commandes, sinon elles rallentises le code inutilement,
les / devant les commandes en script (/msg) ne servent a rien et occupent de la place pour rien et rendes moin lisibles (oui de la place tu a bien lu, les demo 512 octect par example sonts des defits basé sur un code de 512 octect maxi donc on économise de la place)
.halt => on évite ce gerne de chose, utilise plutot return pour ne pas poser de conflits
# elseif ($did = 34) { ap sent a
# did -c $dname 34 | did -u $dname 35 | did -u $dname 36
# }
devient:
elseif ($did = 34) {
ap sent a
did -c $dname 34
did -u $dname 35,36
}
en effet on évite les | qui ralentisent le code et on éssaie un maximum de chainer les commandes did avec des ,
on évite aussis de faire des trucs crades comme:
elseif (condition) { commande1
commande 2
commande 3
}
pour des soucis de lisibilitée
pour info: un if est plus rapide qu'un $iff() (fait le bench tu vera)
meme remarque que plus haut: tokenize 32 $strip($1-)
$gettok($1-,2,32) > $2
besoin de le rendre maléable ? => $ [ $+ [ %i ] ]
$0 = $numtok($1-,32)
var %i 1 => var %i = 1
le = n'est pas du luxe prend l'habitude de le metre car des fois ca ne passera pas (éssaie avec la fonction findfile par example tu vera)
conseil: évite de metre on et off, privilegie 0 pour off et 1 pour on, comme ca tu rédui le code a : if ($hget(%table,item)) au lieux de if ($hget(%table,item) == on) donc gain de temp et de claretée (les Boléens sonts utiles)
voila je pensse avoir fait le tour
cs_lebaronrouge
Messages postés288Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention14 février 2009 19 déc. 2005 à 12:31
honnêtement je n'ai pas trop le temp non plus j'améliore constament mon script et donc ce qui est déja fait je ne revient pas beaucoup dessus, mais c'est vrai que si je peux le réduire et l'optimiser autant que tu le propose ca serait pas mal =)
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 4 déc. 2005 à 14:12
au lieu de $nick mets $2
le tokenize marche forcement en tout cas
suffit de chercher un peu où est le pb, j'avais donné ce code sans tester, j'ai pas le temps de m'y mettre vraiment ^^
c'était en plus une "erreur" évidente, t'aurais pu la voir très facilement ...
cs_lebaronrouge
Messages postés288Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention14 février 2009 4 déc. 2005 à 13:11
toute facon rca arkanis rien ne marche de ce que tu as mis lol
cs_lebaronrouge
Messages postés288Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention14 février 2009 3 déc. 2005 à 11:26
if (%tps == $null) >> if (!%tps) aussi
C'est pas plutot pour :
if (%tps != $null) que l'on peut mettre if (!%tps)
et non si le %tps == $null ???
cs_lebaronrouge
Messages postés288Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention14 février 2009 10 nov. 2005 à 22:37
Merci les gars pour vos remarques j'en prends note et améliorerait donc à l'ocasion ce code dans ce sens ;o)
A la base comme c'était pour gerer mon seul et unique canal et que je voulais un code perso il à donc été optimisé dans mon sens mais si il peut être utilisé par d'autres je vais étudier tout ca.
cs_GaaraS
Messages postés6Date d'inscriptionjeudi 20 octobre 2005StatutMembreDernière intervention 9 novembre 2005 9 nov. 2005 à 22:05
En effet se serai plus pratique de pouvoir choisir les chans que l'on veu activer, et personnaliser la sentence selon le chan.
Sinon j'aime tout se qui est en HashTable ^^
7/10
cs_wims
Messages postés2466Date d'inscriptionvendredi 23 juillet 2004StatutMembreDernière intervention 1 août 20101 6 nov. 2005 à 19:39
" vraiment dommage qu'il n'y ait qu'un chan possible" ?
Il est activable ou non,avec choix de protections des ops,voice,choix des sentence : avertir,kick ou kickban et choix du canal d'action (# pour tous les chans ou l'on est op)
if (%tps == $null) >> if (!%tps) aussi
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 6 nov. 2005 à 18:56
vraiment dommage qu'il n'y ait qu'un chan possible
les / sont inutiles
ban kick : ban -k (cf aide)
tu peux utiliser tokenize 32 $strip($1-) au début de ton on text et de ton on action, ça t'évitera de faire $strip à chaque fois
$true, t'enlèves
le . devant halt sert à rien, et perso je préfère "return"
tu peux même regrouper ces deux events en un seul, étant donné qu'ils sont identiques ici
on *:text:*:#:badword.check $chan $nick $1-
on *:action:*:#:badword.check $chan $nick $1-
alias -l badword.check {
if (!$3) return
tokenize 32 $strip($1-)
if ((($2 isop $1) && ($ap(op) on)) || (($2 isvoice $1) && ($ap(voice) on)) || ($ap(actif) != on) || ($me !isop $1)) return
else {
var %i 3, %m $0
while %i <= %m {
var %w = $gettok($3-,%i,32)
if ($istok($ap(list),%w,182)) {
if ($istok(a-k-kb,$ap(sent),45)) msg $1 Le mot $+(,%w,) est interdit
if ($ap(sent) == k) kick $1 $nick "message de kick, tout de même"
elseif ($ap(sent) == kb) ban -k $1 $nick 2
break (à vérifier)
}
inc %i
}
}
}
16 oct. 2012 à 07:54
Merci
4 nov. 2006 à 23:12
4 nov. 2006 à 19:28
26 juil. 2006 à 03:38
on *:exit:{ hsave -o badwords badwords }
devient:
on *:exit:hsave -o badwords badwords
les { } ne servent que si il y a plusieurs commandes, sinon elles rallentises le code inutilement,
les / devant les commandes en script (/msg) ne servent a rien et occupent de la place pour rien et rendes moin lisibles (oui de la place tu a bien lu, les demo 512 octect par example sonts des defits basé sur un code de 512 octect maxi donc on économise de la place)
.halt => on évite ce gerne de chose, utilise plutot return pour ne pas poser de conflits
# elseif ($did = 34) { ap sent a
# did -c $dname 34 | did -u $dname 35 | did -u $dname 36
# }
devient:
elseif ($did = 34) {
ap sent a
did -c $dname 34
did -u $dname 35,36
}
en effet on évite les | qui ralentisent le code et on éssaie un maximum de chainer les commandes did avec des ,
on évite aussis de faire des trucs crades comme:
elseif (condition) { commande1
commande 2
commande 3
}
pour des soucis de lisibilitée
pour info: un if est plus rapide qu'un $iff() (fait le bench tu vera)
meme remarque que plus haut: tokenize 32 $strip($1-)
$gettok($1-,2,32) > $2
besoin de le rendre maléable ? => $ [ $+ [ %i ] ]
$0 = $numtok($1-,32)
var %i 1 => var %i = 1
le = n'est pas du luxe prend l'habitude de le metre car des fois ca ne passera pas (éssaie avec la fonction findfile par example tu vera)
conseil: évite de metre on et off, privilegie 0 pour off et 1 pour on, comme ca tu rédui le code a : if ($hget(%table,item)) au lieux de if ($hget(%table,item) == on) donc gain de temp et de claretée (les Boléens sonts utiles)
voila je pensse avoir fait le tour
19 déc. 2005 à 12:31
4 déc. 2005 à 14:12
le tokenize marche forcement en tout cas
suffit de chercher un peu où est le pb, j'avais donné ce code sans tester, j'ai pas le temps de m'y mettre vraiment ^^
c'était en plus une "erreur" évidente, t'aurais pu la voir très facilement ...
4 déc. 2005 à 13:11
3 déc. 2005 à 11:26
C'est pas plutot pour :
if (%tps != $null) que l'on peut mettre if (!%tps)
et non si le %tps == $null ???
10 nov. 2005 à 22:37
A la base comme c'était pour gerer mon seul et unique canal et que je voulais un code perso il à donc été optimisé dans mon sens mais si il peut être utilisé par d'autres je vais étudier tout ca.
9 nov. 2005 à 22:05
Sinon j'aime tout se qui est en HashTable ^^
7/10
6 nov. 2005 à 19:39
Il est activable ou non,avec choix de protections des ops,voice,choix des sentence : avertir,kick ou kickban et choix du canal d'action (# pour tous les chans ou l'on est op)
if (%tps == $null) >> if (!%tps) aussi
6 nov. 2005 à 18:56
les / sont inutiles
ban kick : ban -k (cf aide)
tu peux utiliser tokenize 32 $strip($1-) au début de ton on text et de ton on action, ça t'évitera de faire $strip à chaque fois
$true, t'enlèves
le . devant halt sert à rien, et perso je préfère "return"
tu peux même regrouper ces deux events en un seul, étant donné qu'ils sont identiques ici
on *:text:*:#:badword.check $chan $nick $1-
on *:action:*:#:badword.check $chan $nick $1-
alias -l badword.check {
if (!$3) return
tokenize 32 $strip($1-)
if ((($2 isop $1) && ($ap(op) on)) || (($2 isvoice $1) && ($ap(voice) on)) || ($ap(actif) != on) || ($me !isop $1)) return
else {
var %i 3, %m $0
while %i <= %m {
var %w = $gettok($3-,%i,32)
if ($istok($ap(list),%w,182)) {
if ($istok(a-k-kb,$ap(sent),45)) msg $1 Le mot $+(,%w,) est interdit
if ($ap(sent) == k) kick $1 $nick "message de kick, tout de même"
elseif ($ap(sent) == kb) ban -k $1 $nick 2
break (à vérifier)
}
inc %i
}
}
}