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 !

UN PENDU SUR IRC POUR JOUER À PLUSIEUR !


Information sur la source

Catégorie :Divers Classé sous : jeu, pendu, multijoueur, lettre, mot Niveau : Débutant Date de création : 05/06/2006 Date de mise à jour : 05/06/2006 20:24:01 Vu : 8 420

Note :
5,33 / 10 - par 3 personnes
5,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (13)
Ajouter un commentaire et/ou une note

Description

Il s'agit d'un autre pendu IRC excepté que sur celui là il n'y a pas de limite de joueur, ni de temps ni de lettre à donnez. Vous choisissez un mot, chacun écrit une lettre à son tour, celui qui trouve gagne un point et choisi le prochain mot. Pour le lancer il suffit de taper "/pendu + mot" si vous êtes celui qui détient le script, sinon, il faut taper "!pendu". Celui qui détient le script ne peut pas jouer par contre.

Il y a une partie du code à copier dans un REMOTE et une autre dans un ALIASES
 

Source

  • ###############################
  • ### ###
  • ### A COPIER DANS UN REMOTE ###
  • ### ###
  • ###############################
  • on 1:KICK:%chandujeu: {
  • if (%pendu == on && $knick == %nom && %m == off) {
  • msg %chandujeu 3,15 Dommage, le pendu est fini. Pour relancer, tapez 4!pendu
  • unset %pendu
  • unset %lettrecite*
  • unset %m
  • unset %nom
  • unset %score*
  • unset %warn*
  • unset %chandujeu
  • unset %scorependu
  • unset %soluce
  • unset %mot
  • }
  • }
  • on 1:PART:%chandujeu: {
  • if (%pendu == on && $knick == %nom && %m == off) {
  • msg %chandujeu 3,15 Dommage, le pendu est fini. Pour relancer, tapez 4!pendu
  • unset %pendu
  • unset %m
  • unset %nom
  • unset %score*
  • unset %warn*
  • unset %chandujeu
  • unset %scorependu
  • unset %soluce
  • unset %mot
  • unset %lettrecite*
  • }
  • }
  • on 1:QUIT: {
  • if (%pendu == on && $knick == %nom && %m == off) {
  • msg %chandujeu 3,15 Dommage, le pendu est fini. Pour relancer, tapez 4!pendu
  • unset %pendu
  • unset %m
  • unset %nom
  • unset %score*
  • unset %warn*
  • unset %chandujeu
  • unset %scorependu
  • unset %soluce
  • unset %mot
  • unset %lettrecite*
  • }
  • }
  • ON 1:NICK: {
  • if (%pendu == on && %score. [ $+ [ $nick ] ] && %scorependu) {
  • set %scorependu $reptok(%scorependu,score. [ $+ [ $nick ] ] $+ ; $+ $nick,score. [ $+ [ nick ] ] $+ ; $+ $newnick,45)
  • set %score. [ $+ [ $newnick ] ] %score. [ $+ [ $nick ] ]
  • unset %score. [ $+ [ $nick ] ]
  • }
  • if (%nom == $nick) set %nom $newnick
  • }
  • on 1:TEXT:*:?:{
  • if (%pendu == on && $nick == %nom && %m == off) {
  • if ($len($$1) < 26 && $len($$1) > 1) {
  • set %charcourrant 1
  • set %bon true
  • while (%charcourrant <= $len($$1)) {
  • if ($mid($lower($$1),%charcourrant,1) < a || $mid($lower($$1),%charcourrant,1) > z) {
  • set %bon false
  • }
  • inc %charcourrant
  • }
  • if (%bon == true) {
  • set %mot $lower($$1)
  • msg $nick 3,15 le mot sera donc4 %mot
  • msg %chandujeu 3,15 début du pendu :4 $str(-,$len(%mot))
  • msg %chandujeu 3,15 vous pouvez donner une lettre ou un mot.
  • set %m on
  • set %soluce $str(-,$len(%mot))
  • }
  • else msg $nick 3le mot entré est éronné.
  • }
  • else msg $nick 3le mot entré est trop long ou trop court.
  • }
  • unset %bon
  • unset %charcourrant
  • }
  • on 1:TEXT:*:#:{
  • if ($$1 == !pendu && %penduactive == on && %motusactive != on) {
  • if (%pendu == on) msg $chan 3le jeu est déjà lancé.
  • else {
  • set %chandujeu $chan
  • set %pendu on
  • set %nom $nick
  • set %m off
  • msg %chandujeu 3,15 9P8E4N7D11U 3(créé par 4Barsy3)
  • msg %chandujeu 3,15 pour avoir les scores tapez 4!scorpendu
  • msg %chandujeu 3,15 Patientez le temps que4 %nom 3donne un mot ...
  • msg $nick 3,15 donne un mot.
  • msg $nick 3,15 sa taille ne doit pas dépasser 25 caractères et être inférieure à 2 caractères, des lettres uniquement et sans espaces.
  • msg $nick 3,15 Pour arreter le jeu, tape 4!finpendu 3sur %chandujeu
  • }
  • }
  • if ($$1 == !finpendu && $nick == %nom && %pendu == on && $chan == %chandujeu) {
  • msg %chandujeu 3,15 Dommage, le pendu est fini. Pour relancer, tapez 4!pendu
  • unset %pendu
  • unset %lettrecite*
  • unset %m
  • unset %nom
  • unset %score*
  • unset %warn*
  • unset %chandujeu
  • unset %scorependu
  • unset %soluce
  • unset %mot
  • }
  • if (%pendu == on && $nick != %nom && %m == on && $chan == %chandujeu) {
  • if ($lower($$1) == %mot) {
  • msg $chan 3,15 Bravo $nick le mot était bien %mot
  • msg $nick 3,15 donne un mot.
  • msg $nick 3,15 sa taille ne doit pas dépasser 25 caractères et être inférieure à 2 caractères, des lettres uniquement et sans espaces.
  • msg $nick 3,15 Pour arreter le jeu, tape 4!finpendu 3sur %chandujeu
  • set %nom $nick
  • set %m off
  • unset %lettrecite*
  • unset %characite
  • if (%score. [ $+ [ $nick ] ]) {
  • set %sc %score. [ $+ [ $nick ] ]
  • inc %score. [ $+ [ $nick ] ]
  • set %scorependu $reptok(%scorependu,%sc $+ ; $+ $nick,%score. [ $+ [ $nick ] ] $+ ; $+ $nick,45)
  • unset %sc
  • }
  • else {
  • set %score. [ $+ [ $nick ] ] 1
  • set %scorependu $addtok(%scorependu,1 $+ ; $+ $nick,45)
  • }
  • }
  • if ($len($$1) == 1 && %lettrecite. [ $+ [ $lower($$1) ] ] != on && $lower($$1) >= a && $lower($$1) <= z) {
  • set %lettrecite. [ $+ [ $lower($$1) ] ] on
  • set %characite %characite $+ , $+ $lower($$1)
  • if ($count(%mot,$lower($$1)) > 0) {
  • set %charcourrant 1
  • while (%charcourrant <= $len(%mot)) {
  • set %ch %charcourrant
  • dec %ch
  • if ($mid(%mot,%charcourrant,1) == $lower($$1)) {
  • if (%charcourrant == 1) set %soluce $lower($$1) $+ $right(%soluce,-1)
  • elseif (%charcourrant == $len(%mot)) set %soluce $left(%soluce,%ch) $+ $lower($$1)
  • else set %soluce $left(%soluce,%ch) $+ $lower($$1) $+ $right(%soluce,- $+ %charcourrant)
  • }
  • inc %charcourrant
  • }
  • if ($count(%soluce,-) == 0) {
  • msg $chan 3,15 Bravo $nick le mot était bien %mot
  • msg $nick 3,15 donne un mot.
  • msg $nick 3,15 sa taille ne doit pas dépasser 25 caractères et être inférieure à 2 caractères, des lettres uniquement et sans espaces.
  • msg $nick 3,15 Pour arreter le jeu, tape 4!finpendu 3sur %chandujeu
  • set %nom $nick
  • set %m off
  • unset %lettrecite*
  • unset %characite
  • if (%score. [ $+ [ $nick ] ]) {
  • set %sc %score. [ $+ [ $nick ] ]
  • inc %score. [ $+ [ $nick ] ]
  • set %scorependu $reptok(%scorependu,%sc $+ ; $+ $nick,%score. [ $+ [ $nick ] ] $+ ; $+ $nick,45)
  • unset %sc
  • }
  • else {
  • set %score. [ $+ [ $nick ] ] 1
  • set %scorependu $addtok(%scorependu,1 $+ ; $+ $nick,45)
  • }
  • }
  • if (m != off) {
  • msg $chan 3,15 la lettre4 $$1 3est présente dans le mot :4 %soluce 3; les lettres déjà cités sont : %characite
  • }
  • }
  • }
  • unset %ch
  • unset %charcourrant
  • }
  • if (%pendu == on && $$1 == !scorpendu && %scorependu && $chan == %chandujeu) {
  • set %cmpt 0
  • set %nbrmax 9999999
  • set %rang %cmpt
  • inc %rang
  • while (%cmpt != $numtok(%scorependu,45)) {
  • set %max 0
  • set %cp 0
  • while (%cp != $numtok(%scorependu,45)) {
  • inc %cp
  • if ($gettok($gettok(%scorependu,%cp,45),1,59) > %max && $gettok($gettok(%scorependu,%cp,45),1,59) < %nbrmax) {
  • set %max $gettok($gettok(%scorependu,%cp,45),1,59)
  • }
  • }
  • set %cp 0
  • set %nbrmax %max
  • unset %listnom
  • while (%cp != $numtok(%scorependu,45)) {
  • inc %cp
  • if ($gettok($gettok(%scorependu,%cp,45),1,59) == %max) {
  • set %listnom %listnom $gettok($gettok(%scorependu,%cp,45),2,59)
  • inc %cmpt
  • }
  • }
  • msg $chan 3,15 %rang : %listnom avec %max pts
  • set %rang %cmpt
  • inc %rang
  • }
  • unset %max
  • unset %rang
  • unset %cmpt
  • unset %cp
  • unset %nbrmax
  • unset %listnom
  • }
  • #############################
  • ### ###
  • ### A COPIER DANS ALIASES ###
  • ### ###
  • #############################
  • /pendu {
  • set %chandujeu $chan
  • set %pendu on
  • set %nom $me
  • set %m on
  • set %mot $$1
  • unset %soluce
  • unset %lettrecite*
  • set %soluce $str(-,$len(%mot))
  • msg %chandujeu 3,15 9P8E4N7D11U 3(créé par 4Barsy3)
  • msg %chandujeu 3,15 pour avoir les scores tapez 4!scorpendu
  • msg %chandujeu 3,15 début du pendu :4 $str(-,$len(%mot))
  • msg %chandujeu 3,15 vous pouvez donner une lettre ou un mot.
  • }
  • /finpendu {
  • msg %chandujeu 3,15 Dommage, le pendu est fini. Pour relancer, tapez 4!pendu
  • unset %pendu
  • unset %m
  • unset %nom
  • unset %score*
  • unset %lettrecite*
  • unset %warn*
  • unset %chandujeu
  • unset %scorependu
  • }
###############################
###                         ###
### A COPIER DANS UN REMOTE ###
###                         ###
###############################

on 1:KICK:%chandujeu: {
  if (%pendu == on && $knick == %nom && %m == off) {
    msg %chandujeu 3,15 Dommage, le pendu est fini. Pour relancer, tapez 4!pendu
    unset %pendu
    unset %lettrecite*
    unset %m
    unset %nom
    unset %score*
    unset %warn*
    unset %chandujeu
    unset %scorependu
    unset %soluce
    unset %mot
  }
}

on 1:PART:%chandujeu: {
  if (%pendu == on && $knick == %nom && %m == off) {
    msg %chandujeu 3,15 Dommage, le pendu est fini. Pour relancer, tapez 4!pendu
    unset %pendu
    unset %m
    unset %nom
    unset %score*
    unset %warn*
    unset %chandujeu
    unset %scorependu
    unset %soluce
    unset %mot
    unset %lettrecite*
  }
}

on 1:QUIT: {
  if (%pendu == on && $knick == %nom && %m == off) {
    msg %chandujeu 3,15 Dommage, le pendu est fini. Pour relancer, tapez 4!pendu
    unset %pendu
    unset %m
    unset %nom
    unset %score*
    unset %warn*
    unset %chandujeu
    unset %scorependu
    unset %soluce
    unset %mot
    unset %lettrecite*
  }
}

ON 1:NICK: {
  if (%pendu == on && %score. [ $+ [ $nick ] ] && %scorependu) {
    set %scorependu $reptok(%scorependu,score. [ $+ [ $nick ] ] $+ ; $+ $nick,score. [ $+ [ nick ] ] $+ ; $+ $newnick,45)
    set %score. [ $+ [ $newnick ] ] %score. [ $+ [ $nick ] ]
    unset %score. [ $+ [ $nick ] ]
  }
  if (%nom == $nick) set %nom $newnick
}

on 1:TEXT:*:?:{
  if (%pendu == on && $nick == %nom && %m == off) {
    if ($len($$1) < 26 && $len($$1) > 1) {
      set %charcourrant 1
      set %bon true
      while (%charcourrant <= $len($$1)) {
        if ($mid($lower($$1),%charcourrant,1) < a || $mid($lower($$1),%charcourrant,1) > z) {
          set %bon false
        }
        inc %charcourrant
      }
      if (%bon == true) {
        set %mot $lower($$1)
        msg $nick 3,15 le mot sera donc4 %mot
        msg %chandujeu 3,15 début du pendu :4 $str(-,$len(%mot))
        msg %chandujeu 3,15 vous pouvez donner une lettre ou un mot.        
        set %m on
        set %soluce $str(-,$len(%mot))
      }
      else msg $nick 3le mot entré est éronné.
    }
    else msg $nick 3le mot entré est trop long ou trop court.
  }
  unset %bon
  unset %charcourrant
}

on 1:TEXT:*:#:{
  if ($$1 == !pendu && %penduactive == on && %motusactive != on) {
    if (%pendu == on) msg $chan 3le jeu est déjà lancé.
    else {
      set %chandujeu $chan      
      set %pendu on
      set %nom $nick
      set %m off
      msg %chandujeu 3,15 9P8E4N7D11U 3(créé par 4Barsy3)
      msg %chandujeu 3,15 pour avoir les scores tapez 4!scorpendu
      msg %chandujeu 3,15 Patientez le temps que4 %nom 3donne un mot ...
      msg $nick 3,15 donne un mot.
      msg $nick 3,15 sa taille ne doit pas dépasser 25 caractères et être inférieure à 2 caractères, des lettres uniquement et sans espaces.
      msg $nick 3,15 Pour arreter le jeu, tape 4!finpendu 3sur %chandujeu
    }
  }
  if ($$1 == !finpendu && $nick == %nom && %pendu == on && $chan == %chandujeu) {
    msg %chandujeu 3,15 Dommage, le pendu est fini. Pour relancer, tapez 4!pendu
    unset %pendu
    unset %lettrecite*
    unset %m
    unset %nom
    unset %score*
    unset %warn*
    unset %chandujeu
    unset %scorependu
    unset %soluce
    unset %mot
  }
  if (%pendu == on && $nick != %nom && %m == on && $chan == %chandujeu) {
    if ($lower($$1) == %mot) {
      msg $chan 3,15 Bravo $nick le mot était bien %mot
      msg $nick 3,15 donne un mot. 
      msg $nick 3,15 sa taille ne doit pas dépasser 25 caractères et être inférieure à 2 caractères, des lettres uniquement et sans espaces.
      msg $nick 3,15 Pour arreter le jeu, tape 4!finpendu 3sur %chandujeu      
      set %nom $nick
      set %m off
      unset %lettrecite*
      unset %characite      
      if (%score. [ $+ [ $nick ] ]) {      
        set %sc %score. [ $+ [ $nick ] ]
        inc %score. [ $+ [ $nick ] ]
        set %scorependu $reptok(%scorependu,%sc $+ ; $+ $nick,%score. [ $+ [ $nick ] ] $+ ; $+ $nick,45)
        unset %sc
      }
      else {
        set %score. [ $+ [ $nick ] ] 1
        set %scorependu $addtok(%scorependu,1 $+ ; $+ $nick,45)
      }
    }
    if ($len($$1) == 1 && %lettrecite. [ $+ [ $lower($$1) ] ] != on && $lower($$1) >= a && $lower($$1) <= z) {       
      set %lettrecite. [ $+ [ $lower($$1) ] ] on
      set %characite %characite $+ , $+ $lower($$1)
      if ($count(%mot,$lower($$1)) > 0) {
        set %charcourrant 1
        while (%charcourrant <= $len(%mot)) {
          set %ch %charcourrant
          dec %ch
          if ($mid(%mot,%charcourrant,1) == $lower($$1)) {
            if (%charcourrant == 1) set %soluce $lower($$1) $+ $right(%soluce,-1)
            elseif (%charcourrant == $len(%mot)) set %soluce $left(%soluce,%ch) $+ $lower($$1)
            else set %soluce $left(%soluce,%ch) $+ $lower($$1) $+ $right(%soluce,- $+ %charcourrant)
          }
          inc %charcourrant
        }
        if ($count(%soluce,-) == 0) {
          msg $chan 3,15 Bravo $nick le mot était bien %mot
          msg $nick 3,15 donne un mot. 
          msg $nick 3,15 sa taille ne doit pas dépasser 25 caractères et être inférieure à 2 caractères, des lettres uniquement et sans espaces.
          msg $nick 3,15 Pour arreter le jeu, tape 4!finpendu 3sur %chandujeu
          set %nom $nick
          set %m off
          unset %lettrecite*
          unset %characite
          if (%score. [ $+ [ $nick ] ]) {      
            set %sc %score. [ $+ [ $nick ] ]
            inc %score. [ $+ [ $nick ] ]
            set %scorependu $reptok(%scorependu,%sc $+ ; $+ $nick,%score. [ $+ [ $nick ] ] $+ ; $+ $nick,45)
            unset %sc
          }
          else {
            set %score. [ $+ [ $nick ] ] 1
            set %scorependu $addtok(%scorependu,1 $+ ; $+ $nick,45)
          }  
        }
        if (m != off) {
          msg $chan 3,15 la lettre4 $$1 3est présente dans le mot :4 %soluce 3; les lettres déjà cités sont : %characite
        }
      }
    }
    unset %ch
    unset %charcourrant
  }
  if (%pendu == on && $$1 == !scorpendu && %scorependu && $chan == %chandujeu) {
    set %cmpt 0
    set %nbrmax 9999999
    set %rang %cmpt
    inc %rang
    while (%cmpt != $numtok(%scorependu,45)) {
      set %max 0
      set %cp 0
      while (%cp != $numtok(%scorependu,45)) {
        inc %cp     
        if ($gettok($gettok(%scorependu,%cp,45),1,59) > %max && $gettok($gettok(%scorependu,%cp,45),1,59) < %nbrmax) {
          set %max $gettok($gettok(%scorependu,%cp,45),1,59)
        }
      }
      set %cp 0
      set %nbrmax %max
      unset %listnom
      while (%cp != $numtok(%scorependu,45)) {
        inc %cp      
        if ($gettok($gettok(%scorependu,%cp,45),1,59) == %max) {
          set %listnom %listnom $gettok($gettok(%scorependu,%cp,45),2,59)
          inc %cmpt
        }
      }
      msg $chan 3,15 %rang : %listnom avec %max pts
      set %rang %cmpt
      inc %rang
    }
    unset %max
    unset %rang
    unset %cmpt
    unset %cp
    unset %nbrmax
    unset %listnom
  }

#############################
###                       ###
### A COPIER DANS ALIASES ###
###                       ###
#############################

/pendu {
  set %chandujeu $chan      
  set %pendu on
  set %nom $me
  set %m on
  set %mot $$1
  unset %soluce
  unset %lettrecite*
  set %soluce $str(-,$len(%mot))
  msg %chandujeu 3,15 9P8E4N7D11U 3(créé par 4Barsy3)
  msg %chandujeu 3,15 pour avoir les scores tapez 4!scorpendu
  msg %chandujeu 3,15 début du pendu :4 $str(-,$len(%mot))
  msg %chandujeu 3,15 vous pouvez donner une lettre ou un mot.  
}
/finpendu {
  msg %chandujeu 3,15 Dommage, le pendu est fini. Pour relancer, tapez 4!pendu
  unset %pendu
  unset %m
  unset %nom
  unset %score*
  unset %lettrecite*
  unset %warn*
  unset %chandujeu
  unset %scorependu
}

Conclusion

Si vous découvrez un bug, ou si vous souhaitez ajouter une modification, contactez moi à mecatamago4@hotmail.com
 

Historique

05 juin 2006 20:24:01 :
J'avais oublié de mettre le code à copier dans l'ALIASE. Il fait l'objet de ma MAJ donc.

Commentaires et avis

signaler à un administrateur
Commentaire de ISoKa le 06/06/2006 11:45:03

Bonjour,
-tu as plusieurs fois les mêmes actions sur diffirents evenements, quit,kick,part et meme dans ton code une fois si je me trompe pas, au lieu d'a chaque fois remettre tes lignes de code, crées toi un alias et appel l à chak fois tu gagnerais en concision
-tu fais un while sur les lettres du mot pour verif si la lettre donnée correspond si j'ai bien compri. ca marcherai pas plus simplement et sans while avec un "isin" ou "iswm" ou encore mieu en "regex" ? ca t'eviterais des boucles je pense, tu gagnerai encore en lignes de code.
-tu fais dans ton "on text" pleins de "set" que tu unset à la fin, un "var" serai peut etre plus approprié alors
-pour avoir ton code en entier dans un seul remote, pour eviter de se disperser, vu qu'il est pas super long et encore pas mal raccourcicable, tu pourais au lieu d'aller dans les alias tout simplement dans ton remote mettre "alias pendu {" et "alias finpendu {"
voili voilou :)

signaler à un administrateur
Commentaire de ISoKa le 06/06/2006 12:00:51

ha oui j'oubliai quand on t'envoi le nouvo mot en pv tu fais encore une boucle sur chaque caractere poiur voir si c'est bien des lettres mais bon il existe des idetifieurs plus adéquat il me semble comme "isalpha" ainsi:
set %charcourrant 1
       set %bon true
while (%charcourrant <= $len($$1)) {
         if ($mid($lower($$1),%charcourrant,1) < a || $mid($lower($$1),%charcourrant,1) > z) {
           set %bon false
         }
         inc %charcourrant
       }
devient :
set %charcourrant 1 | set %bon true
if ($$1 !isalnum) { set %bon false }

c'est bien tu sembles maitrisé les while mais bon ser toi des identifieurs filé par mirc au lieu de toujours faire tes boucles, tu gagneras en vitesse d'execution, facilité de lecture, longueur de code et elegance.
voila :)

signaler à un administrateur
Commentaire de Barsy le 06/06/2006 21:26:30

En fait, c'est un vieu code que j'avais tapé il y a quelques années. Et mon ignorance des fonctions m'a obligé à utiliser tous ces subterfuges avec les while.

Si j'ai le temps je retoucherai le code pour qu'il soit moins lourd.

signaler à un administrateur
Commentaire de RCA ArKanis le 11/06/2006 11:57:11

c'est très mal codé :x
la première chose qu'on voit sur ce code c'est les 40 unset en ligne :x

passe par un alias pour unset toutes ces vars, ça t'évitera d'avoir 3x la même chose (comme l'a dit ISoKa)

unset %a
unset %b
unset %c
devient unset %a %b %c

tu devrais mettre un prefixe à tes variables, ça te donnerait unset %prefixe.*

/help /timer au lieu de mettre tout plein de /msg à la suite, ce qui va faire flooder le bot

/help /var au lieu de /set tout plein de variables qui ne seront pas utilisées plus tard

pour le code qu'ISoKa te propose : (déjà j'aurai plutôt dit que c'est if ($1 !isalpha))
if ($regex(%tontexte^,$[a-z]+^)) var %bon = 0
else var %bon = 1

if (%bon) correspondras au cas où %bon est correct, if (!%bon) au cas où %bon est faux

#############################
### ###
### A COPIER DANS ALIASES ###
### ###
#############################
pourquoi tu ne mets pas alias devant tes aliases ? ça permettrait de les coller dans le remote ...
(ISoKa t'a fait la remarque mais tu n'as pas encore corrigé :p)

Bref, assez mal codé, il y a beaucoup de choses à optimiser

signaler à un administrateur
Commentaire de ISoKa le 11/06/2006 12:05:35

ha oui c'est vrai isalpha etait plus adéquat, par contre pour le regex j'aurai plutot vu
if ($regex(%tontexte,/(^[a-z]+$)/i)) { var %bon 0 }
fin à vérifier...

signaler à un administrateur
Commentaire de RCA ArKanis le 11/06/2006 12:10:45

erreur de ma part, ça serait plutôt var %bon = 1 dans ce cas
et effectivement, il ne faut pas tenir compte des majuscules
if ($regex(%tontexte,/^([a-z]+)$/i)) var %bon = 1

la position des parenthèses ne change rien dans les deux cas il me semble

j'ai inversé ^ et $ rofl ^^
dur les dimanches matin :p

j'ai testé, et c'est bon :)

signaler à un administrateur
Commentaire de ISoKa le 11/06/2006 12:13:05

j'te fai confiance ;p

signaler à un administrateur
Commentaire de thomasworms le 20/06/2006 18:38:52

euh ton truc est bizarre t code comme on 1:QUIT:{ ne serve strictement a rien
je vois ke le jeu beug tres bien

(06:37:21) <Service>  PENDU (créé par Barsy)
(06:37:23) <Service>  pour avoir les scores tapez !scorpendu
(06:37:25) <Service>  début du pendu : ------
(06:37:27) <Service>  vous pouvez donner une lettre ou un mot.
(06:37:31) <Service>  Dommage, le pendu est fini. Pour relancer, tapez !pendu

donc il y a kelke petite erreur a remedié et enleve ton pseudo ds le jeu sa casse tt sa ^^ sinon sa va bonne idée de projet :)

signaler à un administrateur
Commentaire de Barsy le 21/06/2006 21:11:54

Je vois que mon script à pas mal de succès (je vous ai dit, je l'ai fait il y a deux ans et je n'avais pas de notion de programmation à l'époque, j'ai tout fait comme j'ai pu sans rien connaître). Désolé donc pour toutes les lignes en trop dans le code.

J'essaierai prochainement de vous sortir une version propre du pendu en prenant en compte toutes vos remarques

merci pour vos conseil ^^

Barsy

signaler à un administrateur
Commentaire de besky le 30/09/2007 13:34:16

ce qui serait cool c'est de lier le tout a un dictionnaire en ligne ou bien un fichier txt qui contienne la définition de tous les mots de la langue francaise pour éviter les conflit du genre "c'est pas francais ton mot" et peut-etre aussi faire un systeme de voice ou je sais pas trop quoi et un interchan serait super avec des mots diférent comme ca pas de triche

ciao j'essaie la remote de suite :D

signaler à un administrateur
Commentaire de minerbe le 24/11/2007 18:39:14 5/10

Sa aurait été mieu que tu mette la source dans une remote et que tu la poste sous zip ... 251 ligne ou il faut enlever les # devant

Exemple:

# on 1:KICK:%chandujeu: {
# if (%pendu == on && $knick == %nom && %m == off) {
# msg %chandujeu 3,15 Dommage, le pendu est fini. Pour relancer, tapez 4!pendu
# unset %pendu
# unset %lettrecite*
# unset %m
# unset

Et
# ###############################
# ### ###
# ### A COPIER DANS UN REMOTE ###
# ### ###
# ###############################

N'est pas indispensable. Tu peut l'enlever

on 1:KICK:%chandujeu: {

Hein ???
on *:join:#salon:{
Sa n'aurait pas été plus simple =o

signaler à un administrateur
Commentaire de rastaman33 le 21/06/2008 11:01:22

bonjour
je n arrive pas a le faire fonctionnais le jeu du pendu multi joueur  pourrais t on  maider svp je suis assez nul  merci  

signaler à un administrateur
Commentaire de MRVOLKANO le 18/03/2009 14:59:54

allo
jais installer le pendu comme est supposer mais je tappe !pendu mais ya rien qui marche j'aimerais qu'on m'aide S.V.P parce-que ya l'air pas pir :)

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Separer un mot [ par BEAUBRIUS ] BonjourJe cherche une commande qui permetrai de separer un mot lettre par lettre , /toknize &lt;C&gt; mot marche que si il y a un caracter c en valeur Premiere lettre de chaque mot en bold/maj [ par jfk69 ] Salut tout le mondeJ'essaie de faire un alias qui permet de faire un say et de mettre le premiere lettre de chaque mot en gras et en majusculeJ'arrive re ajouter une lettre [ par simoi ] Hum, vu que j'avais testé le pendu d'ArKan!s, il me semble que cette fonction (si c'est bien ce dont tu parles) étais présente dans son code, il gère Un code source pour Pv la personne qui envoi un mot ou un groupe de mot sur le salon general [ par romar02 ] Voila il me faudrait un code source pour Pv Toutes personnes qui disent un mots enregistrer dans le code !Par exemple : Le mot est "5 vs 5" ou "5 v 5" hotlink [ par PaTaTe ] Bonjour,J'arrive à créer un hotlink sur un mot et ça fonctionne bien mais une fois que ce mot se trouve dans une adresse internet mon hotlink prends l jeu de salon [ par flerppi ] bjr a ts, voila je recherche,un bot de jeu mirc pour mettre sur mes salons  afin que plusieurs personnes y joue, alors j'ai penser au jeu "le mot le p problème pour retourner la première lettre d'une chaîne [ par Doueez ] Bonjour, j'ai commencé à scripter en mIRC il y a seulement quelques jours et je galère un peu.J'ai créer un système qui permet de choisir sa couleur d Comment génerer un mot de passe aléatoire avec mélange de chiffre et de lettre par mirc [ par Driven ] Bonjour je me permet d'écrire à ce forum pour vous poser une question, voilà je recherche un codage mirc qui me ferait aléatoirement un mot de passe a Pub pour un jeu [ par ptifou123 ] Bonjour jai un gros probleme !jai un jeu de rapido et jaimerais qu'il dise une pub au 10 minutes et une autre au 30 ?? jai fait un truc je sias pas si


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,764 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.