Mettre un clip au niveau superieur

lilyvirus Messages postés 117 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 novembre 2008 - 17 avril 2007 à 17:36
lilyvirus Messages postés 117 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 novembre 2008 - 18 avril 2007 à 13:50
Bonjour,

quelqu'un saurait il me dire comment je fais pour mettre mon clip au dessus des autres quelque soit le niveau des autres?  j'ai essayer getNextHighestDepth mais je dois mal l'utiliser car ca ne donne pas ce que je veux, pourtant c'est un truc tout bete j'imagine.

je veux un truc du genre monClip.swapdepths(lastLevel)
mais bon je ne trouve pas

merci bien pour votre devouement :)

lily

9 réponses

cs_embalmer Messages postés 120 Date d'inscription mercredi 14 décembre 2005 Statut Membre Dernière intervention 10 décembre 2007
17 avril 2007 à 20:12
Hello,
La fonction getNextHighestDepth(); comme son nom l'indique récupère la profondeur d'un clip mais ne la modifie pas.

Essaye plutôt :

import mx.managers.DepthManager;
_level0.nomDuClip.setDepthTo(DepthManager.kTop);

Si tu as encore des problèmes consulte la doc flash concernant cette fameuse classe depthManager.

++
0
cs_Girou Messages postés 1203 Date d'inscription lundi 10 mars 2003 Statut Membre Dernière intervention 23 juillet 2009 2
18 avril 2007 à 08:31
Salut,

ou alors, en utilisant getNextHighestDepth() :
monClip.swapdepths(this.getNextHighestDepth() )

@+
0
lilyvirus Messages postés 117 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 novembre 2008
18 avril 2007 à 08:54
merci pour vos reponse je vais tester tout ca.  J'ai testé la derniere solution en mettant :
monClip.swapdepths(monClip.getNextHighestDepth() )
mais ca n'a pas donné ce que je voulais!

je vous tiens au courant merci :)
0
lilyvirus Messages postés 117 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 novembre 2008
18 avril 2007 à 09:25
bon ca ne fonctione pas, mais bon l'aide de flash n'est pas tres clair!

voila ce que je vois
DepthManager.kTop
, Propriété statique de valeur constante 201.

ca signifie que l'on met le clip au niveau 201?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lilyvirus Messages postés 117 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 novembre 2008
18 avril 2007 à 10:11
je ne comprend pas non plus pourquoi getNextHighestDepth() me renvoi toujours zero :(
0
cs_Girou Messages postés 1203 Date d'inscription lundi 10 mars 2003 Statut Membre Dernière intervention 23 juillet 2009 2
18 avril 2007 à 13:25
Si tu nous mettais un petit bout de code en expliquant bien le contexte... on y verrais sans doute plus clair

getNextHighestDepth() me renvoi toujours zero :(

Tout dépend sur quel clip / level le getNextHighestDepth() verifie la valeur 'libre' la plus haute
@+
0
lilyvirus Messages postés 117 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 novembre 2008
18 avril 2007 à 13:31
je ne suis pas sure car mon code est une vrai usine a gaz.

Bon on esssaie.

le contexte c'est un manege qui tourne (voir en ligne le site http://www.tanns.fr/)
il y a donc un swapdeth continuel sur les persos. lorsque l'on clique sur info legale (en haut a gauche) une premier fois il passe devant c'est bon mais si on vnavigue ailleur on revient sur la peg manege, information legales repasse derrière, et c'est ca qu eje cherche a corriger, c'est pour ca que jaimerai mettre ce clip info legale au dessus de tout.
voici le code que j'essai de faire fonctionner
highestOccupiedDepth = this.getNextHighestDepth(); <- j'ai essayé avec this, un clip vide, le chapeu du manege... mais rien
contenu_info_mc.getInstanceAtDepth(highestOccupiedDepth);

voici une partie du code qui anime le manege c'est surement ce qui m'empeche de faire ce que je veux avec mon clip

function scaleItem() {
    //
    var _loc2 = this._parent._parent;
    //selon que l'on ai cliqué sur un perso ou non
    if (_root.souris != "") {
        mon_clip = eval(_root.souris);
        //on arrète l'effet de blur
        blur = new flash.filters.BlurFilter(0, 0, 0);
        global_mc.onEnterFrame = applyBlur;
        // tout les elements se corrélent au clip de l'élément cliqué
        this.degrees = this.degrees+(mon_clip._x-centrepointx)/20;
    } else {
        this.degrees = this.degrees+(_loc2._xmouse-centrepointx)/20;
    }
    //rotation selon la pos en x de la souris 
    var _loc5 = this.degrees*1.745329E-002;
    var _loc6 = _loc2.radius*Math.cos(_loc5);
    //position en largeur
    var _loc4 = _loc2.radius*Math.sin(_loc5);
    var _loc3 = 1/(1-_loc4/_loc2.perspective);
    this._x = _loc6*_loc3+_loc2.centrepointx+(_loc6/2.0);
    ///ajout de _loc/2 pour la largeur;
    this._y = _loc2.centrepointy;
    this._xscale = _loc4;
    //-20; // diminution de la taille en largeur
    _root.xscale = this._xscale;
    this._yscale = _loc3*80;
    // diminution de la taille en hauteur
    this._alpha = _loc4+120;
    //passage au transparent lors du passage a un niv diff
    niveau = _loc3*10;
    if (niveau>=10) {
        niveau += 5;
    }
    this.swapDepths(niveau);
    //
    if (mon_clip != undefined) {
        if (mon_clip._x>=485 && mon_clip._x<=495) {
            //mon_clip.gotoAndPlay("boucle");
            gotoAndPlay(_root.perso);
            _root.fond_accueil_mc.gotoAndPlay("no");
            _root.fond = false;
        }
    }
    //                  
    //_root.info = this.degrees;
}
linkage_ids = ["one", "two", "three", "four", "five"];
//, "six", "seven", "eight", "nine", "ten", "eleven"];
// liste des objets du caroussel
perspective = 500;
// notion de profondeur
centrepointx = 490;
centrepointx2 = centrepointx;
// centre en x des objets
centrepointy = 348;
// centre en y des objets
radius = 100;
// largeur du caroussel  et etirement max des elements
nombrePerso = linkage_ids.length;
//recupere le nombre d'objet qui tourne
spacing = 360/nombrePerso;
// espacement
this.createEmptyMovieClip("global_mc", 1);
for (s=1; s<=nombrePerso; s++) {
    cItem_mc = global_mc.attachMovie(linkage_ids[s-1], "perso_"+s, s, {_x:-100, _y:-100});
    cItem_mc.degrees = (s-1)*spacing;
    cItem_mc.onEnterFrame = scaleItem;
}
chapeau_mc.swapDepths(20);
global_mc.attachMovie("carroussel_centre_mc", "poteau_mc", 10);
global_mc.poteau_mc._x = 417.5;
global_mc.poteau_mc._y = 75.3;
// end of for
//blur = new flash.filters.BlurFilter(0, 0, 3);
//global_mc.onEnterFrame = applyBlur;
global_mc.onEnterFrame = function() {
    info = _xmouse;
    if (_xmouse<270 || _xmouse>700) {
        _root.blur = new flash.filters.BlurFilter(0, 0, 3);
        applyBlur();
    } else {
        _root.blur = new flash.filters.BlurFilter(0, 0, 0);
        applyBlur();
    }
};
0
cs_Girou Messages postés 1203 Date d'inscription lundi 10 mars 2003 Statut Membre Dernière intervention 23 juillet 2009 2
18 avril 2007 à 13:45
contenu_info_mc.getInstanceAtDepth(highestOccupiedDepth);
getInstanceAtDepth(): Permet de déterminer si une profondeur spécifique est déjà occupée par un clip...

Pourquoi tu ne spécifies pas d'office une profondeur pour ton clip infos légales (genre 5000) histoire d'être sur qu'il est au dessus du reste ?
ou
contenu_info_mc.swapDepths(_root.getNextHighestDepth());
@+
0
lilyvirus Messages postés 117 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 novembre 2008
18 avril 2007 à 13:50
c'est justement ce qu'il y a sur le site actuel mais lorsque l'on bnavigue et que l'on revient sur cette page le manege se replace dessus, ne me demande pas pourquoi je ne comprend pas pourquoi malheureusement!
0
Rejoignez-nous