ActionScript 3.0 :: How To Add Dynamic Names To MC's
May 27, 2010
I am trying to create a pretty simple image script for a flash website. What it does is to create a container named mc and then loads in an image into the mc from XML. It goes through the XML file like in a for each loop. But the problem I have is that every image container then gets the name mc. So then now when I try to build the function which makes it possible to press on one of the image containers to enlarge them, it only makes the last image larger since that is the last one to be created with the name mc. So how do I give every movieclip that I create a different name such as mc1, mc2 etc.[code]
Ok, Background. I have two objects both of which im spawining in though code. We will call them bullets and wolves. They have their own .AS files which tells them everything they need to know about themselves. I figured i would do most of the hit testing on the bullet.AS file, hit testing against the wolves as there were going to be a set number of wolves but not a set number of bullets.o, I named them by running a loop and putting the linenewWolf.name = i.toString();Yes, new wolf is a declared variable, and i is the name of the variable that makes the loop run. I also have a test in it, and it works fine.
However, The hit testing is where i come into an issue. Remember, its on a seperate .AS file. The wolf maker and namer is on the main flash page.The hit testing function isif(this.hitTestObject(a)){i changed up my variable name to run a second loop. first variable name is "i" and the second variable name is "a"And for some reason i get a type error 1034, which from what i understand is an error that you get when two instance names are the same. Also, If possible, i would like to add letters to the name of the object, but im not sure if flash will let me as i belive the code would look something like this
I was wondering if it was possible to create the name of a NEW array dynamically. I have tried the following with no success. Does anyone know if this can be done?
Actionscript Code://Tried and failed_global["newArray"+newArrayNumber] = new Array();//Tried and failed_this["newArray"+newArrayNumber] = new Array();//Tried and failednewVariable = _this["newArray"+newArrayNumber];newVariable = new Array();
I have an array that houses the names of six movieclips. I randomly select three of them. I am trying to get my randomly chosen movieClips to do what I want them to do. I have tried the following code to get the first to fade in:
[Code]...
But it does not work. The trace comes back with the full movie clip name ex: mcTom, but even though that value comes up in the trace, the AS doesn't see it as a movie clip. Any thoughts on how I can correct this?
I am trying to simplify things by using dynamic MovieClip names. I have three MovieClips on the stage.
1) mcPage1 2) mcPage2a 3) mcPage2b
But my code isn't working. I'm guessing the "this" part is what is messing it up. Thinking that the computer doesn't know which MC is "this". It traces fine outside the function, but inside the function it traces undefined.[code]
Is it possible to have dynamic sprite names? For example if I am constructing a tile map from an array how can i give each sprite object a different name and referense it later?
All the nav links are correct but i am having problems with the background color and placing the submenu nav links.For the background color i am have created a function drawBG. At the moment i have set the name static, but i realise that sometimes i have 3 submenu.So i can't use the same name over and over again. How do i create the names dynamicly for say 3 submenu'sso i have something, likemainMenuBG - submainMenuBG - subsubmainMenuBG - subsubsubmainMenuBG
This should be simple but I can't come up with or find the answer anywhere. All I want to do is create a series of Arrays with instance names generated on the fly. I then want to reference these later. I have a "for" loop with a variable "count" that I want to add to a base name of rowArray and use the result to create an Array. I would think that it would look something like this:
I have an array of data that I'm using to create thumbnails and labels I'm using "Loader" to load the thumbnails (sample code below) but what I'm wondering is how I can make the name of the loader dynamic so that each child gets named "image1, image2, ...". I tried adding "[i]" after the "image" for each item in the code but it complained about missing semicolon before left bracket.
var image:Loader = new Loader();var target_image:URLRequest = new URLRequest("images/" + xmlData.Product[i].id + ".png");image.name = "image_"+[i]; image.load(target_image);
How do you make a new instance of a class with a dynamic name.
var dynamicname = new dynamicname()
i try something
var this["test"]:Class = new ["Test"]()
but offcourse its not this...
I need this couse i have a librairy with SWC fonts they are only reference.. I get the font name from a CSS file and after i need to make a instance of the SWC file so the font is embedded.
This is an example of the kind of issue I'm trying to solve. Say I'm looking to set 10 text fields (text_field_1 to text_field_10) within my movie clip 'myMovieClip' to the value of i. Now if the for loop and the text fields are in the place (_root) all I would have to do is:
Having a problem with a Flash/ASP/Database project.I've seen tutorials that pulls address book listings dynamically from the DB. When you hit "next" button it just populates dynamic text fields with variable names like "name" "address" with the appropriate info. Problem I'm having is.. what if you want to display all the entries on the same screen.If the variable names on the dynamic text fields are hard coded named "name" "address" "phone number" etc. , how can the second set of info display underneath the first one properly and not just pull the same text from the first record into the text fields? (name2, address2, etc.)
Is there a way to dynamically change the variable name of a dynamic text field? I'm thinking you should be able to have it note how many records there are, then loop until it reaches the end of the record set. So, can the variable names be dynamic so it will populate the text fields with the appropriate info?
I have 50 movie clips in the Library that use Linkage to set the Class name to: Img1, Img2, Img3, ..., Img50. I have a parent class named RandImg. I want the constructor for RandImg to randomly select one of the 50 movie clips from the Library and display it. I could get this working by generating a random number, and then writing a really huge switch statement to associate each possible random number with its respective Library Movie Clip Class name, but I would much rather do this with a dynamic/variable class name based on the random number, such as:
I am making an XML multiple-gallery flash site for a client. The chunk of code I am having trouble with is populating the thumbmails section of the site with all the pictures in all the galleries. The image paths are brought in and stored in an array - one array for each gallery's image paths. The problem is that when I try to cycle through all the images to put them into movie clips (using a fore statement) I am having trouble dynamically addressing the arrays. More specifically, flash interprets them as strings, and does not evaluate the variables in them.
Code: function images(i){ var temp:Number = eval("g"+i+"im.length"); for (var r:Number=1; r<=temp; r++){
[Code]....
The argument images() takes is the gallery number (from another function). I have tried using eval() and trace to see what the problem is. Basically I can make it output the correct STRINGS, but flash will not convert the variables in the strings! So in the URL (first arg) of loadMovie it is seeing something like "g2im[3]" as a string, and not evaluating it to the value at index 4 of that array.
I need to create dynamic arrays with field names loaded from a database. So, the names for the fields will be always different.Then, suppose I have the names "product" and "color" to create the following array structure dynamically:var myarray:Array = new Array;myarray[0] = ({product:undefined,color:undefined});But in other ocasion, the names may be say "brand" and "model", so the array will be:myarray[0] = ({brand:undefined,model:undefined});
I'm looking to get some information on something I've been wondering about for a while now. Is it possible to call a dynamic movieclip? Here's an example: I have 30 movieclips all named sequentially: A001, A002, A003, etc. I want to make a listener to dynamically know if I've clicked any one of the 30, but also know which of the 30 I've clicked.
You know, to avoid writing 30 variations of a listener. (not to mention that I have 5 categories to do this for, meaning there are 150 in total) Perhaps what I would need out of it would be the number value, as well. To perhaps place that in a variable after it has been recognized, so I can use it in the function.
I've got an array (slides) that I parsed from an amfphp return that contains the following data in each array element: slides = (chapterName, lessonName, slideName, slideText), for every slide in the course
I'm trying to get arrays out this that will look like: chp1Array = list of Lesson names in that Chapter chp1Less1Array = list of slide names in that Lesson chp1Less2Array chp2Array chp2Less1Array chp2Less2Array chp2Less3Array etc. etc.
This wouldn't be a problem in as2 but I can't get it to work in AS3 because it gives me errors when I try to create the arrays with dynamic names from within the function? How to get the dynamic number into the array name...
am trying to load xml and make button for its length, and try to make function for each button i have i make buttons and i give them a unique name , but i can't make function for every one?here is the code
///////////////////////////// var xmlLoader:URLLoader = new URLLoader();var my_Arr:Array= new Array();var arr_posX:Array =new Array();//= ["350","350","350","350"]var arr_posY:Array=new Array();//= ["80","120","160","200"]xmlLoader.addEventListener(Event.COMPLETE, showXML);xmlLoader.load(new URLRequest("Models.xml"));function showXML(e:Event):void { XML.ignoreWhitespace = true; var songs:XML = new XML(e.target.data);
When I use a Mouse Event listener with the trace function trace (e.target.name), why don't I get the instance name I assigned in the property panel? Instead I get something like "instance 12". How can I target Mouse Events using the names I assgn?
im trying to load xml and make button for its length, and try to make function for each button i have i make buttons and i give them a unique name , but i can't make function for every one ?
///////////////////////////// var xmlLoader:URLLoader = new URLLoader();var my_Arr:Array= new Array();var arr_posX:Array =new Array();//= ["350","350","350","350"]var arr_posY:Array=new Array();//= ["80","120","160","200"]xmlLoader.addEventListener(Event.COMPLETE, showXML);xmlLoader.load(new URLRequest("Models.xml"));function showXML(e:Event):void { XML.ignoreWhitespace = true; var songs:XML = new XML(e.target.data);
I am trying to create a new "BitmapData" object via a variable name. The following code is an example of what I am trying to do, but of course it doesn't work. Code: import flash.display.*; this.createEmptyMovieClip("bmp1", this.getNextHighestDepth()); var BitmapNAME = "bmpData1" var BitmapNAME:BitmapData = new BitmapData(200, 200, false, 0xaa3344); bmp1.attachBitmap(bmpData1, 2, "auto", true);
I create X instances of a class (called SM) depending on a varibale I have (called here howmany), but later on as I want to check their states with a while, I need to have diferent instances names (sm1,sm2,sm3...).[code]
I have a flex application that reads from external XML file(URL loader) and displays graph. My xml file is dynamically generated using PHP and the filename=currentloggedin user name(i.e. username.xml).How should I load the xml into SWC? Will Flashvars work? I have a HTML page that has PHP code to get username and the same file embes the swc. How to pass the PHP varibale to my SWC?
I have the following code below which creates two movie clips on the stage dynamically. How would I give the two movie clips different instance names, so I can add separate event listeners to them?
ActionScript Code: for (var i:uint = 0; i < 2; i++) { var my_box:Box = new Box();