|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : Classement [ Divers / Aide et documentation ] (Corween)
Informations & options pour cette discussion
|
vendredi 11 mai 2007 à 19:40:35 |
Classement

Corween
|
Bonjour, pour votre plus grand plaisir : LA question de Corween ^_^ Donc en fait c'était pour savoir si vous conaissiez un site avec un tuto pour pouvoir faire un classement ( genre un top10 ) ou si c'est pas trop compliquer, m'expliquer :s J'ai regardé dans quelques bots comment il été fait, mais j'me perd dans toutes les lignes :x J'ai cherch& aussi sur Google, bah il veux po être mon ami aparement aujourd'hui, il m'donne rien du tout :'( Vala, merci :p
|
|
|
|
vendredi 11 mai 2007 à 19:59:37 |
Re : Classement

wims
|
j'avais fait un alias il a quelque temps pour qqun qui voulait faire la meme chose que toi, je te le laisse ici, je peux le commenté si tu veux, il marche pour des variables, tout les variables commence par le même nom %bla, il gère aussi les scores egaux
alias getpoint { .echo -q $regex($1-,/(?:^|\s)(\d+)\.+/g) | var %a = 1, %d = $regml(0), %c while (%a <= %d) { %c = %c $regml(%a) | inc %a } | return %c }
alias top6 { Var -s %a 1 ,%b = $var(%bla*,0) while (%a <= %b) { var %v = $var(%bla*,%a).value ,%vv = $var(%bla*,%a) if ($findtok($getpoint(%s),%v,32)) var -s %s = $puttok(%s,$+(%v,.,$token($token(%s,$ifmatch,32),2,46),/,$remove($token($var(%bla*,%a),2,46),%bla)),$ifmatch,32) else var -s %s = %s $+($var(%bla*,%a).value,.,$remove($token($var(%bla*,%a),2,46),%bla)) inc %a } var %ss = $sorttok(%s,32,nr) ,%c = 1 ,%d = $numtok(%ss,32) while (%c <= %d) { echo -a $+(%c,.) $replace($token($token(%ss,%c,32),2,46),/,$+($chr(44),$chr(32))) - $token($token(%ss,%c,32),1,46) dollar(s) - | inc %c } }
Si ton code n'utilise pas les variables ou si tu ne compte pas classé par variables, détails un peu plus ce que tu veux avec des exemples ;)
|
|
|
|
vendredi 11 mai 2007 à 21:37:58 |
Re : Classement

Corween
|
xD huhu j'comprend rien au code, donc j'pourrais pas te dire si c'est ça que je recherche en fait ^_^
Je cherche un truc du genre, j'fais un jeu avec des points comptés en variable, et si je tappe !top10 ya les 10 premier vec leurs points et si jtape !classement ya tous les joueurs classé du plus fort au moins fort vec les points toujours ( un truc du genre quoi )
Mais j'pensais que c'était plus simple que ça xD 'fin merci beaucoup en tout cas, je garde ^^ mais il fait quoi e nfait ce code ? il donne le top6 ?
|
|
|
|
vendredi 11 mai 2007 à 21:54:38 |
Re : Classement

wims
|
Oui ok en variable mais t'es variable se présente comment ? Montre moi un exemple... Est ce que c'est dans ce genre là : %score_pseudo1 score1 %score_pseudo2 score2
|
|
|
|
samedi 12 mai 2007 à 11:19:48 |
Re : Classement

RCA ArKanis
|
Une solution simple, c'est de mettre le classement sous cette forme : score1:nick1 score2:nick2 ...
Pour ajouter quelqu'un dans le classement : var %top = $classement_actuel (à toi de le donner)
auquel tu rajoutes le score du nouveau (même s'il ne rentre pas dans le top 10) var %top = $instok(%top,$+(%score_du_gars,:,%nick_du_gars),-1,32)
que tu tries : var %top = $sorttok(%top,32,nr)
et tu ne gardes que les 10 premiers : var %top = $gettok(%top,1-10,32)
Ce qui te donne au final : var %top = $gettok($sorttok($instok($classement_actuel,$+(%score_du_gars,:,%nick_du_gars),-1,32),32,nr),1-10,32)
Si tu veux avoir sa place (pour un éventuel /msg), il te faudra alors : var %n = $+(%score_du_gars,:,%nick_du_gars), %top = $gettok($sorttok($instok($classement_actuel,%n,-1,32),32,nr),1-10,32) say $iif($findtok(%top,%n,1,32),Position : $+($ifmatch,e),Non classé)
En n'oubliant pas de sauvegarder le top 10 (.ini ou hashtable). Exemple avec .ini : var %n = $1, %top = $gettok($sorttok($instok($readini(Classement.ini,Top,Top10),%n,-1,32),32,nr),1-10,32) say Position de %nick_du_gars : $iif($findtok(%top,%n,1,32),$+($ifmatch,e),Non classé) writeini -n Classement.ini Top Top10 %top
Puis si tu en as besoin : ON *:TEXT:!top*:#:{ var %n = $remove($1-,!top) if (%n isnum 1-) msg $chan Classement : $gettok($readini(Classement.ini,Top,Top10),$+(1-,%n),32) }
Si tu comptes faire plus que 10, du genre une infinité avec ton !classement, ça risque de ne pas fonctionner puisque la ligne sera trop longue ^^
|
|
|
Cette discussion est classé dans : classement
Répondre à ce message
Sujets en rapport avec ce message
Classement des trois meilleur joueur... [ par Panther007 ]
Salut , J'ai un Jeu , Le But du jeu est de retapez le mot donner par le robot le plus vite possible , le premier qui tape le mot gagne , mais ce que j
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
|