Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 33

Discussione: resize mc

  1. #1

    resize mc

    ciao a tutti, dal sito del mitico lucas motta ho scaricato un suo tutorial, la cui paternità è anche di kurtnoble.

    Potete scaricarlo qui: TUTORIAL

    io vorrei capire come posso fare per dare:

    1. un colore diverso al quadratino grigio iniziale di ogni voce.
    2. una dimensione diversa per ogni sezione che si va ad aprire.

    Grazie a chiunque mi dia una mano!
    Io_FraNo

  2. #2

  3. #3
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Un colore diverso ad ogni rettangolo glielo puoi dare usando la classe Color, agendo via actionscript su ogni clip, mentre per dare una dimesione diversa ad ogni rettangolo credo che tu debba agire sulla funzione che viene richiamata al release su ogni pulsante, probabilmente dovrai dare ad ogni pulsante due variabili per le dimensioni e poi sfruttarle all'interno dell'onRelease al posto dei valori numeri che ci sono attualmente.

  4. #4
    ehemm.. Andrea, perdonami ma è sempre il solito problema con as che conosco poco.

    La classe color me la vado a studiare, ma l'altro problema non saprei proprio da dove iniziare.

    :master: can you help me?!
    Io_FraNo

  5. #5
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Non mi ci trovo molto con quel codice, se riesco vedo di aggiustartelo, ma non te lo posso promettere.

  6. #6
    grazie.
    Io_FraNo

  7. #7
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Ho riscritto il codice, è un tantino ( ) più complesso dell'esempio, però è quasi completamente dinamico, nel senso che ti devi solo copiare il codice di sotto nel frame di un nuovo file e mettere un clip - che ti descriverò dopo il codice - dentro alla libreria.
    Questo è il codice:
    Codice PHP:
    #include "mc_tween2.as"
    import flash.filters.DropShadowFilter;
    var 
    loader:Object = new MovieClipLoader();
    loader.onLoadStart = function (t:MovieClip) {
        
    t._parent.loader_mask._width 0;
        
    t._parent.loader_mask._height items[t._parent.index].dim.height;
        
    t._parent.pct_field.alphaTo(1000.5);
    }
    loader.onLoadProgress = function (t:MovieClipbl:Numberbt:Number) {
        var 
    p:Number Math.floor((bl/bt)*100);
        
    t._parent.pct_field.label.text p+"%";
    }
    loader.onLoadComplete = function (t:MovieClip) {
        
    t.setMask(t._parent.loader_mask);
        var 
    items[t._parent.index].dim.width;
        
    t._parent.loader_mask.tween("_width",w,1,"easeOutExpo",0.2);
        
    t._parent.pct_field.alphaTo(00.5);
    }
    function 
    burnBox (t:MovieClipn:Stringl:Numberw:Numberh:Numberb:Number):MovieClip {
        var 
    m:MovieClip t.createEmptyMovieClip(nl); // return
        
    m.childCollection = []; // child collection
        
    m.childCollection.push(m.createEmptyMovieClip("background"0)); // background
        
    m.childCollection.push(m.createEmptyMovieClip("back_text"1)); // back_text
        
    m.childCollection.push(m.createEmptyMovieClip("back_content"2)); // back_content
        
    m.childCollection.push(m.attachMovie("field""title_field"3, {_x:4_y:4})); // title_field
        
    m.childCollection.push(m.createEmptyMovieClip("loader"4)); // loader
        
    m.childCollection.push(m.createEmptyMovieClip("loader_mask"5)); // loader_mask
        
    m.childCollection.push(m.attachMovie("field""pct_field"6, {_x:4_y:31_alpha:0})); // pct_field
        
    m.childCollection[0].drawRect(w+4h+310xFFFFFF); m.childCollection[0].filters = [new DropShadowFilter(5450.2)];
        
    m.childCollection[1].drawRect(w250x000000); m.childCollection[1]._x m.childCollection[1]._y 2m.childCollection[1]._alpha 0;
        
    m.childCollection[2].drawRect(whb); m.childCollection[2]._x 2m.childCollection[2]._y 29;
        
    m.childCollection[3].label.text n.toUpperCase();
        
    m.childCollection[4]._x 2m.childCollection[4]._y 29;
        
    m.childCollection[5].drawRect(wh0); m.childCollection[5]._x 2m.childCollection[5]._y 29m.childCollection[5]._width 0;
        return 
    m;
    }
    MovieClip.prototype.drawRect = function (w:Numberh:Numberc:Color) {
        
    this.beginFill(c100);
        
    this.lineTo(w0);
        
    this.lineTo(wh);
        
    this.lineTo(0h);
        
    this.lineTo(00);
        
    this.endFill();
    }
    var 
    wdt:Number 75;
    var 
    hgt:Number 70;
    var 
    items:Array = [];
    items.push({mcburnBox(this"MOTTA"1wdthgt0xCCCCCC), ext"ext01.swf"dim: {width300height:200}});
    items.push({mcburnBox(this"RINALDI"2wdthgt0xCCCCCC), ext"ext02.swf"dim: {width350height:220}});
    items.push({mcburnBox(this"TVERDE"3wdthgt0xCCCCCC), ext"ext03.swf"dim: {width200height:400}});
    items.push({mcburnBox(this"TRICOLOR"4wdthgt0xCCCCCC), ext"ext04.swf"dim: {width400height:500}});
    items[0].mc._x 10;
    for (var 
    i:Number=0i<items.lengthi++) {
        
    items[i].mc._y 10;
        
    items[i].mc.index i;
        
    items[i].mc.onRollOver = function () {
            
    this.childCollection[0].tween(["_width","_height"],[wdt+24,hgt+41],0.3,"easeOutBack");
            
    this.childCollection[2].tween(["_width","_height"],[wdt+20,hgt+10],0.3,"easeOutBack")
            
    this.childCollection[1].tween("_width",wdt+20,0.3,"easeOutBack")
            
    this.childCollection[1].alphaTo(100,0.3);
            
    this.childCollection[3].label.colorTo("0xFFFFFF",0.3,"easeOutExpo")
        }
        
    items[i].mc.onRollOut = function () {
            
    this.childCollection[0].tween(["_width","_height"],[wdt+4,hgt+31],0.5,"easeOutBack");
            
    this.childCollection[2].tween(["_width","_height"],[wdt,hgt],0.5,"easeOutBack")
            
    this.childCollection[1].tween("_width",wdt,0.5,"easeOutBack")
            
    this.childCollection[1].alphaTo(0,0.5);
            
    this.childCollection[3].label.colorTo("0x000000",0.5,"easeOutExpo")
        }
        
    items[i].mc.onRelease = function () {
            
    this.enabled false;
            var 
    items[this.index].dim.width;
            var 
    items[this.index].dim.height;
            var 
    items[this.index].ext;
            
    this.childCollection[0].tween(["_width","_height"],[w+4,h+31],0.5,"easeOutBack");
            
    this.childCollection[2].tween(["_width","_height"],[wh],0.5,"easeOutBack")
            
    this.childCollection[1].tween("_width",w,0.5,"easeOutBack")
            
    this.childCollection[1].alphaTo(100,0.5);
            
    this.childCollection[3].label.colorTo("0xFFFFFF",0.5,"easeOutExpo");
            
    loader.loadClip(uthis.childCollection[4]);
            
    resetAll(this.index);
        }
    }
    function 
    resetAll (index) {
        for (var 
    j:Number=0j<items.lengthj++) {
            if (
    != index) {
                
    items[j].mc.enabled true;
                
    items[j].mc.onRollOut();
                
    loader.unloadClip(items[j].mc.childCollection[4]);
                
    items[j].mc.childCollection[5]._width 0;
            }
        }
    }
    this.onEnterFrame = function() {
        for (var 
    k:Number=1k<items.lengthk++) {
            var 
    k-1;
            
    items[k].mc._x items[l].mc._x+items[l].mc.childCollection[0]._width+10;
        }

    Il clip in libreria ha un textfield dinamico dentro, con nome "label" e una riga di codice nel primo ed unico frame: this.label.autoSize = "left";
    Il font è incorporato nel textfield ed ho utilizzato lo stesso del file originale (kroeger_06_55).
    Il clip è presente solo in libreria e concatenato come "field".
    Ho mantenuto le Mc Tween per fare le transizioni come nel file originale.
    Le righe di controllo per il colore da far assumere allo sfondo e per dichiarare le dimensioni iniziali e finali dello stesso sono queste:

    Codice PHP:
    items.push({mcburnBox(this"MOTTA"1wdthgt0xCCCCCC), ext"ext01.swf"dim: {width300height:200}});
    items.push({mcburnBox(this"RINALDI"2wdthgt0xCCCCCC), ext"ext02.swf"dim: {width350height:220}});
    items.push({mcburnBox(this"TVERDE"3wdthgt0xCCCCCC), ext"ext03.swf"dim: {width200height:400}});
    items.push({mcburnBox(this"TRICOLOR"4wdthgt0xCCCCCC), ext"ext04.swf"dim: {width400height:500}}); 
    Ogni riga aggiunta creerà un nuovo pulsante a cui potrai dare le varie caratteristiche (dovrebbero essere facilmente comprensibili guardando il file originale).
    Le variabili poco sopra a queste righe (wdt e hgt) determinano le dimensioni iniziali di ogni "box" (escluso del titolo che ha una dimensione fissa, in pratica la dimensione è riferita solo al box colorato).
    Nelle righe proposte, al posto dei 0xCCCCCC tutti uguali, potrai scegliere il colore RGB che preferisci e automaticamente i clip verranno creati con quel colore (sempre solo il box interno).

  8. #8
    grazie, sei spaventoso!

    ti giuro, non so come ringraziarti.

    mitico
    Io_FraNo

  9. #9
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da Io_FraNo
    grazie, sei spaventoso!
    Spero in senso buono
    Comunque non è che ho fatto chissà cosa, ho copiato praticamente tutto dal codice originale, tranne per la creazione dei box che ho fatto disegnare ad actionscript, così ottieni le due possibilità che prima non avevi (o sarebbe stato più macchinoso averle).

  10. #10
    CERTO CHE ERA NEL SENSO BUONO.

    GRAZIE
    GRAZIE
    GRAZIE
    Io_FraNo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.