Problem implementing setInterval in a prototype

Hi. I’m trying to write a prototype function that will use setInterval. The following script defines a simple movieclip prototype that traces the clip’s x position when called. The function works fine when called explicitly ( _root.foo.trace_x(); ), but does not when called by a loop.

There are three clips on the stage, their instance names are foo, man, and chu. I created an array so I could loop through and have each one run the trace_x function once.

Here’s the code:

 
clips = Array('foo', 'man', 'chu');
num_clips = clips.length;
//
MovieClip.prototype.trace_x = function() {
	trace(this._x);
	clearInterval(this.click_timer);
};
//
for (i=0; i<num_clips; i++) {
	current_clip = clips*;
	delay = 1000 * (i + 1);
	_root[current_clip].trace_x_timer = setInterval(_root[current_clip].trace_x, 1000);
}

The output should be like this:
123.45 (x value of foo clip, traced after 1 second)
854.24 (x value of man clip, traced after 2 seconds)
453.29 (x value of chu clip, traced after 3 seconds)

but instead, the output is “undefined” over and over and over.

An example .fla can be found at http://rgcreative.com/transfer/prototype_and_setinterval.zip

Thanks for any help!