Devoice automatique (+voice automatique)

Princedelavil Messages postés 60 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 18 mai 2006 - 4 mai 2006 à 12:51
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009 - 16 juin 2007 à 19:35
Bonjour à tous,

J'ai trois "petite" question pour vous :p
Voila j'ai une remote pour dévoicer une personne au bout de 30 minutes d'inactivité:

alias devoice {
/mode $1 -v $2
/notice $nick Ca fait 30 minutes que tu n'as rien dit sur $1 $+ ... tu es donc devoicé.
}
on *:text:*:#:{
if ($nick isvoice #) {
.timerdevoice $+ $wildsite 1 1800 /devoice $chan $ial($$address($nick,2),1).nick
}
}
on *:action:#:{
if ($nick isvoice #) {
.timerdevoice $+ $wildsite 1 1800 /devoice $chan $ial($$address($nick,2),1).nick
}
}
on *:voice:#: {
if ($vnick isop #) { halt }
if ($vnick == $me) { halt }
else {
.timerdevoice $+ $wildsite 1 1800 devoice $chan $ial($$address($vnick,2),1).nick }
}

Mais le problème vient de la notice, elle ne s'envoie pas... Pk?

Deuxieme question, c'est que je voudrais que ce code prenne en compte les changements de nick. Comment faire (je suis un peu un n00b).

Et la dernière question (moins importante) serait d'avoir une remote permettant de voice automatiquement une personne ayant écrit 10 lignes en 5 minutes... (Avec une notice lui disant qu'elle vient d'être voice pour activité
)

Si quelqu'un peut m'aider. :)

Merci d'avance :D

8 réponses

S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
4 mai 2006 à 19:17
Question 1 :

/notice $nick ...

$nick ne correspond plus à rien au moment où tu appelles la fonction devoice.

Apparemment, en remplaçant par $2 ça devrait marcher.



Question 2 : quand quelqu'un change de nick... vérifie s'il n'est pas
dans la liste de ceux que tu surveilles. Il faut déjà créer une liste.
Après tu relance le même timer, avec le temps restant avec les
nouvelles informations.



Question 3 : Tu peux t'inspirer d'un anti flood, qui va calculer le
nombre de phrases pendant X temps, et donc changer le temps et changer
la sanction par un voice :)

Sinon, il faut créer un nouveau code... et j'ai pas le courage :p


----------------------------
Signature des parents :
0
Princedelavil Messages postés 60 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 18 mai 2006
4 mai 2006 à 19:41
Pour la notice merci c'était bien ca :)
Pour les nicks, je crois que je vais laisser tomber xD
Et pour les voices.... mouè mdrr jvé essayer de prendre mon courage a deux main mdr

Merci :))

PS. Si qqun a déjà un code de fait pour les voice ;) n'ésitez aps :p
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
4 mai 2006 à 20:31
Il n'a pas besoin de regarder les changement de nick s'il utilise un timer avec les $address :)



Essaye ca pour les 5 ligne en 10 minutes



on *:text:*:#:{

inc %nbspeak. $+ $wildsite

if ($+(%nbspeak.,$wildsite) == 5) { mode $chan +v $nick |.timer $+ $wildsite off }

elseif ($+(%nbspeak.,$wildsite) == 1) .timer $+ $wildsite 1 600 unset %nbspeak. $+ $wildsite

}
0
Princedelavil Messages postés 60 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 18 mai 2006
4 mai 2006 à 20:38
J'y avais penser apres les host en considération mais je suis vraiment un n00b, je sais pas du tout le faire ://

Sinon pour les lignes, j'ai tester mais ca ne fonctionne pas :/ (Il faut aps attendre 10 minutes avant que ca voice au moins? lol)
0

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

Posez votre question
S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
5 mai 2006 à 09:12
Normalement ça devrait macher :/

Peut-être des problèmes d'évaluation...



on *:text:*:#:{

if ( $nick !isvoice $chan) {

inc $+(%,nbspeak.,$wildsite)

if ($eval($+(%,nbspeak.,$wildsite),2) == 5) { mode $chan +v $nick | .timer $+ $wildsite off }

elseif ($eval($+(%,nbspeak.,$wildsite),2) == 1) .timer $+ $wildsite 1 600 unset $+(%,nbspeak.,$wildsite)

}

}



J'ai rajouté "if ( $nick !isvoice $chan)" parce que sinon ça surcharge
un peu de timers qui deviennent inutils si tu utilises ton code d'en
haut.

Il faudrait aussi rajouter un "if (($me ishop $chan) || ($me isop
$chan))" Pour ne pas controler les channels où tu n'as aucun pouvoir.
------------------------------------
Signature des parents :
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
5 mai 2006 à 16:18
Dans ton code tu utilise $wildsite donc tu utilise les $address ...


Normalement pas besoin d'evaluer, t'es sur que ta testé sur un salon ou tu etait minimum halfop ?
0
Princedelavil Messages postés 60 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 18 mai 2006
8 mai 2006 à 19:55
Encore un essai de fait mais ca ne marche toujours pas :/

Voila mon code:

alias devoice {
/mode $1 -v $2
/notice $2 Ca fait 30 minutes que tu n'as rien dit sur $1 $+ ... tu es donc devoicé.
}
on *:text:*:#tagerz:{
if ($nick isvoice #) {
.timerdevoice $+ $wildsite 1 1800 /devoice $chan $ial($$address($nick,2),1).nick
}
}
on *:action:#tagerz:{
if ($nick isvoice #) {
.timerdevoice $+ $wildsite 1 1800 /devoice $chan $ial($$address($nick,2),1).nick
}
}
on *:voice:#tagerz: {
if ($vnick isop #) { halt }
if ($vnick == $me) { halt }
else {
.timerdevoice $+ $wildsite 1 1800 devoice $chan $ial($$address($vnick,2),1).nick }
}


on *:text:*:#tagerz:{
if ( $nick !isvoice $chan) {
inc $+(%,nbspeak.,$wildsite)
if ($eval($+(%,nbspeak.,$wildsite),2) == 5) { mode $chan +v $nick | .timer $+ $wildsite off }
elseif ($eval($+(%,nbspeak.,$wildsite),2) == 1) .timer $+ $wildsite 1 600 unset $+(%,nbspeak.,$wildsite)
}
}

Donc le devoice au bout de 30 minutes marche très bien mais le voice pas du tout... Je ne sais pas pourquoi. Pourtant c'est mon server donc je suis op + une oline (netadmin)...

Une erreur peut etre?
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
16 juin 2007 à 19:35
slt tous !
je viens d'essayer ton code Pincedelavil, suis OP et ça dévoice impec, mais ça ne voice pas :/
je cherche aussi ...

 
0
Rejoignez-nous