IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

[FLASH MX2004] Obtenir un effet "grattage" ?


Sujet :

Flash

  1. #1
    Membre habitué
    Inscrit en
    Octobre 2004
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 352
    Points : 136
    Points
    136
    Par défaut [FLASH MX2004] Obtenir un effet "grattage" ?
    Bonjour,

    J'aimerai créer 2 calques, celui au premier plan devra pouvoir s'éffacer lorsque l'utilisateur cliquera-déplacera la souris pour laisser apparaitre celui au second plan, est-ce que c'est possible ?

    J'ai penser à la fonction alpha, mais je ne sais pas du tout l'associé à la souris, aidez-moi s'il vous plait.

    merci

  2. #2
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Salut,

    J'ai pas trop reflechi à la question mais je passerai plutôt par un masque dans lequel "je dessinerai" à chaque mouvement de la souris.
    Cela aurai pour effet de faire appaitre le clip masqué
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  3. #3
    Membre habitué
    Inscrit en
    Octobre 2004
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 352
    Points : 136
    Points
    136
    Par défaut
    Hum, idée interressante, à développé !
    en fait, je crée un calque bouton (celui qu'on devra graté) je le met au premier plan, j'ai une image en dessous, et quand je met la propriété masque au calque à gratter il disparait... j'ai du oublier quelque chose ! En fait c'est le fait de "dessiné" sur le calque que je sais pas faire

    Pour le moment j'ai simplement réussis à faire disparaitre un calque progressivement en lui affectant une variable dégressive à sa propriété alpha lorsque la souris clique dessus... mais c'est pas top...

  4. #4
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Citation Envoyé par Ticoche
    Hum, idée interressante, à développé !
    Bon voilà un truc vite fait

    Tu crées un claque "Zone à gratter" dans lequel tu mets la zone à gratter
    Tu crées un calque "Ticket" dans lequel tu mets ton ticket complétement gratté
    Tu crées un calque "Masque".
    Tu vas dans Insertion/Nouveau symbole, tu sélectionnes clip puis tu fais créer (tu le nommes "mask" par exemple).
    Tu Drag&Drop "mask" sur le Calque "Masque", tu le mets en 0,0
    Tu le nommes "mask_mc"
    Tu crées un objet "mask_object" qui correspond au "grattage" (ex un rond)
    Tu vas dans le bibliothèque (ctrl + L) tu sélectionnes "mask_object", clic droit/Liaison puis tu sélectionnes Exporter pour actionscript
    Tu crées un calque "ActionScript"
    Dans celui-ci tu mets :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    var modeGrattage:Boolean = false;
    var cpt:Number = 0;
     
    _root.onMouseDown = function(){
       modeGrattage = true;
    };
    _root.onMouseUp = function(){
       modeGrattage = false;
    };
    _root.onMouseMove = function(){
       if(modeGrattage){
          var mc:MovieClip = mask_mc.attachMovie("mask_object",cpt.toString(),mask_mc.getNextHighestDepth());
          mc._x = _root._xmouse;
          mc._y = _root._ymouse;
          cpt++;
       }
    };
    Structure des calques :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    |- ActionScript
    |- Masque
    |---- Ticket
    |- Zone a gratter
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  5. #5
    Membre habitué
    Inscrit en
    Octobre 2004
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 352
    Points : 136
    Points
    136
    Par défaut
    J'ai tout compris... sauf :

    Citation Envoyé par freegreg
    Tu Drag&Drop "mask" sur le Calque "Masque", tu le mets en 0,0
    Tu le nommes "mask_mc"
    quand je créé un objet "mask_object" (mon rond) il reste sur un calque où je l'ai créer, c'est pas bon ?

    merci pour ton aide

  6. #6
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Citation Envoyé par Ticoche
    J'ai tout compris... sauf :

    Citation Envoyé par freegreg
    Tu Drag&Drop "mask" sur le Calque "Masque", tu le mets en 0,0
    Tu le nommes "mask_mc"
    quand je créé un objet "mask_object" (mon rond) il reste sur un calque où je l'ai créer, c'est pas bon ?

    merci pour ton aide
    mask_mc et mask_object ne sont pas les mêmes objets.
    mask_mc est au début un clip vide. Dans ce clip, on ajouteras des instances de mask_object qui au fur et à mesure vont remplir mask_mc et rendre de ce fait ton ticket visible.
    Au départ, tu ne dois pas avoir d'instance de mask_objet sur ta scene. Si tu en as une, supprimes la de ta scene!
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  7. #7
    Membre habitué
    Inscrit en
    Octobre 2004
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 352
    Points : 136
    Points
    136
    Par défaut
    Citation Envoyé par freegreg
    Tu Drag&Drop "mask" sur le Calque "Masque", tu le mets en 0,0
    Drag&Drop ; en 0,0

    moi toujours pas comprendre !!! snifff, je suis nul

    j'ai pas compris l'histoire du mask_mc aussi ?

    pourquoi tu as mis
    --- Ticket ? (alors que les autres calques n'ont qu'un "-")

    "mask_object" est un clip, graphic, bouton ???

    INFO : voilà où j'en suis : quand je test, j'arrive à dessiné par petit cercle vert, mais ça supprime rien !
    NEW : Maintenant j'arrive à supprimé la zone à gratter, MAIS je dessine toujours par petit cercle noire (ce coup ci)

  8. #8
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Citation Envoyé par Ticoche
    Citation Envoyé par freegreg
    Tu Drag&Drop "mask" sur le Calque "Masque", tu le mets en 0,0
    Drag&Drop ; en 0,0

    moi toujours pas comprendre !!! snifff, je suis nul

    j'ai pas compris l'histoire du mask_mc aussi ?
    J'avais pas compris que c'était ma phrase que tu n'avais pas compris

    Dans ta bibliothèque, tu as un objet "mask".
    Tu cliques dessus, tu le glisses (bouton toujours appuyé) sur ta scène puis tu relaches le bouton!
    Après tu vas dans le panneau propriété, et tu mets x=0 et y=0
    0,0 se sont les coordonnées de ton objet "mask".
    Dans ce même panneau, ton occurence de "mask" n'a pas de nom. Tu lui mets alors "mask_mc"

    J'espère que c'est plus clair


    Allez, si tu es sage cad: si tu édites ( ) ce message et que tu rajoutes le tag de la version Flash dans le titre, alors je te fais un fla ce soir
    Ps: Même si tu as compris, tu peux le faire
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  9. #9
    Membre habitué
    Inscrit en
    Octobre 2004
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 352
    Points : 136
    Points
    136
    Par défaut
    Heu, oui, j'ai compris l'idée, il faut faire une zone à gratter et tout et tout, mais j'ai pas compris comment le faire

    Sinon, je crois que j'ai été gentil
    et que même je vais continuer à essayé de comprendre maintenant que tes phrases sont plus claires, mais un tit fla ne serai pas de refu, merci en tout cas

  10. #10
    Membre habitué
    Inscrit en
    Octobre 2004
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 352
    Points : 136
    Points
    136
    Par défaut
    Actuellement j'arrive à effacer la zone à gratter, mais aussi ce qu'il y a dessous, et aussi... ce qu'il y a à coté !

    en gros j'ai créer une gomme lol

    Par contre, même si j'arrive à avoir le résultat voulu, je comprend pas le code dans ActionScript, il doit être écrit "de tête" ?

  11. #11
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Citation Envoyé par Ticoche
    Actuellement j'arrive à effacer la zone à gratter, mais aussi ce qu'il y a dessous, et aussi... ce qu'il y a à coté !

    en gros j'ai créer une gomme lol

    Par contre, même si j'arrive à avoir le résultat voulu, je comprend pas le code dans ActionScript, il doit être écrit "de tête" ?
    En effet, c'était de tête!
    Donc j'ai dis une petite connerie
    mask_mc ne doit pas être vide au départ sinon cela ne marche pas!
    Sinon c'est bon!

    Comme promis le swf et le fla (avec un petit bonus )
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  12. #12
    Nouveau Candidat au Club
    Inscrit en
    Novembre 2004
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    auriez vous le même fla mais pour une version flash MX Version 6.0

    Merci

  13. #13
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Salut,

    voilà le fla version MX
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  14. #14
    Membre habitué
    Inscrit en
    Octobre 2004
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 352
    Points : 136
    Points
    136
    Par défaut
    Il est super le résultat, mais y'a aucun moyen de simplifié le code ? C'est bien l'idée d'inseré aléatoirement des cercles ou des croix, c'était le but final que je me suis fixé...
    par contre tu as créé un bouton play again dont tu ne te sert pas
    Bon, ça te dérange pas si j'utilise ton prog, je change les graph et je dis que c'est moi qui l'ai fait ?
    bon, faudrai que j'arrive à le faire de A à Z sans aide maintenant... c'est pas gagné !
    merci

  15. #15
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Citation Envoyé par Ticoche
    Il est super le résultat, mais y'a aucun moyen de simplifié le code ? C'est bien l'idée d'inseré aléatoirement des cercles ou des croix, c'était le but final que je me suis fixé...
    par contre tu as créé un bouton play again dont tu ne te sert pas
    Bon, ça te dérange pas si j'utilise ton prog, je change les graph et je dis que c'est moi qui l'ai fait ?
    bon, faudrai que j'arrive à le faire de A à Z sans aide maintenant... c'est pas gagné !
    merci
    Simplifier le code : il faut voir ce que tu entends par simplifier
    - Si c'est rendre moins générique, surement!
    - Si c'est rendre plus générique, surement aussi
    Bref précise à quel niveau, tu voudrais simplifier car pour moi il n'y a pas grand chose de compliqué (En même temps, c'est moi qui l'ai fait dons cela serait curieux ).
    au début, je voulais partir avec des classes ..., puis je me suis dit, faut déconner non plus!

    Pour le bouton playAgain, j'étais parti pour en faire un. J'ai eu un petit bug au niveau du masque, et vu l'heure tardive, j'ai abandonné

    Sinon j'ai dû oublié de mettre le copyright ??? Non, je déconne
    Fais-en ce que tu veux! Mais bon, je ne sais pas quel usage tu veux en faire mais il y a encore un peu de boulot :
    - Bouton nouvelle partie (indispensable à mon avis, sauf si tu l'affiche dans une popup)
    - Savoir si on a gagné ou pas
    - ... (Il doit y en avoir d'autre)
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  16. #16
    Membre habitué
    Inscrit en
    Octobre 2004
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 352
    Points : 136
    Points
    136
    Par défaut
    pour savoir si on a gagné ou pas il faut lui faire comprendre toute les possibilité (horizontale, diagonale, verticale) et verifié qu'on à 3 fois le même clip... peut etre pas difficile, mais long à mon avis !

  17. #17
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Oui par exemple, mais il doit y avoir d'autres moyens.
    Il faudrait réfléchir
    Peut-etre utiliser la somme des valeurs des cases:
    Si la somme (ligne ou colonne ou diagonale) égale 0 => Croix ont gagné, somme égale 1 => Cercle gagné (Ou l'inverse, je me rappelle plus ce que j'ai fait !)
    A approfondir
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  18. #18
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 8
    Points : 7
    Points
    7
    Par défaut petite precision svp
    Bonjour j aimerai avoir une petite precision pour ce sujet , j ai une animation a faire un peu similaire

    mais pour ma part j aimerai non pas que la zone "grattage" apparaissent via l action de la souris mais plutot qu elle se decouvre au moyen d un masque guidée qui laissera visible la zone ou il est passé auparavant

    j ai regarder un peu l action script en essayant de comprendre mais pour ma partie apres je perd les pedales

    Si quelqu un pourrait me donner un petit coup de pouce pour le script se serai sympa

    merci d avance

  19. #19
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1
    Points : 1
    Points
    1
    Par défaut apprendre
    Bonjour moi aussi je voudrais savoir comment faire un gratteux complet....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [FLASH MX2004 Pro] Textes dynamiques et effets
    Par djo.mos dans le forum Flash
    Réponses: 1
    Dernier message: 25/09/2005, 12h04
  2. [FLASH MX2004] Effet sur photos
    Par themis121 dans le forum Flash
    Réponses: 5
    Dernier message: 06/05/2005, 16h52
  3. [FLASH MX2004] Effet d'apparition d'un objet
    Par ajor dans le forum Flash
    Réponses: 3
    Dernier message: 18/01/2005, 15h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo