Nicklist

cs_resistant Messages postés 12 Date d'inscription mardi 19 octobre 2004 Statut Membre Dernière intervention 15 juillet 2005 - 13 juil. 2005 à 02:59
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009 - 15 juil. 2005 à 01:48
petite question : ya tu moyen de savoir dans la nicklist combien de personne ont (ex. la couleur rouge )?

la seule chose que jai reussi a faire c de savoir la couleur du nick avec $cnick



la raison c que je fait un stat , mais pour les reguliers mon serveur
me retourne les couleurs avec le raw357, mais autant que possible je ne
voudrais pas m'en servir


Destroy

12 réponses

cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
13 juil. 2005 à 04:32
$cnick(N/pseudo, M)

Retourne le Nième pseudo dans la liste des couleurs des pseudonymes ou
si le pseudo est spécifié, retourne la Nième position de l'item dans la
liste qui correspond au pseudo. Si le pseudo ne correspond à aucun
item, il retourne zéro.



Propriétés : color, modes, levels, method, anymode, nomode, ignore, op, voice, protect, notify, idle



Pour obtenir la couleur du pseudo, vous pouvez utiliser
$cnick(pseudo).color. Si 'pseudo' ne correspond à aucun item dans la
liste, il retourne la couleur 'Normal Text', ou si M = 1, retourne la
couleur 'Listbox text". M est optionnel.



$cnick(pseudo).color retournera la couleur du pseudo ( 4 pour rouge par ex )
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
13 juil. 2005 à 12:49
faudrait donc faire une boucle while en utilisant $nick($chan,0) pour maximum et $nick($chan,%variable) pour obtenir chaque nick
var %t 1, %max $nick($chan,0)
while %t <= %max {
;pseudo = $nick($chan,%t)
...
inc %t
}
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
13 juil. 2005 à 16:34
Euh faudra faire attention car si le nick a un @ devant son pseudo il faut faire $cnick(@pseudo).color j'crois
0
Nolson Messages postés 216 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 16 mars 2006
13 juil. 2005 à 18:53
Sur les gros salons, il vaut mieux éviter de faire une boucle sur les nicks. En fait, dès qu'il est possible dans un script d'éviter de boucler, il faut le faire. Alors il faut se débrouiller autrement ;-)

2 approches :

1) Soit ta coloration des nicks tu l'effectues sur le statut de ce dernier (op, helper, voice, regular), [exemple bleu pour op, vert pour helper, rose pour voice et noir pour regular] >> nombre de nicks :

- bleu : $nick(#channel,0,o)
- vert : $nick(#channel,0,h)
- rose : $nick(#channel,0,v)
- noir : $nick(#channel,0,r)

2) Soit ta coloration des nicks tu l'effectues sur un masque [exemple tous les nicks ayant "guest" en ident sont en rouge] >> nombre de nick rouges :
$ialchan([mailto:*!guest@*,#channel,0 *!guest@*,#channel,0])

Voila ;-)
0

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

Posez votre question
cs_resistant Messages postés 12 Date d'inscription mardi 19 octobre 2004 Statut Membre Dernière intervention 15 juillet 2005
13 juil. 2005 à 22:54
ma coloration des nick est deja faite par un raw357, qui divise les reguliers en 3 parties, homme, femme , ou couple et associe une couleur pour chaque. donc un petit quelque chose qui pourrait compter le nombre de nick rouge, bleu ou noir
,
en autant possible j'aimerais ne pas avoir a me servir du raw
dsl jme suis p-e mal expliquer

Raw 357:*avatar* {
If ($3 == 1) {
Haltdef
.cnick -anm2 $1 13
}
; Elseif ($3 == 2) {
; Haltdef
; .cnick -anm2 $1 12
; }
Elseif ($3 == 4) {
Haltdef
.cnick -anm2 $1 7
}
}
0
Nolson Messages postés 216 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 16 mars 2006
13 juil. 2005 à 23:28
Tu es sur quel serveur? Je ne connaissais pas le raw 357.
Pour l'obtenir tu es bien obligé de toute façon d'envoyer une commande au serveur (genre /whois ou /who)?

C'est sur que si ta coloration se fait sur des critères bien spécifiques, tu n'auras pas d'autres choix que de boucler sur les nicks du channel, un peu comme le propose Arkanis, et faire le décompte de tes trois catégories.
0
cs_resistant Messages postés 12 Date d'inscription mardi 19 octobre 2004 Statut Membre Dernière intervention 15 juillet 2005
14 juil. 2005 à 00:44
genre quelque chose du style IF ($cnick == .color4 ) {calcul le nombre de nick qui sont rouge dans la nick list}
0
cs_resistant Messages postés 12 Date d'inscription mardi 19 octobre 2004 Statut Membre Dernière intervention 15 juillet 2005
14 juil. 2005 à 05:34
bon voici ou j'en suis rendu, jai reussi a sortir qui a quelle couleur dans la nick list, mais la le resultat je ne c pas quoi faire avec (comment le traiter) ca me sort le nick avec la couleur approprie, le nick j'en ai pas de besoin mais ye la pour reference pour l'instant.


var %nikcol 1
while %nikcol <= $nick($active,0) {
if ( $cnick($nick($active,%nikcol)).color = 13 ) { echo -s $cnick($nick($active,%nikcol)).color $+ $chr(32) $+ $nick($active,%nikcol) }
elseif ( $cnick($nick($active,%nikcol)).color = 7 ) { echo -s $cnick($nick($active,%nikcol)).color }
elseif ( $cnick($nick($active,%nikcol)).color = 1 ) { echo -s $cnick($nick($active,%nikcol)).color }
inc %nikcol
}

donc a la place du echo ca me prendrait quelque chose qui va compter combien de couleur 13,7 et 1 il y a ex couleur 13 25, couleur 7 12.
0
cs_resistant Messages postés 12 Date d'inscription mardi 19 octobre 2004 Statut Membre Dernière intervention 15 juillet 2005
14 juil. 2005 à 06:06
barjo que je suis j'ai trouver , donc ce week end ma poster ca complet
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
14 juil. 2005 à 13:08
while %nikcol <= $nick($active,0) {
utilise le %max comme je te l'avais fait :)
sinon il calcule le maximum de personnes sur le chan à chaque passage, ça fait rammer
pour ta question tu peux utiliser des hash tables ou des variables => /hinc ou /inc
0
cs_resistant Messages postés 12 Date d'inscription mardi 19 octobre 2004 Statut Membre Dernière intervention 15 juillet 2005
15 juil. 2005 à 00:47
dsl RCA la chu melanger , dois je imbriquer ton while dans le mien ou completement refaire ? totalement perdu
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
15 juil. 2005 à 01:48
modifie juste le début du while :
var %nikcol 1, %max $nick($active,0)
while %nikcol <= %max {
if ( $cnick($nick($active,%nikcol)).color = 13 ) { echo -s $cnick($nick($active,%nikcol)).color $+ $chr(32) $+ $nick($active,%nikcol) }
elseif ( $cnick($nick($active,%nikcol)).color = 7 ) { echo -s $cnick($nick($active,%nikcol)).color }
elseif ( $cnick($nick($active,%nikcol)).color = 1 ) { echo -s $cnick($nick($active,%nikcol)).color }
inc %nikcol
}


sinon moi c'est ArKanis :p
RCA c'est mon clan, j'ai pris ça parce que "ArKanis" c'était malheureusement déjà pris :(
on peut changer de nick au fait ?
0