Reuse function

Hi,

i am having some trouble making this code reusable so i call it from each external swfs (of which there are serveral) when i try to do this however it does not work, i guess it is a path issue…


scope = this
close_mc.onRelease = function() {
    _parent._parent.current_drop.counter--;
    _parent._parent.current_drop.drop_space -= this._parent._width+7;
    // if in 1st slot 
    if (scope == _parent._parent.curr_filters[0]) {
        _parent._parent.curr_filters.shift();
        _parent._parent.active_filters.shift();
        _parent._parent.curr_filters[0]._x = 5;
        _parent._parent.curr_filters[1]._x = _parent._parent.curr_filters[0]._width+12;
    }
    // if in 2nd slot   
    if (scope == _parent._parent.curr_filters[2]) {
        _parent._parent.curr_filters.pop();
        _parent._parent.active_filters.pop();
        _parent._parent.curr_filters[0]._x = 5;
        _parent._parent.curr_filters[1]._x = _parent._parent.curr_filters[0]._width+12;
    }
    // if in 3rd slot    
    if (scope == _parent._parent.curr_filters[1]) {
        _parent._parent.curr_filters.splice(1, 1);
        _parent._parent.active_filters.splice(1, 1);
        _parent._parent.curr_filters[0]._x = 5;
        _parent._parent.curr_filters[1]._x = _parent._parent.curr_filters[0]._width+12;
    }
    _parent._parent.curr_chan.filters = "";
    trace(_parent._parent.curr_filters);
    //trace(_parent._parent.curr_filters);
    this._parent.removeMovieClip();
};

you could just put it into another made up function i.e


function gogo() {
[COLOR=#0000bb]scope [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]this
close_mc[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]onRelease [/COLOR][COLOR=#007700]= function() {
    [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]current_drop[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]counter[/COLOR][COLOR=#007700]--;
    [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]current_drop[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]drop_space [/COLOR][COLOR=#007700]-= [/COLOR][COLOR=#0000bb]this[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_width[/COLOR][COLOR=#007700]+[/COLOR][COLOR=#0000bb]7[/COLOR][COLOR=#007700];
    [/COLOR][COLOR=#ff8000]// if in 1st slot 
    [/COLOR][COLOR=#007700]if ([/COLOR][COLOR=#0000bb]scope [/COLOR][COLOR=#007700]== [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]0[/COLOR][COLOR=#007700]]) {
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]shift[/COLOR][COLOR=#007700]();
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]active_filters[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]shift[/COLOR][COLOR=#007700]();
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]0[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000bb]_x [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]5[/COLOR][COLOR=#007700];
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]1[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000bb]_x [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]0[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000bb]_width[/COLOR][COLOR=#007700]+[/COLOR][COLOR=#0000bb]12[/COLOR][COLOR=#007700];
    }
    [/COLOR][COLOR=#ff8000]// if in 2nd slot   
    [/COLOR][COLOR=#007700]if ([/COLOR][COLOR=#0000bb]scope [/COLOR][COLOR=#007700]== [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]2[/COLOR][COLOR=#007700]]) {
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]pop[/COLOR][COLOR=#007700]();
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]active_filters[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]pop[/COLOR][COLOR=#007700]();
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]0[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000bb]_x [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]5[/COLOR][COLOR=#007700];
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]1[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000bb]_x [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]0[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000bb]_width[/COLOR][COLOR=#007700]+[/COLOR][COLOR=#0000bb]12[/COLOR][COLOR=#007700];
    }
    [/COLOR][COLOR=#ff8000]// if in 3rd slot    
    [/COLOR][COLOR=#007700]if ([/COLOR][COLOR=#0000bb]scope [/COLOR][COLOR=#007700]== [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]1[/COLOR][COLOR=#007700]]) {
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]splice[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000bb]1[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000bb]1[/COLOR][COLOR=#007700]);
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]active_filters[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]splice[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000bb]1[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000bb]1[/COLOR][COLOR=#007700]);
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]0[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000bb]_x [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]5[/COLOR][COLOR=#007700];
        [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]1[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000bb]_x [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000bb]0[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000bb]_width[/COLOR][COLOR=#007700]+[/COLOR][COLOR=#0000bb]12[/COLOR][COLOR=#007700];
    }
    [/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_chan[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]filters [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#dd0000]""[/COLOR][COLOR=#007700];
    [/COLOR][COLOR=#0000bb]trace[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]curr_filters[/COLOR][COLOR=#007700]);
    [/COLOR][COLOR=#ff8000]//trace(_parent._parent.curr_filters);
    [/COLOR][COLOR=#0000bb]this[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]_parent[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]removeMovieClip[/COLOR][COLOR=#007700]();
}; 
[/COLOR][COLOR=black]};[/COLOR]
[COLOR=#007700]gogo();
[/COLOR]

[COLOR=black]and then whenever you put gogo(); the code will be the same and reusable[/COLOR]
i hope this is right :smiley:

so i would call it from my external swf like this _parent._parent.gogo(); but the “scope var” does not work…