Pagina 2 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 31

Discussione: problema di concetto

  1. #11
    proviamo così...
    Allora, cominciamo dal mc che fungerà da maschera.
    Sul primo frame avremo un fotogramma chiave, con un bello stop().
    Più avanti ci sarà un altro fotogramma chiave, nella posizione finale in cui la maschera coprirà
    tutto il soggetto ed un altro stop().
    Tra i due KF, naturalmente, ci sarà l'interpolazione.
    Più avanti ancora un altro KF, con la maschera nella posizione di partenza, ma SENZA stop().
    In questo modo il moviclip tornerà al 1° frame e lì si fermerà.
    Anche tra il 2° KF ed il terzo ci sarà l'interpolazione.

    Fatto il movieclip, lo trasciniamo sullo stage, nella posizione desiderata, e gli attribuiamo un
    nome istanza (con molta fantasia: masklip)

    Poi avremo un mc "vuoto" che servirà da "contenitore" per il filmati esterni da caricare tramite
    loadMovie: gli attribuiamo nome istanza = recipiente.
    Questo è il movieclip che dovrà essere mascherato.

    Sul 1° frame della timeline principale definiamo le variabili che ci servono:
    codice:
    aperto = false;	// indica se la maschera è aperta o chiusa
    recipiente.setMask(masklip);	// maschero il mc recipiente
    // definiamo ora la funzione (una per tutti) che gestirà:
    // chiusura maschera (se aperta)
    // caricamento filmato
    function caricamovie (id) {
    	if (aperto) {
    	    aperto = false;
    	    masklip.play();	// se mask aperta, la chiudo
    	}
    	recipiente.loadMovie(id);
    }
    Ora i pulsanti:
    codice:
    on (release) {
    	caricamovie("filmato1.swf") 	// per il pulsante 1
    }
    on (release) {
    	caricamovie("filmato2.swf") 	// per il pulsante 2
    }
    ... e così via...
    rimane da gestire l'apertura della maschera una volta che il caricamento è completato
    (se lo facessimo prima non vedremmo nessun effetto)
    Possiamo associare un'istruzione pratica (anche se un po' obsoleta) al movieclip "recipiente":
    codice:
    onClipEvent (data) {
    	if (!aperto) {
    	    aperto = true;
    	    masklip.play();	// apro la mask
    	}
    }

  2. #12
    Premesso ke ho inserito il komando ke setta la maskera: sul fotogramma della timeline principale:
    recipiente.setMask(masklip);

    e al fotogramma ke kontiene la maskera:
    onClipEvent (data) {
    if (!aperto) {
    aperto = true;
    masklip.play();
    }
    }


    Riesko a rikiamare i klip kon i pulsanti ma la maskera nn li copre rimane nel primo fotogramma sull'azione di stop.
    (ho provato anke a maskerare i livelli ovvero masklip sopra recipiente ma nn si vede nulla forse xkè la mask nn si muove?).
    Manka forse l'istruzione per rikiamare le etikette nel movimento di apertura e quella di chiusura?

  3. #13
    Originariamente inviato da kloseout
    e al fotogramma ke kontiene la maskera:
    onClipEvent (data) {
    if (!aperto) {
    aperto = true;
    masklip.play();
    }
    }
    Il codice sopra lo devi associare al movieclip recipiente!

  4. #14
    ops sorry ho errato:
    il codice è gia associato al klip recipiente tutta via il klip nn mi funge è la maskera ke nn si muove.
    Vedo solo i pulsanti!
    Allora ricapitolando ho asseganto i nomi istanza masklip e recipiente poi ai pulsanti:
    on (release) {
    caricamovie("filmato1.swf");
    }
    etc...
    poi sul primo frame dell'istanza masklip (timeline principale):
    aperto = false;
    recipiente.setMask(masklip);
    function caricamovie(id) {
    if (aperto) {
    aperto = false;
    masklip.play();
    }
    recipiente.loadMovie(id);
    }

    ed in fine al movie recipiente ke si trova sulla timeline principale:
    onClipEvent (data) {
    if (!aperto) {
    aperto = true;
    masklip.play();
    }
    }
    dopo aver fatto vari tentativi e ricontrollato attentamente mi sembra di aver eseguito il tutto alla perfezione e la maskera nn si muove

  5. #15
    Originariamente inviato da kloseout
    etc...
    poi sul primo frame dell'istanza masklip (timeline principale):
    aperto = false;
    recipiente.setMask(masklip);
    function caricamovie(id) {
    if (aperto) {
    aperto = false;
    masklip.play();
    }
    recipiente.loadMovie(id);
    }
    :quote:
    sul primo frame dell'istanza masklip (timeline principale):
    è una contraddizione!
    O ti sei espresso male oppure hai sbagliato.
    La timeline principale è quella (indipendentemente da quanti layer è composta) dove ci sono i pulsanti, e i due mc "recipiente" e "masklip"

    Il codice va messo nel 1° frame della timeline principale e NON nella timeline di masklip.

    NON sarà per caso che NON hai fatto il movieclip "masklip" ed hai semplicemente sviluppato l'animazione sulla timeline principale?

  6. #16
    o almeno di questo sono supersikuro:
    ho skritto male mi spiace sarà ke la trovare la soluzione mi innervosisce io ho sul movie principale quanto segue:
    un layer pulsanti ke si trova sopra gli altri costituito da n°1 frame;
    un layer kon il movie masklip costituito da n°1 frame;
    un layer maskerato contenente il solo movie recipiente.

    specificatamente nel layer masklip (stesso nome dell'istanza ke kontiene) c'è un movieclip ke rakkiude al suo interno:
    una interpolazione di un quadrato ke si sposta da dx a sx e ritorna poi a dx. Sul frame n°1 c'è uno stop - al frame n°20 c'è un'altro stop - al frame n° 40 nn c'è nn stop.
    Nn ci sono etikette e null'altro semplicemente questo.
    Dovrei forse dare un nome alla condizione del frame n°20 e cioè quando il rettangolo occupa tutto lo spazio ed è appunto aperto?

  7. #17
    OK!
    Allora per trova l'anomalia procediamo passo a passo.
    Per prima cosa vediamo se l'animazione della maschera funge
    Per questo disattiviamo (aggiungendo le due barre di commento) questa istruzione:
    // recipiente.setMask(masklip);

    La maschera adesso sarà visibile.
    Quindi potremo capire se è la maschera che non si muove oppure se è il mascheramento che non funge.

  8. #18
    si vedo la maskera e appaiono dgtando i pulsanti i klip ma la maskera ha una azione di stop al primo frame della sua timeline quindi appare ferma sarà per questo ke nn si sblocca il movimento?

  9. #19
    aperto = false;
    //recipiente.setMask(masklip);
    function caricamovie(id) {
    if (aperto) {
    aperto = false;
    masklip.play();
    }
    recipiente.loadMovie(id);
    }

    ho controllato meglio la maskera con la as di cui sopra rimane nn è cmq visibile (anzi il programma dice ke c'è un errore di sintassi),
    x vederla devo semplicemente smaskerare il livello dalla timeline principale e dopo averlo fatto quel kklip è sempre lì m nnsi muove.

  10. #20
    Ho scritto male il codice da associare al mc recipiente, NON ho inserito il percorso corretto per fargli trovare il clip della maschera, eccolo corretto:
    codice:
    onClipEvent (data) {
    	if (!_parent.aperto) {
    	    _parent.aperto = true;
    	    _parent.masklip.play();	// apro la mask
    	}
    }
    poi controllo anche le altre cose...

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.