# mp3 coding help

**URL:** <https://forum.kirupa.com/t/mp3-coding-help/212776>\
**Category:** flash\
**Created:** [January 14, 2007, 7:39am UTC](https://forum.kirupa.com/t/mp3-coding-help/212776 "2007-01-14T07:39:18Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![employee\_416](https://avatars.discourse-cdn.com/v4/letter/e/4bbf92/32.png) [@employee\_416](https://forum.kirupa.com/u/employee_416)\
**Post date:** [January 14, 2007, 7:39am UTC](https://forum.kirupa.com/t/mp3-coding-help/212776/1 "2007-01-14T07:39:18Z")

</div>

ok, i posted this in the wrong section at first. i was needing some help figuring out a method to reset variables on a list component change for my mp3 player. everytime i select a new song on the list or select the same song the timer for song position keeps going and nothing resets. here is the action script:

```
ActionScript Code:
[FONT=Courier New][LEFT][COLOR=#000000] **var** [/COLOR] artistList:mx.[COLOR=#000080]controls[/COLOR].[COLOR=#0000FF]List[/COLOR];

```

[COLOR=#000000] **var** [/COLOR] [COLOR=#0000FF]sound[/COLOR]:Sound = [COLOR=#000000] **new** [/COLOR] [COLOR=#0000FF]Sound[/COLOR]COLOR=#000000[/COLOR];  
info\_txt.[COLOR=#0000FF]autoSize[/COLOR] = [COLOR=#000000] **true** [/COLOR];  
[COLOR=#0000FF]import[/COLOR] mx.[COLOR=#000080]styles[/COLOR].[COLOR=#000080]CSSStyleDeclaration[/COLOR];  
[COLOR=#000000] **var** [/COLOR] new\_style:[COLOR=#0000FF]Object[/COLOR] = [COLOR=#000000] **new** [/COLOR] CSSStyleDeclarationCOLOR=#000000[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“fontFamily”[/COLOR], [COLOR=#FF0000]"\_sans"[/COLOR][COLOR=#000000])[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“fontSize”[/COLOR], [COLOR=#000080]10[/COLOR][COLOR=#000000])[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“fontWeight”[/COLOR], [COLOR=#FF0000]“normal”[/COLOR][COLOR=#000000])[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“textDecoration”[/COLOR], [COLOR=#FF0000]“none”[/COLOR][COLOR=#000000])[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“color”[/COLOR], 0xffffff[COLOR=#000000])[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“borderStyle”[/COLOR], [COLOR=#FF0000]“solid”[/COLOR][COLOR=#000000])[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“borderColor”[/COLOR], [COLOR=#FF0000]“0x666666”[/COLOR][COLOR=#000000])[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“backgroundColor”[/COLOR], [COLOR=#FF0000]“0x000000”[/COLOR][COLOR=#000000])[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“selectionDuration”[/COLOR], [COLOR=#000080]0[/COLOR][COLOR=#000000])[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“textRollOverColor”[/COLOR], [COLOR=#FF0000]“0xff3399”[/COLOR][COLOR=#000000])[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“textSelectedColor”[/COLOR], [COLOR=#FF0000]“0x666666”[/COLOR][COLOR=#000000])[/COLOR];  
new\_style.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“themeColor”[/COLOR], [COLOR=#FF0000]“0x111111”[/COLOR][COLOR=#000000])[/COLOR];  
[COLOR=#000000] **\_global** [/COLOR].[COLOR=#000080]styles[/COLOR].[COLOR=#000080]myStyle[/COLOR] = new\_style;  
artistList.[COLOR=#0000FF]setStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“styleName”[/COLOR], [COLOR=#FF0000]“myStyle”[/COLOR][COLOR=#000000])[/COLOR];  
songList.[COLOR=#0000FF]setStyle[/COLOR]COLOR=#000000[/COLOR];  
[COLOR=#000000] **var** [/COLOR] artistXML:[COLOR=#0000FF]XML[/COLOR] = [COLOR=#000000] **new** [/COLOR] [COLOR=#0000FF]XML[/COLOR]COLOR=#000000[/COLOR];  
[COLOR=#000000] **var** [/COLOR] artists:[COLOR=#0000FF]Array[/COLOR] = [COLOR=#000000] **new** [/COLOR] [COLOR=#0000FF]Array[/COLOR]COLOR=#000000[/COLOR];  
[COLOR=#000000] **var** [/COLOR] xmlSource = [COLOR=#FF0000]“[http://home.comcast.net/~urtalkinstupid/playlist.xml](http://home.comcast.net/~urtalkinstupid/playlist.xml)”[/COLOR];  
artistXML.[COLOR=#0000FF]ignoreWhite[/COLOR] = [COLOR=#000000] **true** [/COLOR];  
artistXML.[COLOR=#0000FF]load[/COLOR]COLOR=#000000[/COLOR];  
artistXML.[COLOR=#0000FF]onLoad[/COLOR] = [COLOR=#000000] **function** [/COLOR]COLOR=#000000[/COLOR] [COLOR=#000000]{[/COLOR]  
[COLOR=#0000FF]if[/COLOR] COLOR=#000000[/COLOR] [COLOR=#000000]{[/COLOR]  
artistNode = artistXML.[COLOR=#0000FF]firstChild[/COLOR].[COLOR=#0000FF]childNodes[/COLOR];  
[COLOR=#0000FF]for[/COLOR] [COLOR=#000000]([/COLOR]i=[COLOR=#000080]0[/COLOR]; i\<artistNode.[COLOR=#0000FF]length[/COLOR]; i++[COLOR=#000000])[/COLOR] [COLOR=#000000]{[/COLOR]  
artistList.[COLOR=#000080]addItem[/COLOR]COLOR=#000000[/COLOR];  
[COLOR=#000000]}[/COLOR]  
[COLOR=#000000]}[/COLOR]  
artistIndex = -[COLOR=#000080]1[/COLOR];  
updatesongListCOLOR=#000000[/COLOR];  
[COLOR=#000000]}[/COLOR];  
[COLOR=#000000] **var** [/COLOR] listener:[COLOR=#0000FF]Object[/COLOR] = [COLOR=#000000] **new** [/COLOR] [COLOR=#0000FF]Object[/COLOR]COLOR=#000000[/COLOR];  
listener.[COLOR=#000080]change[/COLOR] = [COLOR=#000000] **function** [/COLOR]COLOR=#000000[/COLOR] [COLOR=#000000]{[/COLOR]  
[COLOR=#0000FF]if[/COLOR] [COLOR=#000000]([/COLOR][COLOR=#0000FF]e[/COLOR].[COLOR=#0000FF]target[/COLOR].[COLOR=#0000FF]\_name[/COLOR] == [COLOR=#FF0000]“artistList”[/COLOR][COLOR=#000000])[/COLOR] [COLOR=#000000]{[/COLOR]  
songList.[COLOR=#000080]removeAll[/COLOR]COLOR=#000000[/COLOR];  
artistIndex = [COLOR=#0000FF]e[/COLOR].[COLOR=#0000FF]target[/COLOR].[COLOR=#000080]selectedIndex[/COLOR];  
updatesongListCOLOR=#000000[/COLOR];  
[COLOR=#000000]}[/COLOR] [COLOR=#0000FF]else[/COLOR] [COLOR=#0000FF]if[/COLOR] [COLOR=#000000]([/COLOR][COLOR=#0000FF]e[/COLOR].[COLOR=#0000FF]target[/COLOR].[COLOR=#0000FF]\_name[/COLOR] == [COLOR=#FF0000]“songList”[/COLOR][COLOR=#000000])[/COLOR] [COLOR=#000000]{[/COLOR]  
[COLOR=#0000FF]sound[/COLOR].[COLOR=#0000FF]stop[/COLOR]COLOR=#000000[/COLOR];  
songIndex = [COLOR=#0000FF]e[/COLOR].[COLOR=#0000FF]target[/COLOR].[COLOR=#000080]selectedIndex[/COLOR];  
prepare[COLOR=#000000]([/COLOR]songIndex, artistIndex[COLOR=#000000])[/COLOR];  
[COLOR=#000000]}[/COLOR]  
[COLOR=#000000]}[/COLOR];  
artistList.[COLOR=#000080]addEventListener[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“change”[/COLOR], listener[COLOR=#000000])[/COLOR];  
songList.[COLOR=#000080]addEventListener[/COLOR][COLOR=#000000]([/COLOR][COLOR=#FF0000]“change”[/COLOR], listener[COLOR=#000000])[/COLOR];  
updatesongList = [COLOR=#000000] **function** [/COLOR] COLOR=#000000[/COLOR] [COLOR=#000000]{[/COLOR]  
songsNode = artistNode[COLOR=#000000][[/COLOR]artistIndex[COLOR=#000000]][/COLOR].[COLOR=#0000FF]childNodes[/COLOR];  
[COLOR=#0000FF]for[/COLOR] [COLOR=#000000]([/COLOR]i=[COLOR=#000080]0[/COLOR]; i\<songsNode.[COLOR=#0000FF]length[/COLOR]; i++[COLOR=#000000])[/COLOR] [COLOR=#000000]{[/COLOR]  
songList.[COLOR=#000080]addItem[/COLOR][COLOR=#000000]([/COLOR][COLOR=#000000]{[/COLOR]label:songsNode[COLOR=#000000][[/COLOR]i[COLOR=#000000]][/COLOR].[COLOR=#0000FF]attributes[/COLOR].[COLOR=#0000FF]name[/COLOR], [COLOR=#0000FF]data[/COLOR]:songsNode[COLOR=#000000][[/COLOR]i[COLOR=#000000]][/COLOR].[COLOR=#0000FF]attributes[/COLOR].[COLOR=#0000FF]url[/COLOR][COLOR=#000000]}[/COLOR][COLOR=#000000])[/COLOR];  
[COLOR=#000000]}[/COLOR]  
[COLOR=#000000]}[/COLOR];  
prepare = [COLOR=#000000] **function** [/COLOR] [COLOR=#000000]([/COLOR]songIndex, artistIndex[COLOR=#000000])[/COLOR] [COLOR=#000000]{[/COLOR]  
[COLOR=#0000FF]clearInterval[/COLOR]COLOR=#000000[/COLOR]  
info\_txt.[COLOR=#0000FF]text[/COLOR] = artistNode[COLOR=#000000][[/COLOR]artistIndex[COLOR=#000000]][/COLOR].[COLOR=#0000FF]attributes[/COLOR].[COLOR=#0000FF]name[/COLOR]+[COLOR=#FF0000]" - “[/COLOR]+songsNode[COLOR=#000000][[/COLOR]songIndex[COLOR=#000000]][/COLOR].[COLOR=#0000FF]attributes[/COLOR].[COLOR=#0000FF]name[/COLOR]  
[COLOR=#0000FF]sound[/COLOR].[COLOR=#0000FF]loadSound[/COLOR][COLOR=#000000]([/COLOR]songsNode[COLOR=#000000][[/COLOR]songIndex[COLOR=#000000]][/COLOR].[COLOR=#0000FF]attributes[/COLOR].[COLOR=#0000FF]url[/COLOR], [COLOR=#000000] **true** [/COLOR][COLOR=#000000])[/COLOR];  
clock = [COLOR=#0000FF]setInterval[/COLOR][COLOR=#000000]([/COLOR]timeInfo, [COLOR=#000080]75[/COLOR][COLOR=#000000])[/COLOR];  
[COLOR=#000000]}[/COLOR];  
[COLOR=#0000FF]sound[/COLOR].[COLOR=#0000FF]onLoad[/COLOR] = [COLOR=#000000] **function** [/COLOR]COLOR=#000000[/COLOR][COLOR=#000000]{[/COLOR]  
songLength = [COLOR=#0000FF]this[/COLOR].[COLOR=#0000FF]duration[/COLOR]  
[COLOR=#000000]}[/COLOR]  
timeInfo = [COLOR=#000000] **function** [/COLOR]COLOR=#000000[/COLOR][COLOR=#000000]{[/COLOR]  
[COLOR=#000000] **var** [/COLOR] totalSeconds:[COLOR=#0000FF]Number[/COLOR] = [COLOR=#0000FF]sound[/COLOR].[COLOR=#0000FF]position[/COLOR]/[COLOR=#000080]1000[/COLOR];  
[COLOR=#000000] **var** [/COLOR] percentPlayed:[COLOR=#0000FF]Number[/COLOR] = [COLOR=#0000FF]sound[/COLOR].[COLOR=#0000FF]position[/COLOR] / songLength;  
[COLOR=#000000] **var** [/COLOR] minutes:[COLOR=#0000FF]Number[/COLOR] = [COLOR=#0000FF]Math[/COLOR].[COLOR=#0000FF]floor[/COLOR]COLOR=#000000[/COLOR];  
[COLOR=#000000] **var** [/COLOR] seconds = [COLOR=#0000FF]Math[/COLOR].[COLOR=#0000FF]floor[/COLOR]COLOR=#000000[/COLOR]%[COLOR=#000080]60[/COLOR];  
[COLOR=#0000FF]if[/COLOR] COLOR=#000000[/COLOR] [COLOR=#000000]{[/COLOR]  
seconds = [COLOR=#FF0000]“0”[/COLOR]+seconds;  
[COLOR=#000000]}[/COLOR]  
positionbar\_mc.[COLOR=#0000FF]\_width[/COLOR] = percentPlayed \* [COLOR=#000080]300[/COLOR];  
timeinfo\_txt.[COLOR=#0000FF]text[/COLOR] = minutes + [COLOR=#FF0000]”:"[/COLOR] + seconds;  
[COLOR=#000000]}[/COLOR]  
[/LEFT]  
[/FONT]

here is a [link](http://home.comcast.net/%7Eurtalkinstupid/mp3player1.fla) to the file also (its too big to load).
