Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [AS3] Far partire un movieclip come child

    Salve

    Ho un preloader che carica un secondo filmato.
    La funzione incrimininata (nel preload) dovrebbe essere questa:

    codice:
    function completato(e:Event):void
    {
    	preloader_mc.stop();
    	preloader_mc.visible=false;
    	addChild(loader);
    }
    Il problema è che nel secondo filmato compare questa riga (che di suo fa partire il filmato):
    codice:
            stage.addEventListener(Event.ENTER_FRAME,scorri);
    Mi sa, non ne sono sicuro, che essendo stato aggiunto come child, tale movieclip non risponde più allo stage ma ad un suo figlio...

    come la sbroglio??

    Grazie
    Dice il saggio:
    Non ci sono domande difficili, esistono solo risposte che non conosciamo!
    "Se qualcosa può andare male, lo farà" - Murphy

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Ti da degli errori? Se sì è meglio che li segnali sempre per fare più velocemente.

  3. #3
    no nessun errore... solo che non parte

    il loader funziona... e infatti il filmato2 viene caricato, ma non parte...

    se vuoi ti inserisco parti di codice significative:

    preloader:
    codice:
    preloader_mc.stop();
    preloader_mc.visible=false;
    
    var swf:String = LoaderInfo(this.root.loaderInfo).parameters.movieToLoad;
    var richiesta:URLRequest=new URLRequest(swf);
    var loader:Loader=new Loader();
    
    loader.contentLoaderInfo.addEventListener(Event.OPEN,inizia);
    loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,inCaricamento);
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE,completato);
    loader.load(richiesta);
    
    function inizia(e:Event):void
    {
    	preloader_mc.visible=true;
    	preloader_mc.play();
    }
    
    function inCaricamento(e:ProgressEvent):void
    {
    	var percentuale:uint=(e.bytesLoaded/e.bytesTotal)*100;
    	preloader_mc.loader_txt.text=percentuale.toString()+' %';
    }
    
    function completato(e:Event):void
    {
    	preloader_mc.stop();
    	preloader_mc.visible=false;
    	addChild(loader);
    }
    filmato principale:
    codice:
    	import flash.display.MovieClip;
    
    	this.addEventListener(Event.ENTER_FRAME,scorri);
    
    	var w = stage.width;
    	var mw = glasses.width;
    	var speed = 15;			// velocità standard di scorrimento
    	
    	// limiti calcolati a mano
    	var xMax = 360;
    	var xMin = -1565;
    
    	function scorri(evt:Event):void
    	{		
    		var curX = stage.mouseX;
    		var step = (250 - stage.mouseX)/speed;
    		var curPos = glasses.x;
    		var newPos = curPos+step;
    
    		if( ( newPos > xMin) && (newPos < xMax) )
    			glasses.x = newPos;
    		else {
    			if(newPos <= xMin)
    				glasses.x = xMin;
    			if(newPos >= xMax)
    				glasses.x = xMax;
    		}
    	}
    Dice il saggio:
    Non ci sono domande difficili, esistono solo risposte che non conosciamo!
    "Se qualcosa può andare male, lo farà" - Murphy

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.