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

    help modifica action controller audio

    Salve a tutti ragazzi. Ho un controller audio su cui vorrei apportare una piccola modifica. In pratica è presente un'animazione che assomiglia ad un equalizzatore la quale viene gestita direttamente da action, beh io vorrei togliere questo tipo di animazione e gestire il tutto tramite non tramite action ma tramite fotogrammi, mi spiego meglio, io vorrei un qualcosa del tipo che quando l'audio è su on l'animazione sia ad esempio sul primo fotogramma di clip, metre quando il pulsante è su off l'animazionè sia sul secondo fotogramma. In questo modo posso gestire e personalizzare meglio le amimazioni, se ad esempio volessi cambiare tipo di equalizzatore o se al posto dell'equalizzatore volessi mettere un'altro tipo di animazione, potrei farlo, basta che vado a sostituirle sul primo o sul secondo fotogramma e il gioco è fatto...
    Ho fatto già delle modifiche ma funzionano in parte quando stoppo il controller e poi lo riavvio non mi torna più sul primo fotogramma, praticamente mi resta sempre sul secondo, chi mi da una mano gentilmente?

    Codice PHP:
    Action di riferimento prima della modifica:

    ////////// ferma la equalizer sul pulsante onOff  ////////// 
    function stopEq(movie:MovieClip):Void
        new 
    Tween(movie"_y",  Regular.easeOut,movie._y,120.5true); 


    ////////// fa partire equalizer  ////////// 
    function playEq(movie:MovieClip):Void
        var 
    casuale:Number=Math.round(Math.random()*15); 
        
    //trace(casuale); 
        
    new Tween(movie"_y",  Regular.easeOut,movie._y,casuale0.3true); 

    function 
    equalizer():Void
    playEq(onOff_mc.eqBar1); 
    playEq(onOff_mc.eqBar2);playEq(onOff_mc.eqBar3);playEq(onOff_mc.eqBar4);playEq(onOff_mc.eqBar5);} 

    Codice PHP:
    Action di riferimento dopo la modifica:

    ////////// ferma la equalizer sul pulsante onOff  ////////// 
    function stopEq(movie:MovieClip):Void{  
        
    onOff_mc.gotoAndStop(2);   
    }  
    ////////// fa partire equalizer  ////////// 
    function playEq(movie:MovieClip):Void{  
        
    onOff_mc.gotoAndStop(1);  

    ...dov'è che ho sbagliato?

  2. #2
    ...ragazzi ma non c'è nessuno che possa darmi qualche consiglio?

  3. #3
    ...ho risolto da solo:

    Codice PHP:
    ////////// ferma la equalizer sul pulsante onOff  ////////// 
    function stopEq(movie:MovieClip):Void{   
        
    onOff_mc.gotoAndStop(2);    
    }   
    ////////// fa partire equalizer  ////////// 
    function playEq(movie:MovieClip):Void{   
        
    onOff_mc.gotoAndStop(1);   
    }

    function 
    equalizer():Void{
        
    onOff_mc.gotoAndStop(1);   


  4. #4
    ...si, ho risolto, ma mi è rimasto un problemino di cui non mi ero accorto... se stoppo e in brevissimo tempo riavvio il controller il loop mi si accavalla, come se l'audio precedente non fosse stato spento e ne fosse stato acceso un altro sopra, non so se ho reso l'idea.

    Per chi volesse darmi un aiuto, questa è l'intera action che riguarda il controller:

    Codice PHP:
    import mx.transitions.*;
    import mx.transitions.easing.*;
    import flash.filters.GlowFilter;
    ////////// filtro baglior al rollOver sul pulsante onOff //////////
    var glow:GlowFilter = new GlowFilter(0xffffff0.32223);
    onOff_mc.onRollOver = function():Void {
        
    this.filters = [glow];
    }
    onOff_mc.onRollOut = function():Void {
    this.filters null;
    }
    ////////// masccera sul pulsante onOff //////////
    onOff_mc.setMask(mask_mc);

    ////////// creo loggetto sound e faccio partire la riproduzione //////////
    var music:Sound = new Sound(this);
    music.loadSound("sounds/loop1.mp3",false);
    traccia(1);
    music.start(0,9000);
    id1=setInterval(equalizer,50);
    music.onLoad = function(success:Boolean):Void {
        if(
    suona){clearInterval(id1);
       
    music.start(0,9000);
       
    id1=setInterval(equalizer,50);
       }else{ 
    music.stop();}
    };

    ////////// carico mp3 alla pressione dei pulsanti cmi  //////////
    for(i=1;i<4;i++){
        
    this["cm"+i].j=i;
        
    this["cm"+i].onRelease=function(){
            
    suona=true;
            
    onOff_mc.testo.text="sound off ";
            
    music.loadSound("sounds/loop"+this.j+".mp3",false);
            
    traccia(this.j);
        }
    //onRelease
    }//end for

    //////////  azioni pulsante onOff //////////
    var suona:Boolean=true;
    onOff_mc.testo.text="sound off ";
    onOff_mc.onPress=function(){
        
    trace("premuto onOff"); 
        if(
    suona){
            
    suona=false;
            
    this.testo.text="sound on ";
            
    fadeOut();
            
    clearInterval(id1);
            
    stopEq(this.eqBar1);stopEq(this.eqBar2);stopEq(this.eqBar3);stopEq(this.eqBar4);stopEq(this.eqBar5);
            }else{
            
    suona=true;
            
    this.testo.text="sound off"
            
    music.start(0,9000);
            
    fadeIn();
            
    id1=setInterval(equalizer,50);
        }
    }
    ////////// abbassa il volume a 0 e stoppa la musica //////////
    function fadeOut():Void{
        var 
    vol:Number=music.getVolume();
        
    this.onEnterFrame=function(){
            if (
    vol>0){
                
    vol-=10;
                
    music.setVolume(vol);
                }else{
    music.stop();
                    
    delete onEnterFrame;}
        }
    }
    ////////// alza il volume a 100  //////////
    function fadeIn():Void{
        
    music.setVolume(0);
        var 
    vol:Number=music.getVolume();
        
    this.onEnterFrame=function(){
            if (
    vol<100){
                
    vol+=10;//trace(music.getVolume());
                
    music.setVolume(vol);
                }else{
    music.setVolume(100);
                    
    delete this.onEnterFrame;}
        }
    }
    ////////// ferma la equalizer sul pulsante onOff  ////////// 
    function stopEq(movie:MovieClip):Void{   
        
    onOff_mc.gotoAndStop(2);    
    }   
    ////////// fa partire equalizer  ////////// 
    function playEq(movie:MovieClip):Void{   
        
    onOff_mc.gotoAndStop(1);   
    }

    function 
    equalizer():Void{
        
    onOff_mc.gotoAndStop(1);   


    ////////// gestisce il preload  //////////
    function traccia(n:Number):Void{
        
    bar_mc.onEnterFrame=function(){
        var 
    byteCaricati:Number=music.getBytesLoaded();
        var 
    byteTotali:Number=music.getBytesTotal();
        var 
    percent:Number=Math.ceil((byteCaricati/byteTotali)*100);trace(percent);
        if (
    byteCaricati>20){
        
    bar_mc._xscale=percent;
        
    bar_mc._visible=true;
        
    loading_txt.text=percent+"% loading sound";
        if(
    byteCaricati>=byteTotali){
            
    loading_txt.text="";
            
    trace(loading_txt.text);
            
    delete bar_mc.onEnterFrame;}
            }
        }
    //end enterFrame
    }//end traccia 
    ...come posso risolvere?

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.