Lister les nicks

kishkaya Messages postés 365 Date d'inscription samedi 26 juin 2004 Statut Membre Dernière intervention 17 avril 2008 - 31 oct. 2004 à 15:46
tidds Messages postés 246 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 9 janvier 2006 - 31 oct. 2004 à 21:56
J'ai deux question :
1-comment faire un message ou apparaitrai le nom de tout les nick persent sur le salon (pour faire un highlights chez eux et reveiller le salon)
2-Comment couper ce message en plusieur messages si le message depasse un certain nombre de lettre

Merci de m'aider

_Marikou

7 réponses

cs_SornDrixer Messages postés 2084 Date d'inscription jeudi 12 décembre 2002 Statut Membre Dernière intervention 30 janvier 2011 8
31 oct. 2004 à 15:55
Bonjour,

1) :
Fais une boucle sur $nick(#canal,X)
Si X vaut 0, retourne le nombre total de personne présente.
Si X est un nombre autre que 0, retourne le nick ayant la Xième position dans la nicklist.
Ensuite, pour tout avoir en une ligne, il te suffit de stocker ton $nick(#canal,X) dans une variable comme cela :
var %variable $+(%variable,$chr(32),$nick(#canal,X))

2)
Utilise $len() qui retourne le nombre de caractère d'une chaine, si $len() est suppérieur à tel nombre, utilise $left(chaine,X) qui va retourner les X premiers caractères de la chaine.

Je te laisse mettre tout ca en forme, si tu coinces, n'hésite pas!

Cordialement, Sorn_Drixer
-
:question) Mon site : Sorn-Creation
0
kishkaya Messages postés 365 Date d'inscription samedi 26 juin 2004 Statut Membre Dernière intervention 17 avril 2008
31 oct. 2004 à 17:03
bon voila ce que j'ai fait (j'ai mis une petite alternance des couelurs et du rgas pas gras)
j'ai pas reussi a couper le message en petite message sans couper les $nick , mais je debute aussi :/
si tu pouvais me donnner une petite aide please =)
if ($strip($1) !reveil) && ($read(logged/ $+ $hget(authen,$gettok($nick,1,124)) $+ .txt,4) moderateur) {
var %numusers = $nick(#barback,0)
var %i = 1
var %variable
var %rang = 3
while (%i <= %numusers) {
var %coul =  $+ %rang $+ ,0
var %variable = $+(%variable,%coul,$chr(32),$nick(#barback,%i))
inc %i
inc %rang
if (%rang == 16) {
var %rang = 1
}
}
/msg $chan Reveillez vous les gens : $+ $chr(32) $+ %variable
}
0
cs_SornDrixer Messages postés 2084 Date d'inscription jeudi 12 décembre 2002 Statut Membre Dernière intervention 30 janvier 2011 8
31 oct. 2004 à 18:01
Ha oui, dans %variable tu as des pseudos, j'avais oublié.
C'est vrai que là, pour ne pas couper un pseudo, ca risque d'être embettant. Tu ne pourrais pas sinon envoyer chaque pseudo dans un nouveau /msg ? :big)

Franchement là, je n'ai pas d'idée qui me vienne à l'esprit. Peut-être que les autres scripteurs pourront t'aider.

Cordialement, Sorn_Drixer
-
:question) Mon site : Sorn-Creation
0
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
31 oct. 2004 à 19:58
tu dois avoir plusieurs variables qui stockent les nicks de tes users , pour ca une hashtable serait plus souple d'utilisation mais avec des vars ca donne ca :

alias nicks {
  ;%i sert de compteur pour les nicks , %x pour tes variables... 
  var %i = $nick($1,0) , %x 1
  while %i {
    set %nicks. $+ %x $nick($1,%i) %nicks. [ $+ [ %x ] ]
    if ($len(%nicks. [ $+ [ %x ] ]) >= 300) { inc %x }
    dec %i
  }
  ;puis la j'affiche les résultats , mais a toi de mettre ce que tu veux
  while %x {
    echo -a Nicks sur $1 : %nicks. [ $+ [ %x ] ]
    dec %x
  }
  unset %nicks.*
}


utilisation /nicks #salon , a toi d'adapter
j'utilise des vars globales apparemment /var ne supporte pas les noms "dynamiques" :) voilou
PaDa
0

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

Posez votre question
tidds Messages postés 246 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 9 janvier 2006
31 oct. 2004 à 20:13
PaDa, /var supporte très bien les noms dynamiques :

alias pwet {
  var %i = 1
  while (%i <= 10) {
    var %pwet. [ $+ [ %i ] ] %i
    echo -a %pwet. [ $+ [ %i ] ]
    inc %i
  }
} 


Voilou =P

_____________________________________

Tidds alias moo alias Oni_Baka
Voilà, plus d'ambiguité possible. :]

World is moo
_____________________________________
0
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
31 oct. 2004 à 21:49
hm ok tidds but :
mets ca dans mon alias au lieu du /set ;
var %nicks. [ $+ [ %x ] ] = $nick($1,%i) %nicks. [ $+ [ %x ] ]
tu vas te retrouver avec * Invalid format: $nick (line 5, Init.mrc)
bref , j'pensais que c t du a ca mais en effet ton truc marche :) une erreur de parsing qq part , faudrait crier sur la board mirc.com :p
(avec ou sans crochets , avec ou sans égal , tjrs la même chose :))
PaDa
0
tidds Messages postés 246 Date d'inscription samedi 1 novembre 2003 Statut Membre Dernière intervention 9 janvier 2006
31 oct. 2004 à 21:56
De toute façon, je compte envoyer un email à Khaled pour lui demander de reprogrammer son mIRC tout buggé ! :]

_____________________________________

Tidds alias moo alias Oni_Baka
Voilà, plus d'ambiguité possible. :]

World is moo
_____________________________________
0
Rejoignez-nous