PDA

View Full Version : slight twist on casting movie clips question


amerywu
05-23-2005, 05:25 AM
I have a class that extends MovieClip. It has a dynamic textfield that I want to fill in at runtime.
The trouble is that attachMovie and duplicateMovieClip insist that they return a MovieClip so I cannot invoke the method setNumber() in my extension class Numero.

Here is my MovieClip extension

class com.jakestone.rith.view.Numero extends MovieClip
{
private var numero:Number;
private var numero_txt:TextField;
private var numeroover_txt:TextField;
private var numerodown_txt:TextField;
function Numero(ini:Number)
{
super();
//numero=ini;
numero=5;
numero_txt.text=numero+"";
numeroover_txt.text=numero+"";
numerodown_txt.text=numero+"";
}

function setNumber(ini:Number)
{
numero=ini;


}

function onRollOver()
{


this.gotoAndPlay(2);
numeroover_txt.text=numero+"";


}

function onRollOut()
{



this.gotoAndPlay(1);
numero_txt.text=numero+"";

}


}

And here is the class that calls it.


private var numero_mc:Numero;
private function setNumbers(
var i:Number;
var xpos:Number = 50;
var ypos:Number = 400;
for (i=0; i<10; ++i) {
var piece_mc:Numero = numero_mc.duplicateMovieClip("numero"+i, this.getNextHighestDepth());

///the above line fails as it is forcing us to use the Numero class

piece_mc._x = xpos;
piece_mc._y = ypos;
piece_mc._visible = true;
piece_mc.setNumber(i);
pieces[i] = new Object();
pieces[i] = piece_mc;

xpos += piece_mc._width+10;

myMC=createEmptyMovieClip("clip",1);
}
}

sleekdigital
05-23-2005, 01:58 PM
You should be able to cast it like this ...
var piece_mc:Numero = Numero(numero_mc.duplicateMovieClip("numero"+i, this.getNextHighestDepth()));

I've done this succesfully with attachMovle, but I have never tried it with duplicateMovieClip