Variables for function names

Good day,

Here is the project I’ve been working on:
http://www.margaretsplace.com.au/Assets/mda.html

Currently, it’s overly big because my scripting is verbose and cumbersome.

I’ve created an array to hold 8 function names:

[AS]
_global.swatchFunction = [“dropAUL”, “dropAUR”, “dropALL”, “dropALR”, “dropBUL”, “dropBUR”, “dropBLL”, “dropBLR”]
[/AS]

I have 8 buttons on the stage. Each button is supposed to change the function so that I can use the same scrolling thumbnail mc to load images into different placeholder mcs.

So I proposed to myself that each button would have:

[AS]
on(release){
functionName = swatchFunction[0];
}
[/AS]

I’ve created the 8 functions in the first frame, so all I’m trying to do is swap over the function name with the on(release) handler.

Basically, can I use a variable to call a function?

Any suggestions? Direction? Thanks.

Huh ? Swatch the function name: what function ? You told us you have 8 names, and you want to swatch the function

Read this while looking at the project online. Each time you click a quarter of the bag, I need a new function to be activated by each scrolling swatch.

I’d hoped to do this by reassigning each swatch with a new function name each time I click on a different quarter.

So, each quarter would have:
[AS]
on(release){
functionName = swatchFunction[n]
//where n matches with the function I want to use for that quarter, pulling it from the array I created at the beginning
}
[/AS]

Each scrolling swatch has this:
[AS]
on(release){
functionName();
//hoping that functionName is filled by the value I gave it from clicking the quarter above
}
[/AS]

so depending on which quarter I have clicked, the swatch will perform a different function.

You can perfectly do that, but you must make sure that both handlers use the same variable. For example, use _root:


on(release){
        _root.functionName = swatchFunction[n]
}


on(release){
_root.functionName();
}

Will work perfectly :slight_smile:

Thanks again, always dependable.