Mélangeur de mot

Soyez le premier à donner votre avis sur cette source.

Snippet vu 11 972 fois - Téléchargée 17 fois

Contenu du snippet

C'est une fonction que j'utilise pour un plus gros projet (d'où les noms des var %devinette* vous étonnez pas), je la fais partager.
Elle mélange un mot, bizarrement j'ai eu énormément de bug au niveau de:
$instok(%devinettemotok,$gettok(%devinettemot,%b,32),$rand(1,5),32)
quand je voulais faire des trucs plus compliqué niveau mélange et j'ai trouvé qu'avec un petit $rand(1,5) pas trop gros (style pas $rand(1,99)) ça marchait toujours.
Si qu'unlqun pouvait m'expliquer pourquoi.

Source / Exemple :


;Systême de mélangeur de mot par Kentix
;Utilisation: être op puis !melangermot UnMot

;Séparation char par char d'un mot qu'on stocke dans %devinettemot
alias separermot {
  unset %devinettemot
  set %devinettereponse $$1
  var %a = $$1, %b = $len(%a), %c = 1
  while (%c <= %b) {
    set %devinettemot $instok(%devinettemot, $right($left(%a,%c),1), %b, 32)
    inc %c
  }
} 

;On mélange les chars, on stocke le mot obtenu dans %devinettemotok
alias melangermot {
  unset %devinettemotok
  var %a = $numtok(%devinettemot,32), %b = 1
  while (%b <= %a) {
    set %devinettemotok $instok(%devinettemotok,$gettok(%devinettemot,%b,32),$rand(1,5),32)
    inc %b
  }
}

;On regroupe les chars mélangés dans la var %devinettemotrassembler
alias rassemblermot {
  unset %devinettemotrassembler
  var %a = $numtok(%devinettemotok,32), %b = 1
  while (%b <= %a) {
    set %devinettemotrassembler %devinettemotrassembler $+ $gettok(%devinettemotok,%b,32)
    inc %b
  }
}
on @*:text:!melangermot*:#:{
  separermot $$2
  melangermot
  rassemblermot
  msg $chan %devinettemotrassembler
}

A voir également

Ajouter un commentaire Commentaires
Messages postés
29
Date d'inscription
samedi 12 janvier 2008
Statut
Membre
Dernière intervention
23 mars 2008

idem...mm Pour ce code ca peut aller au forum mieux
pour l'améliorer et le corriger .
Messages postés
1123
Date d'inscription
mardi 8 janvier 2002
Statut
Modérateur
Dernière intervention
21 avril 2009
1
Alors du coup c'est moi qui m'excuse de mal avoir compris la chose aussi :)
D'apres vos remarques, le code n'a apparement pas sa place ici en l'état actuel.
Je laisse à l'auteur le choix de la correction (modifier le fait de ne pas être op entre autre) sans quoi je supprimerai ce code.
Messages postés
1466
Date d'inscription
mardi 20 février 2007
Statut
Membre
Dernière intervention
7 février 2011
1
euh.. ué exact ^^
ce code est un mélangeur de mots, donc utilisable par tous, donc je vois pas l'intérêt qu'il faille être opérateur (du salon irc ^^) pour pouvoir l'utiliser.
... j'essayerai d'être plus précis la prochaine fois.
Messages postés
1287
Date d'inscription
mercredi 21 avril 2004
Statut
Membre
Dernière intervention
21 février 2009

quand il a parlé de "op", il voulait dire "opérateur" en désignant le fait d'avoir des accès suffisant pour pouvoir bannir ou kicker quelqu'un d'un salon. Il ne parlait pas des administrateurs de ce site :p

on @*:text:!melangermot*:#:{

le @ signifie :
if ($me isop $chan) <=> si le bot est opérateur

ne t'en fais pas, il n'a aucunement critiqué le travail de vous autres, administrateurs :p
Messages postés
1123
Date d'inscription
mardi 8 janvier 2002
Statut
Modérateur
Dernière intervention
21 avril 2009
1
Ce "truc" peu intéresser d'autres personnes.
Mais ta réflexion sur le fait d'être op à toute son utilité (un peu comme ton commentaire...) : J'ai été alerté de ce code mais je ne programme pas (ou plus) en "langage irc" donc je suis incapable de justifier de la qualité de ce code, je fait juste en sorte de laisser quelque chose de fonctionnel si c'est le cas.

Depuis quand un op est censé maitriser tous les langages proposés par CS ?
Afficher les 11 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (cs_Kentix)