ActionScript 2.0 :: F8 Using Array To Repeat A Function For Several Movieclips
Nov 5, 2009
I have a simple function on the main timeline which applies to 50 moveiclips, named MovieclipA1 to MovieclipA50. [code]The code is the same for all 50 mc's. All that changes is the 'A1' which become A2,A3,A4,A5 etc.Is there anyway to avoid writing this code 50 times, perhaps using an array which contains A1 to A50?
I'm trying to apply a function to an array of movieclips, rather than have to type out the function for each one. So, if my movieclips were mc1, mc2 and mc3, I would have:
Code: function Invisible (movieclip){ movieclip._alpha=50; }
[code]....
This does not work - I still have to put Invisible(mc1) for each object to make it work. Is there a way to use arrays to do this?
I'm trying to find a function that will repeat my Rotational tween function. I found the yoyo() function to be what i want to do but i don't want the tween to change the rotation to CCW while originally moving CW. Basically i want the animation to move CW at a steady rate continuously.
I'm using the following code at the moment, i'm not too sure if this is the most suitable code for this situation, maybe im off track.
From my thoughts, i assumed that i would need to put the stars function in a onEnterFrame to repeat the animation and change yoyo() to continueTo() function. or maybe some sort of if statement in the stars function?
ActionScript Code: import mx.transitions.Tween; import mx.transitions.easing.*; var stars:Tween = new Tween(ring, "_rotation", Regular.easeInOut, 0, 360, 4, true);
I want it to begin at y=0 and x=0 after like 7 seconds and then repeat going down the y axis as you can see in the code.
So the car movieclip starts moving slowly from the top going down then after like 7 seconds when it's out of the scene it begins at e.g x=0 y=0 and going down for 7 seconds then starts at x=0 y=0.... etc, so it keeps looping.
I would like to be able to call a function from a movie clip so that the function repeats itself over a few different frames without having to be called again. I could have the function call itself according to an "if" statement but I believe that the movie will not go the next frame until it finishes all the cycles. So for example: The function makes the movieclip move over a few pixels but I want it to move over a bunch of pixels so as to give the illusion that it is moving slowly, I To do that the function needs to repeat until the movieclip moves the entire distance, but if that happens all within the function, at least as far as I have been able to figure out,
i'm using this code to for a button to make a MC "kids1" gradually scale to 300%, in 5% increments, but it only scales it 5% then stop, does anyone know how to make this function repeat until _yscale=300?
Code: on (release) { if (_root.kids1._yscale<300) { _root.kids1._yscale+= +5; } }
I'm doing a basic site with frame labels on the main timeline whose name corresponds to the btn names. A simple otoAndPlay(evt.target.name); I have a basic navigation setup of 7 mcs with mouse eventlisteners for CLICK, ROLL_OVER and ROLL_OUT.
Does anyone know a better way to do this so when my mcs are clicked they display the rollover content/art? In essence I'm trying to achieve that when the user clicks a btn it goes to that "page" and the corresponding btn stays highlighted. Pretty standard web navigation technique but I just don't know what the best way to do this in flash is and with how my site is setup.
I received help on this site on this info-graphic im doing and the solution was to use an "array" which im not familiar with at all. the person that helped me added the following code that worked:
var city_arr:Array = new Array("louisville");//filll that array with all nedded cities//make all the boxes invisible at startfor (i=0;i<city_arr.length;i++){ var [code]...
since i dont know how to use arrays im stuck. i need to add at least 30 more cities to my info-graphic but don't know how to use the naming conventions of an array.Only one of the houses works (when you click on it a pop-up appears, is draggable and has an x to close the pop-up)
I'm going to post the full code of the two functions, disregard the "fluff" unrelated to the two functions as it is all working flawless, I've tested this HEAVILY and cannot understand why it keeps setting the entire array to undefined!
Code: // processReplace Function function processReplace(transferFiles) { var processArray:Array = transferFiles.slice();
[Code]....
Basically it's supposed to check to see if the file exists and return as true if it does and add it to a replace array, then the replace array is processed into a single string and put into a dialog box through the flash wrapper prompting them to "replace the files or not".
It makes the replace array just fine, it actually even has the right "count" in it but it's setting all the "filenames" to undefined because of the exists = processSearch function.
I even tried to make a new array and run the search just from that one and set the values from the old one and it's still failing.
Is it because of the "break" or can anyone figure it out? Iknow it's hard because you can't use the code
Is it possible to load up an array with movieclip instances from the library and use that as a reference to go to a certain index, snag that mc, and display it on the stage?
I have 2 arrays i.e.:[code]Is it possible to set the color of the moviceclips (mcclipsArray) to the relevant colors from the second array (mcclipsColorArray), so movieclip a becomes blue, b becomes red etc.
I'm having problems making a loop of different movieClips. I've been able to find info about duplicating the same movieClip but I can't seem to get it to apply to this. This is what I am working with: I have 13 different movieClips of an animated character. They are titled montyDog_mc, montyBear_mc, montyCat_mc, etc. I also have a next and a previous button. What I need to happen is for the movieClip animations to cycle through, one at a time, each time the user clicks the next or previous button. I think I should be creating an array of some sort but I am very confused about how I list the movie clips in an array and apply it to the button.
This is what I have: montyArray = new Array(); montyBear[0] = "montyBear_mc"; montyBee[1] = "montyBee_mc"; montyCow[2] = "montyCow_mc"; montyDog[3] = "montyDog_mc"; [Code] ..... Am I targeting the movieClips properly?
Just started to make the switch from AS2 to AS3 and am having a few problems, most of which I've managed to fix but this one has got me stumped.
I'm trying to create some buttons dynamically that are spaced out evenly.The clip is in the library and exports as NavButton. I've created an array with all the button clips inside it. This is called navButtonArray and when traced shows the NavButton clips. My problem is when I try and add them to stage. I can't tell if it's only adding 1, or just placing them in the same place, or if it's continually replacing the previous navButton.[code]...
I'm creating multiple movieclips, containing a TextField and an image as a background. In order to keep track of them I'm storing them in an array. The problem is that I can't add the movieclip to the screen >.< What I'm doing is
PHP Code: addChild(movieclips[0]);
but it's not displaying. I know it's not the movieclip as I can addChild that and it shows, but trying to call it out of the array is not working and it's REALLY frustrating the nark out of me .How do I add the selected movieclip out of my array?
Ive created a array to hold an instance of the Zombie movie clip, the movie is given an instance of "Zombie" + 1, 2, 3..... But now i can't work out how to add the movie clips from the Array to the stage. [code]...
Is it possible to instantiate MovieClips that exist in the library (that have been exported for actionscript) with a for loop using an array that holds their link name?
var fruit:Array = new Array("apple", "banana", "blackberries"); for (var i:int = 0; i < fruit.length; i++) { var aFruit[i] : fruit[i] = new fruit[i]; }
I am trying to get a collision between an array of movieclips but it isnt doing well =S.Here is where I am now:
[code]....
This code works, but it is only colliding with one object. I have made an Array called: _root.enemyArray.I have tried to make an for statment inside the current one without sucess.
Anybody any ideas on how to remove children from stage using AS3 if I store the reference to the objects in an array and they exist in different locations i.e they are not all children of the same parent?
I was trying to make a similar thing with the game SameGame (ie. the block above the removed blocks fall downward). Before trying this with an Array that contains MovieClips, this code worked (tried it with int values). With MovieClips on the array, it seems not working the same way.With int values, example:
popUp(0, 4): Before: 1,2,3,4,5,6,7,8,9,10; After; 1,2,3,4 // Assume the numbers are movieclips XD
Basically, it strips everything else, rather than just the said block >_< Here's the whole method. Basically, two extra arrays juggle the values above the soon-to-be removed value, remove the value, then re-stack it to the original array.
function popUp(col:uint, row:uint) { var tempStack:Array = new Array(); var extraStack:Array = new Array();
I want to dynamicly add images from XML to movieClips and then add event listeners to these movieClips. What is the best solution? XMl loads correctly, it also add 2 movieclips on stage, but it throws errors when I try to add event listeners to movieClips. How could I do that? I want to go to different frames on release of some movieClips. How can I please recognise each movieClip and manipulate with that movieClip ? (resizing,...)
i have an error in my game project. i am trying to attach 5 different movieClips in an Array.but i dont want these movie clips to be appear on the stage when i attach these. but these movie clips appears on the stage as soon as loop executes.
here's the code:
var terrorists:Array = new Array(); for(i=1;i<=5;i++) { var terrorist:MovieClip=attachMovie("terrorist_"+i, "terrorist_" + i, i); terrorists.push(terrorist); }