vinialbino 0 Denunciar post Postado Junho 25, 2009 Bom dia,sou novo no fórum e gostaria da ajuda de alguém se possível. Estou fazendo um jogo,e tenho de carregar os sons de uma pasta externa,no caso não posso deixar os sons no swf,e estou tentando fazer uma rotina,que dê load em todos os sons de uma vez só,tentei trabalhar com arrays listando os sons,porém me surgiu uma dúvida,eu devo criar um objeto "public var som:Sound = new Sound();" para cada som que eu for usar? Não teria um jeito mais fácil de eu criar vários objetos sem ter de ficar declarando um por um? Desdê já agradeço a ajuda. Abs Compartilhar este post Link para o post Compartilhar em outros sites
Elektra 102 Denunciar post Postado Julho 9, 2009 Use um arquivo externo em XML. O trecho do código abaixo foi usado para criar um player mp3, talvez possa lhe dar uma idéia. Não inseri o action para os botões play, pause, etc. Os créditos são para o site www.FlashEssential.com (onde você encontra o arquivo na íntegra) var getMusic:URLRequest; var music:Sound = new Sound(); var soundChannel:SoundChannel; var currentSound:Sound = music; var pos:Number; var currentIndex:Number = 0; var songPlaying:Boolean = false; var xml:XML; var songlist:XMLList; /*--------Simple preloader----------------------------------------*/ function loadProgress(event:ProgressEvent):void { var percentLoaded:Number = event.bytesLoaded/event.bytesTotal; percentLoaded = Math.round(percentLoaded * 100); if(percentLoaded > 20){ trace("loading"); } else{ } } function completeHandler(event):void { trace("DONE"); } /*-------------------Load in Our XML ------------------------*/ /*----------------------------------------------------------*/ var loader:URLLoader = new URLLoader(); //create a new URLLoader Object loader.addEventListener(Event.COMPLETE, whenLoaded); //add an event listener to that object loader.load(new URLRequest("songs.xml")); //Requests our xml file that contains our song data function whenLoaded(e:Event):void //WhenLoaded function(see line 50) runs when line 50 is complete { xml = new XML(e.target.data); songlist = xml.song; //accesses our song tag in our xml file getMusic = new URLRequest(songlist[0].url);//get music from songlist music.load(getMusic);//load music soundChannel = music.play();//plays the music songTXT.text = songlist[0].title; //gets song name from xml //artistTXT.text = songlist[0].artist; //gets artist name //albumTXT.text = songlist[0].album; //gets album name soundChannel.addEventListener(Event.SOUND_COMPLETE, nextSong);//runs the next song function when a song completes } Um trecho do XML: <?xml version="1.0" encoding="ISO-8859-1"?> <ipod> <song> <url>songs/musica1.mp3</url> </song> <song> <url>songs/musica2.mp3</url> </song> </ipod> Apenas um detalhe, o player abre executando a musica1, as demais vem automaticamente em sequência. Para o que deseja será necessário alguma adaptação, no momento, além do meu conhecimento para lhe auxiliar. Espero que ao menos possa lhe dar uma luz. Abraço. Compartilhar este post Link para o post Compartilhar em outros sites