Hey guys… I’m getting a strange error and I’m not quite sure why. It’s Error 1136: Incorrect number of arguments. Expected 1. I attached my .fla and .xml files. On my machine I have a folder labelled “audio” in the same folder as my project files.
Here’s my code:
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.media.Sound;
import flash.media.SoundChannel;
//variables for the songs list
var my_songs:XMLList;
var my_total:Number;
//sound class variables
var my_sound:Sound;
var my_channel:SoundChannel;
var current_song:Number = 0;
var song_position:Number;
var song_paused:Boolean;
**//THIS IS WHERE I GET MY ERROR
//Error 1136: Incorrect number of arguments. Expected 1.**
**var myXMLLoader:URLLoader = URLLoader();
**
myXMLLoader.load(new URLRequest("playlist.xml"));
myXMLLoader.addEventListener(Event.COMPLETE, processXML);
//function to process the playlist file
function processXML(e:Event):void {
var myXML:XML = new XML(e.target.data);
my_songs = myXML.SONG;
my_total = my_songs.length();
//playSong(0); //uncomment to have it play automatically when it loads
myXMLLoader.removeEventListener(Event.COMPLETE, processXML);
myXMLLoader = null;
}
//function to play a song -- @ sign is for Flash to get attributes of an XML node
function playSong(mySong:Number):void {
var myTitle = my_songs[mySong].@TITLE;
var myArtist = my_songs[mySong].@ARTIST;
var myURL = my_songs[mySong].@URL;
title_txt.text = myTitle;
artist_txt.text = myArtist;
if (my_channel) {
my_channel.stop();
my_channel.removeEventListener(Event.SOUND_COMPLETE, onNext);
}
my_sound = new Sound();
my_sound.load(new URLRequest(myURL));
my_channel = my_sound.play();
my_channel.addEventListener(Event.SOUND_COMPLETE, onNext);
}
next_btn.addEventListener(MouseEvent.CLICK, onNext);
function onNext(e:Event):void {
current_song++;
if (current_song >= my_total) {
current_song = 0;
}
playSong(current_song);
}
prev_btn.addEventListener(MouseEvent.CLICK, onPrev);
function onPrev(e:MouseEvent):void {
current_song--;
if (current_song < 0) {
current_song = my_total - 1;
}
playSong(current_song);
}
pause_btn.addEventListener(MouseEvent.CLICK, onPause);
function onPause(e:MouseEvent):void {
if (my_channel) {
song_position = my_channel.position;
my_channel.stop();
song_paused = true;
}
}
play_btn.addEventListener(MouseEvent.CLICK, onPlay);
function onPlay(e:MouseEvent):void {
if (song_paused) {
my_channel = my_sound.play(song_position);
song_paused = false;
} else if (!my_channel) {
playSong(current_song);
}
}
Any ideas??