Creating Variables Dynamically Within A For Loop?
Jan 24, 2010I need to make new sprites on-the-fly within a for loop, and this code does not work:
Code:
for(var i:int = 0; i<5; i++) {
var this['menuBtn'+i] = new Sprite();
[code].....
I need to make new sprites on-the-fly within a for loop, and this code does not work:
Code:
for(var i:int = 0; i<5; i++) {
var this['menuBtn'+i] = new Sprite();
[code].....
i am loading several images from an XML path into a flash movie and i want to dynamically create image loader variables for them. Here is my code so far:
Code:
var xmlData:XMLList;
var myXML:XML;
var xmlLoader:URLLoader = new URLLoader();
[Code]....
method and this doesn't work for me either, i'm guessing thats because it is in the AS2 forum.
I've created a basic function that sets a movieclip to a certain state depending on which mouse cursor is set (determined by a variable called txt_cursor). I can hard code this to work great for the one single movie clip but potentially have to do this for 624 other movie clips so obviously want to create a for loop to reproduce this.
Code:
chk1.onRelease = function()
{
[code]........
i'm loading several sound files, and want to error check each load. however, instead programming each one with their own complete/error functions, i would like them to all use the same complete/error handler functions.
a successfully loaded sound should create a new sound channel variable, while an unsuccessfully loaded sound will produce a simple trace with the name of the sound that failed to load. however, in order to do this, i need to dynamically create variables, which i haven't yet figured out how to do.
here's my code for my complete and error functions:
function soundLoadedOK(e:Event):void
{
//EX: Sound named "explosion" will create Sound Channel named "explosionChannel"
var String(e.currentTarget.name + "Channel"):SoundChannel = new SoundChannel();
[Code].....
After loading the movieclips and text boxes dynamically I now need to get the movieclips to perform a unique function when they are pressed, for testing purposes I am using the getURL funciton and linking to the boxNo. This is just so I can see what is going on!At the moment they are all linking to the boxNo that is pulled from the last run of the loop.
for (var i = 0; i < loc.length; i++)
{
var boxNo = loc[i].location_ID;;
[code].....
Still learning how to use for loops, I want to set a huge range of Boolean Variable to false. like:
var met0:Boolean = false;
var met1:Boolean = false;
var met2:Boolean = false;
etc... etc...
how can I dynamically name variables inside a for loop and set its data type? I know how to with movieclips but can't get it to work with variables
The label variables are null at the end of the loop. This has worked for be in the past. What am I missing?
[code]...
I have the code below but I need to generate it with a for loop. What is the proper way to do this? I don't initially know how many points i will have. I just want to create a for loop to loop through a variable that holds the point count such as "var totalPoints=10"
//1
var p1oint = new Point();
points.addChild(p1);
[code]......
Here is the structure of the XML file: PHP Code: <xmlfile><page></page><page> <source></source> </page></xmlfile> Some "page" nodes contain the extra "source" node. What I'm currently doing is looping through all the page nodes and looking for any source nodes. If there is a source node, I create a variable, and want to assign it a value of the contents of the "source" (HTML).
[Code]....
I am reading in collection objects from an XML file. Each collection has an img field that stores a URL to the collection image. So I am trying to load the images of each collection, storing each image in a MovieClip, and add these MovieClips to the stage. However, my problem is that after adding a MovieClip (with the collection image) to the stage, when a new MovieClip is created in my 'for each' loop it overrites the previous MovieClip. So the images I am adding to the stage are being replaced by the following collection's image on each loop iteration. What can I do to avoid this?
Here is my code...
var collXML:XML = IXml(assets.collections).xml;
var collNodes:XMLList = collXML.children();
for each (var collInfo:XML in collNodes)
{
[Code].....
I using a loop to dynamically create some movieclips and then position them using the ._height and .width values.
When they are created I use a Listener and LoadInit, to check that everything has loaded. I do this because I want to be able to access the ._height properties of the movieclip in order to place them next to each other and centre them vertically.
If I place the following 3 lines outside the function:
inBead._x = currentPosition;
//gets the start position
currentPosition = currentPosition+Number(mainLoader._width);
//gets the position and adds the width of the movieclip
[Code]....
I'm still a noob with flash. But I'm attempting to make my website using itSo far I haveseveral swf files that are all loaded into a "index" swf file.So all the code needs to work with that chain of MC's:_root.LoadedContent_mc.LoadedContent2_mc.Page1_mcThats the path to where I am working..Page1:I'm attempting to create a downloads list here. I have a phpfile already worked out that scans the directories "downloads" and "imgs", and generates a list of file names. It then formats each file name into a path to that file. And turns each path into a variable that can be loaded into flash.So basically after php does its thing we are left with this:
Code:
File1=Pages/PageData/Page1/Downloads/SomeTextFile.rar&File2=Pages/PageData/Page1/Downloads/SomeTextFile1.rar&File3=Pages/PageData/Page1/Downloads/SomeTextFile10.rar&File4=Pages/PageDat
[code].....
I'm currently creating an app which allows users to select blocks of text from a List and dynamically create a TextField on the stage.I'm calculating the height of the TextField and positioning the next TextField beneath.I'm also recording the total heights of the TextFields so that I know when the total height exceeds the available height, at which point I move the x position and reset to y position to zero.
When the next TextField will exceed the available height I want to split it into two, so I'm calculating the remaining height, making the TextField.height into the remaining height.when I try to get the position of the last visible line.If I have the TextFieldAutoSize as LEFT, then I can dynamically generate the heights of the TextFields.For the final TextField in the column I need to set TextFieldAutoSize to NONE so I can change the height of the TextField. i.e. I don't want it to autosize.However, bottomScrollV returns the total number of lines, not the last visible line.
I can create the required behaviour in a separate doc but when I copy the code into the loop it fails.Here is the code.
Code:
public function buildTextFields() {
3 columns (I'm calling them TextBlocks)
// so the first is 0;[code]....
How can I make a bunch of variables from a for loop. for example for (var i=0; i<total; i++) {var bunch(i);}. that i make a bunch of variables named bunch1, bunch2, bunch3. I keep getting errors. I program and use so many different languages that I dont know if that can be done with AS3. my only other alternative i can think of is to create some sort of event dispatcher object array. but I dont know how to get them all to send events to one listener with there index number.
View 5 RepliesSay, I had a loop in a function...
[Code]....
How would I refer to a in another function
I am trying to create functions using a for loop for my buttons' over and out listeners.I would like to stick to a naming convention but it does not seem to work. I am trying to create 10 buttons with function names like btnOver1, btnOver2, etc...
Code:
for(var i:int=0;i<=9;i++){
function btnOver[i](e:MouseEvent):void{
[code].....
Does the set() function for dynamically creating variables have a substitute in AS3?
This is a generic example written in AS2:
I'm trying to create a for loop to set the color objects outlineColor1...100 to the value defined in variable _root.outlineCol. Everything works fine when I set the color to these objects via 100 lines of code but I'd like to replace them with a for loop of course. I suspect the syntax in the first part of the second line is incorrect but I'm not sure.
for (var i:Number = 1; i <= 100; i++) {
outlineColor[i].setRGB(_root.outlineCol);
trace(i);
}
Everything works fine except MouseEvent.CLICK addEventListener.menuInfo variable contains part of defined instace name.cURL contains full URL to link.If I trace menuInfo variable, it outputs correctly in order as I exptected.But last event overwrites everything to last element of xList (contains XML list).How do I make this work correctly
Code:
function createMenuEventListener(xList:XMLList):void
{
[code].....
My master timeline is 128 frames long, I want the timeline to play from frames 1 to 128 once and then from frames 64 to 128 three or four times before returning back to frame 1 and starting the whole sequence again so I end up with a continuous loop that consists of the full animation once and the second half 3-4 times all repeating endlessly. I've been reading about "for" loops and guess this is what I need to use but I don't quite get how to set it up, how I'd set up a counter to count the repeats, and how it would reset etc.
View 5 RepliesI'm trying to create a vertical column of images in a mc that can be clicked. I've added listeners to reposition them once they load, but right now they are overwriting each other. I'm not sure how to rename the object and listener vars for each iteration. [code]...
View 1 Repliescreating multiple arrays in a for loop? This doesn't work :
for (i=0; i<catNum; i++) {
var arr(i):Array = new Array ()
}
[Code].,...
This piece of code gives me an error because i have an equation on the left side of the equal sign, logically it makes sense, but flash doesn't like the code how would i do some thing like this?[code]
View 2 RepliesIs it possible to use a for loop to "combine" array variables..g.
Actionscript Code:
var myArray1:Array = [1, 2, 3]; var myArray2:Array = [1, 2, 3]; for (var i:Number in myArray1 && var i:Number in myArray2) //is something like this possible? { ...
[code].....
How am i to get the variables zombData.zomb0, & zombData.zomb1 from inside the "for loop"
I want this trace command dynamic
Quote: trace(zombData.zomb+i);
it works when i put zombData.zomb0 (a variable sent from a PHP script)but if i want to make it dynamic how it is; It fails & outputs NaN How do i make it dynamic for the loop?[code]...
I have 24 movie clip buttons. Named "btn1" through "btn24". I can't figure out how to return the variable as a number that cooresponds to each button onRollOver.
[Code]...
i'm trying to use a for loop to generate for me a set of vars, but it's not really working out. =.=.
I'm loading the image file names from a xml, and i want that the for loop create vars like "fotoToLoad0, fotoToLoad1 ..." and load the filename within.
I guessed i had to use the eval command, but as far as my ignorance sees it, when it is used, the eval makes a variable reffer to another and not fill it's value. (I guess i'm wrong thou).
Here's what i've tried so far:
Code:
for (i=0; i< totalNodes; i++){
var fotoEnd = imagesXML.firstChild.childNodes[i].firstChild.firstChild;
var fotoTemp = eval ('fotoToLoad'+i);
fotoTemp = fotoEnd;
That's quite not working thou =(. If i try used 'fotoToLoad1" for example, in a text box it just returns undefined
I was wondering if it would be possible to use a for loop to create a couple hundred variables. I wanted to do this so I wouldn't need to type everything out. Right now it looks like:
Code:
var cardname1:int = 0;
var cardname2:int = 0;
var cardname3:int = 0;
[Code]....
Is there a way to create all of these using a for loop?
using flash to create XML, and most tutorials I find on the subject deal with opening external XML files and parsing them in flash, not using flash to make them.Here's my code:
Code:
function saveSong(e:MouseEvent):void
{
for(var i = 0; i < myStaff.staffArray.length; i++)
[code]....
What I am trying to do is create a <measure> element for each item in my array, and then 8 <line> elements in each measure. I'll populate these <line> elements with data later.
Here's what the trace is giving me:
<song>
<measure>
<line></line>
[code]....
The problem I have is that empty space in the first line of <measure>. How do I prevent this from occurring? I can see I will have the same problem when I go to populate the <line> elements as well.
I'm trying to create a template for a drag and drop question. I want to assign which option belongs to the correct target.Each draggable option is called "drag1, drag2, drag3, etc.". (created on the stage) Each target is called "target1, target2, target3, etc." When a button is clicked, the correct answer is checked using a simple if loop and the user is told which ones are correct.
Code:
if (drag1._y = target1._y) {
//show if correct or incorrect
[code].....