can someone just comment the hell out of this script for me so i know whats going on.
import mx.transitions.Tween;
import mx.transitions.easing.*;
var song_folder:String = “songs/”;
var song_list:Array = new Array();
var track_list:Array = new Array();
var artist_list:Array = new Array();
var album_list:Array = new Array();
var current:Number = 0;
var position:Number;
var new_volume:Number = 100;
var flash_xml:XML = new XML();
flash_xml.ignoreWhite = true;
flash_xml.onLoad = function()
{
var nodes:Array = this.firstChild.childNodes;
for(var i = 0; i < nodes.length; i++)
{
song_list.push(nodes*.attributes.filename);
track_list.push(nodes*.attributes.track);
artist_list.push(nodes*.attributes.artist);
album_list.push(nodes*.attributes.album);
}
play_song(“start”);
}
flash_xml.load( song_folder + “songs.xml”);
btn_play.play_pause.onRelease = function()
{
if( this._parent._currentframe == 1 )
this._parent._parent.play_pause(“pause”);
else
this._parent._parent.play_pause(“play”);
this._parent.play();
}
btn_prev.onRelease = function()
{
this._parent.play_song(“prev”);
}
btn_next.onRelease = function()
{
this._parent.play_song(“next”);
}
function play_song(track:String):Void
{
if(track == “prev”)
current–;
else if(track == “start”)
current = 0;
else
current++;
if(current == song_list.length)
current = 0;
else if(current < 0)
current = song_list.length - 1;
s = new Sound(); s.loadSound(song_folder + song_list[current], true);
s.setVolume(new_volume);
track_title.text = track_list[current];
artist_name.text = artist_list[current];
album_title.text = album_list[current];
track_info.text = "Song " + (current+1) + " of " + song_list.length;
btn_play.gotoAndStop(1);
}
function play_pause(pp:String):Void
{
if(pp == “pause”)
{
position = s.position;
s.stop();
}
else if(pp == “play”)
{
s.start(position/1000);
}
}
var my_interval:Number;
my_interval = setInterval(update_bar, 100);
function update_bar():Void
{
var total_seconds:Number = s.duration/1000;
var minutes:Number = Math.floor(total_seconds/60);
var seconds = Math.floor(total_seconds)%60;
if(seconds < 10)
seconds = “0” + seconds;
var total_current_seconds:Number = s.position/1000;
var current_minutes:Number = Math.floor(total_current_seconds/60);
var current_seconds = Math.floor(total_current_seconds)%60;
if(current_seconds < 10)
current_seconds = "0" + current_seconds;
percent_loaded = Math.round(s.getBytesLoaded() / s.getBytesTotal() * 100);
player_bar._width = Math.round( s.position/s.duration*player_bar_bg._width );
btn_pointer._x = player_bar._width + player_bar._x;
position_info.text = current_minutes +":"+ current_seconds + " | " + minutes +":"+ seconds;
if( s.getBytesLoaded() == s.getBytesTotal() && s.position == s.duration )
play_song();
}
btn_pointer.onPress = function()
{
this.startDrag(true, player_bar_bg._x, this._y, player_bar_bg._width + player_bar_bg._x, this._y );
s.stop(); clearInterval(my_interval);
}
btn_pointer.onRelease = btn_pointer.onReleaseOutside = function()
{
this.stopDrag();
new_position = s.duration * (this._x - player_bar_bg._x) / (player_bar_bg._width * 1000);
s.start(new_position); btn_play.gotoAndStop(1);
my_interval = setInterval(update_bar, 100);
}
btn_volume_pointer.onPress = function()
{
this.startDrag(true, player_volume_bg._x, this._y, player_volume_bg._width + player_volume_bg._x, this._y );
}
btn_volume_pointer.onRelease = btn_volume_pointer.onReleaseOutside = function()
{
this.stopDrag(); new_volume = this._x - player_volume_bg._x;
new Tween(player_volume, “_width”, Strong.easeOut, player_volume._width, new_volume, 1.5, true);
s.setVolume(new_volume);
}