begin process at 2012 05 27 01:45:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Flash

 > 

Archives

 > 

ActionScript

 > 

jeux de mots avec flash


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

jeux de mots avec flash

lundi 7 février 2005 à 13:14:51 | jeux de mots avec flash

ezo

bonjour a tous
je suis en train de m'initier a la programmation sous flash en faisant des petits  jeux de lettres pour mon amie qui est orthophoniste.
un des jeux est de masquer des mots de 2 (jusqu'a 9) lettres. j'ai mis au point un petit moteur
qui me permet  de le faire mais j'en suis vraiment pas satisfait, il est lourd et de plus il ne respecte pas la disposition du texte d'origine, par ex :

Le chat est dans la cuisine.

Il ne pense qu'a manger !

devient avec la fonction masquer les mot de 2 lettres:

_ _  chat est dans  _ _  cuisine .    _ _   _ _  pense  _ _  ' a manger  _  chat est dans  _ _  cuisine .    _ _   _ _  pense  _ _  ' a manger

ca m'a bouffer le paragraphe et virer le point d'exclamation, pas top tout ca.

voila!ce que j'ai reussi a faire atteint les limites de mes capacités actuelles et je n'arrive pas a aller plus loin.
si vous avez des idées elles seront les bienvenues.

merci
 


lundi 7 février 2005 à 13:56:13 | Re : jeux de mots avec flash

Edwige31

Membre Club
Salut,
Je te donnes mon avis ...
J'aurais pris le problème dans l'autre sens ...
Tu fais un trait correspondant aux lettres manquantes dans ta phrase (un clip représentant : _ )
Tu en disposes sur un clip A correspondant à la phrase 1.
Tu mets toutes les lettres de ta phrase et tu met un masque uniquement sur les lettres visibles.
Ensuite lors de l'affichage du résulatt, tu n'as plus qu'à ajouter un masque sur les lettres cachées et faire disparaître les _.

Voilà comment je prendrais le problème ... et tu aurais quelque chose de"light"

Edwige
lundi 7 février 2005 à 14:05:59 | Re : jeux de mots avec flash

ezo

ce serait effectivement la bonne solution si le texte reste statique mais la ce n'est pas le cas .
travaillant avec des enfants elle a besoin de taper son texte comme ca lui vient, donc en fait la fonction s'applique sur du texte de saisie.
merci pour ta reponse
lundi 7 février 2005 à 18:58:27 | Re : jeux de mots avec flash

WhiteMagus

Membre Club
Tu peux utiliser un split pour scinder ta chaîne en différentes phrases pour chaque ligne.
Puis tu appliques ton code. Mais je t'avoue que c'est plutôt obscur ton expliqation. Si tu pouvais mettre le code en l
igne ça serait pas, on pourait plus t'aider.
@+ !


À tout problème réside une solution. Si il n'y a pas de solution, c'est qu'il y a un problème.
lundi 7 février 2005 à 21:11:50 | Re : jeux de mots avec flash

ezo

ok je vais essayer d'etre un peu plus clair...
le programme dans son concept est assez simple, mon amie tape le texte a faire travailler devant l'enfant puis ensuite masque les mots de 2 lettres ou plus , afin que l'enfant puisse reconstituer le
texte avec les mots manquants.
  je vous copie la fonction que j'ai mis quelques jours a mettre au point et qui est un peu lourdingue parce que je suis un peu novice en la matiere, donc ne soyez pas trop dur avec moi.

masque = function (remplace,nombre) {
    if (_root.entree.text !== "") {
        // fonction 2 mots
        // trouve retour
        espace = "";
        txt = _root.entree.text;
        tab = txt.split("\r");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                espace = espace+" ";
            } else {
                espace = espace+" "+tab[n];
            }
        }
        // trouve point
        point = "";
        tab = espace.split(".");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                point = point+" ";
            } else {
                point = point+" . "+tab[n];
            }
        }
        // trouve virgule
        virgule = "";
        tab = point.split(",");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                virgule = virgule+" ";
            } else {
                virgule = virgule+" , "+tab[n];
            }
        }
        // trouve pointvirgule
        pointvirgule = "";
        tab = virgule.split(";");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                pointvirgule = pointvirgule+" ";
            } else {
                pointvirgule = pointvirgule+" ; "+tab[n];
            }
        }
        // trouve deuxpoint
        deuxpoint = "";
        tab = pointvirgule.split(":");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                deuxpoint = deuxpoint+" ";
            } else {
                deuxpoint = deuxpoint+" : "+tab[n];
            }
        }
        // trouve exclamation
        exclamation = "";
        tab = deuxpoint.split("!");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                exclamation = exclamation+" ";
            } else {
                exclamation = exclamation+" ! "+tab[n];
            }
        }
        // trouve interrogation
        interrogation = "";
        tab = exclamation.split("?");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                interrogation = interrogation+" ";
            } else {
                interrogation = interrogation+" ? "+tab[n];
            }
        }
        // trouve apostrophe
        apostrophe = "";
        tab = interrogation.split("'");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                apostrophe = apostrophe+" ";
            } else {
                apostrophe = apostrophe+" ' "+tab[n];
            }
        }
        // trouve tiret
        tiret = "";
        tab = apostrophe.split("-");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                tiret = tiret+" ";
            } else {
                tiret = tiret+" - "+tab[n];
            }
        }
        // trouve parenthese
        parenthese = "";
        tab = tiret.split("(");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                parenthese = parenthese+" ";
            } else {
                parenthese = parenthese+" ( "+tab[n];
            }
        }
        // trouve parenthesed
        parenthesed = "";
        tab = parenthese.split(")");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                parenthesed = parenthesed+" ";
            } else {
                parenthesed = parenthesed+" ) "+tab[n];
            }
        }
        // trouve guillemet
        guillemet = "";
        tab = parenthesed.split("\"");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                guillemet = guillemet+" ";
            } else {
                guillemet = guillemet+" \" "+tab[n];
            }
        }
        // trouve guillemets
        guillemets = "";
        tab = guillemet.split("&");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                guillemets = guillemets+" ";
            } else {
                guillemets = guillemets+" & "+tab[n];
            }
        }
        // trouve pourcent
        pourcent = "";
        tab = guillemets.split("%");
        for (n=0; n<tab.length; n++) {
            if (tab[n] == "") {
                pourcent = pourcent+" ";
            } else {
                pourcent = pourcent+" % "+tab[n];
            }
        }
        tab = pourcent.split(" ");
        for (var i = 0; i<tab.length; i++) {
            if (tab[i].length == nombre) {
                tab[i] = remplace;
            }
        }
        _root.entree.text = tab.join(" ");
        // reinialise point
        var enlvpoint = " . ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise virgule
        var enlvpoint = " , ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise pointvirgule
        var enlvpoint = " ; ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise pointvirgule
        var enlvpoint = " : ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise pointvirgule
        var enlvpoint = " ! ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise pointvirgule
        var enlvpoint = " ? ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise pointvirgule
        var enlvpoint = " ' ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise pointvirgule
        var enlvpoint = " - ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise pointvirgule
        var enlvpoint = " ( ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise pointvirgule
        var enlvpoint = " ) ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise pointvirgule
        var enlvpoint = " \" ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise pointvirgule
        var enlvpoint = " & ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
        // reinitialise pointvirgule
        var enlvpoint = " % ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
       
        var enlvpoint = " ";
        var replace = "";
        var pos = _root.entree.text.indexOf(enlvpoint);
        var debpoint = _root.entree.text.substr(0, pos);
        var finpoint = _root.entree.text.substr(pos+enlvpoint.length);
        _root.entree.text = debpoint+replace+finpoint;
    }
   
}
ouff!!
voila le pavé !! ca marche pour ce qui est de trouver et de remplacer mais c'est long et la mise en page du texte d'origine n'est pas respectée.
j'espere que c'est un peu plus clair.
mercredi 9 février 2005 à 23:22:57 | Re : jeux de mots avec flash

horyatus

En effet c'est un peu "bourrin" ta methode ! J'ai réfléchi à un truc plus simple, à toi de me dire si ca te convient:
(je suppose que remplace correspond au caractère à mettre lorsque qu'un mot doit etre caché, soit _ ici)

masque = function (remplace,nombre)
{
        var taille=0; //taille d'un mot
        var i,j;
         var chaine:Array=new Array();
        for (i=0;i<
_root.entree.text.length;i++)
        {
             //transforme la chaine en tableau
            chaine[i]=
_root.entree.text.charAt(i);
             //test si c'est un caractère "alphabetique" de a à z et de A à Z
            if ((chaine[i]>='a' && chaine[i]<='z')||(chaine[i]>='A' && chaine[i]<='Z'))
                taille++;
            else
            {
                if (taille==nombre)
                {
                   //remplace
                    for (j=taille;j>0;j--)
                        chaine[i-j]=remplace;
                }
                taille=0;
            }
        }
          //refait un test si la chaine se finie par un mot a cacher
        if (taille==nombre)
        {
            for (j=taille;j>0;j--)
                chaine[i-j]=remplace;
        }
         
_root.entree.text="";
          //on remet dans le text de depart
        for (i=0;i<chaine.length;i++)
          
_root.entree.text+=chaine[i];
}


voila normalement ca doit etre bcp bcp plus léger que ton
code.

Hory

mercredi 9 février 2005 à 23:28:46 | Re : jeux de mots avec flash

horyatus

....dsl pour la taille et l'indentation, j'ai pas fait gaffe à la taille !
jeudi 10 février 2005 à 09:28:13 | Re : jeux de mots avec flash

ezo


en effet c'est beaucoup plus leger !!
je vais le regarder pour essayer de le comprendre un peu plus, je me disais bien qu'il y avait surement une approche au niveaux des tableaux mais je manque de vocabulaire actionscript pour formuler tout ca.
bon j'epluche ton code, je le test et je te tiens au courant

merci pour ton aide

@+

jeudi 10 février 2005 à 11:25:45 | Re : jeux de mots avec flash

ezo

ca marche nickel !!!
la saisie du texte est respectée, et de plus j'ai appris pas mal de choses en essayant de comprendre ton code, il ne me reste plus qu'a lui faire prendre en compte les lettres avec des accents et ca devrait rouler.
encore merci

eric
jeudi 10 février 2005 à 11:58:58 | Re : jeux de mots avec flash

horyatus

Ok c cool ^^

Pour ce qui est des lettres accentuées il faut que tu les ajoutes à la condition comme ca:
if ((chaine[i]>='a' && chaine[i]<='z')||(chaine[i]>='A' && chaine[i]<='Z')||'é'||'è')
et normalement ca devrait rouler !

Hory

1 2

Cette discussion est classée dans : flash, mots, jeux, lettres, chat


Répondre à ce message

Sujets en rapport avec ce message

creation d'un jeux flash pluie de mots [ par micker ] salut à tous je cherche à realiser un jeux en flash qui ressemblerais à ca :http://cyberclub.henouville 3D Chat [ par nuno11 ] Bonjour, je me lance dans la programation d'un tchatte en 3D sous flash. J'aimerais savoir si quelqu'un connaitrait un site ou je pourai apprendre à s chat visuel en flash [ par _R2_ ] Bonjour, Je connais les sources d'un chat en flash mais, je n'arrive pas à créer un chat visuel (chat avec carte de l'environnement et apparition de p jeux flash et php ! ! ! !! HELP ! ! ! ! [ par wneon ] je voudré savoir comment on doi construire un jeux flash avec gains pour un site de jeux ...juste une explication qui résume en kelkes lignes...si c l un petit site de jeux en flash [ par stachus ] Salut a tous, je voulais juste vous montrer mon tous nouveau site, il est en version bêta, et savoir ce que vous en pensez, si il fonctionne avec votr Développement jeux Flash : Recherche Agences spécialisées [ par titeuf444 ] Bonjour,Société spécialisée dans le développement de sites Web dynamiques, nous cherchons à sous-traiter une partie de nos activités auprès d'agences creer un launcher avec flash [ par kalunaleon ] Salut a tous  je me poser un question est possible de creer un launcher avec flash .car en faite j'aimerais faire en sort qu'avant chaque demarage du Modif de Chat [ par michmichman ] Bon voila j'ais trouvé sur ce site un super chat en flash-php-mysql je suis tout juste bon à le mettre en place et changer les graphisme, quelqun sera Débutant ayant besoin de quelques précisions... [ par scoal ] Bonjour à tous. J'ai fait un peu de flash, mais c'est des animations, des boutons, etc... J'aimerai commencer à utiliser, ou mieux à consevoir, des s inserer des mots clés sous flash mx 2004 [ par conceptpc ] Bonjour, Je me suis créé un petit site avec flash mx 2004 mais je ne sais pas comment je dois faire pour ajouter des mots clés pour que mon site soit


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 9,142 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales