ActionScript 3.0 :: Iterate Through A For Loop Leaving One Index Out?
Mar 20, 2012I often need to set the alpha of all but one of a list of objects.
Code:
beastie1.alpha = 0;
beastie2.alpha = 1;
[code].....
I often need to set the alpha of all but one of a list of objects.
Code:
beastie1.alpha = 0;
beastie2.alpha = 1;
[code].....
I am trying to figure out how to call an onComplete function without leaving the code loop (because the vars are no longer recognized with the hand-off). I thought this might work:
[Code]...
Consider an array with x number of elements (of type Object) where some of the elements might be undefined.I use a for-each loop to access all the elements of the array that is not undefined (since it simply skips the undefined elements).But I also want the index of that particular element.The only option I can see is to use indexOf(). But it feels a bit like looking for water on the other side of the river so to speak.
When looping through long arrays each frame, is there a change indexOf() might slow it down? or does the for-each loop somehow know what index it's dealing with?
Consider an array with x number of elements (of type Object) where some of the elements might be undefined. I'd like to use a for-each loop to access all the elements of the array that is not undefined (since it simply skips the undefined elements). But, I also want the index of that particular element.
So I have two options:
1) Use array.indexOf(element).
2) Use traditional for loop, thus getting the index out of the iterator.
I'd rather not use option 2 since it contradicts the whole idea of not having to deal with undefined elements.
I have tried this:
PHP:
<?PHP
$link = mysql_connect("localhost","root","");
mysql_select_db("dbname");
$query = "SELECT * FROM dress where dress_type='shirts' AND sex='male'";
$results = mysql_query($query);
[Code]...
how to have control over the strings in the for each loop?
I search the stage for the level I created and put the floor pieces into an array. I'm trying to test the properties I created for each piece by tracing to output when the hero sprite is within the floor pieces sides. This works fine when I specify the array index to do this for, but does not work when I try to loop through every element of the array. I see no reason why this code should not work.
package {
import flash.display.*;
import flash.events.*;
import flash.utils.getTimer;
import flash.utils.Timer;
public class MegaManTest extends MovieClip {
private var hero:Object;
[Code] .....
I have used the flash accessibility tab to add index numbers to 19 elements on my page.However, once I reach tab number 19 I cant get it to loop back to tab index number 1.
View 4 RepliesUpon the stage of my flash movie, I have several symbols (movie clips) which I need to address dynamically using a loop. The symbols that I want to address all have instance names beginning with the string "lamp_", they then each have a different number concatenated on the end to distinguish between them (e.g. lamp_1, lamp_2, lamp_3.....).
The following noobish effort I have devised is totally useless, and I am hoping someone can show me how I might get this working[code]...
So, for sending to individual streams we have to reference the connected netStream we want to send to in some way like this:
sendStream.peerStreams[0].send("MyFunction",param1,param2);
and I have to determine which peer I'm sending to by their ID such as "peerID1234"
I know that you can check the peerID of the stream by doing:
sendStream.peerStreams[0]["farID"]
how can I make my send stream function know to use the array index where the peerID is?
so basically it could be like:
sendStream.peerStreams[where peerStreams[]["farID"] == peerID].send("MyFunction",param1,param2);
Is it possible to execute a "foreach" through each of my SharedObjects?
Something like this . . .
_so = SharedObject.getLocal("test","/");
foreach (var item:Object in _so)
{
// print key name and value
}
How can I iterate through all the MovieClips in a MovieClip
View 2 RepliesWhat do you think is the fastest way to iterate across an array? To access and perform an operation on each element stored..
Is there a difference if your array is varied or if it only contains one class type
How can I iterate through all the MovieClips in a MovieClip ?
View 2 RepliesLets suppose, I have a class with so many public properties
class person{
public var address:String;
public var name:String;
public var fathername:String;
//etc etc
}
Now i want to iterate over them in a simple way like
for (var key:string in person){
trace("property is " + key + " and value is " + person[key]);
}
But AS3 doesnt allow this to do with Classes
what would be the better and simple way to iterate over them as i dont want to do so many if(else) on it.
I have an created an associative array of MovieClips, but when I try to iterate through them, the for loop never gets entered (nothing gets outputted). It's like as-if the Array is empty.
var navItems:Array = new Array();
navItems["home"] = item_home;
navItems["featuredfilms"] = item_featuredfilms;
[Code]....
Say, for example, I have a car on a flat plane. It can move either left, up, right or down. I also have 10 obstacles on the stage. Each time the car hits one of them it should automatically turn to avoid it. I could loop through each obstacle and check if it is colliding with the car but a better approach would be to make an obstacle class that checks if the car is going to collide with that obstacle and if it does, make it change direction. My problem though is what about if I had 5 cars? Would the obstacle class have to loop through each of the cars to check if any are colliding with it? My main concern with this is how much the performance of the program would be affected. I imagine with only 5 cars the difference would be insignificant, but what if I had 1000 cars and 1000 obstacles? Going back to the first example, it is easy to see how you can use a class as opposed to using a loop but with the second example, I just don't know.
View 4 RepliesIs it possible to iterate through a MovieClip's child MovieClips?
Lets say I have a MovieClip "a_mc" which itself is made up of n number of child movieclips. Is there a way to iterate through all the children without creating an instance for each one?
I would like to know is there a way to iterate through all parents in a display object.I need to do this because i am loading swfs to application and swfs have different number of nested movieClips and i would like to be able to access loader properties like width and height dynamically from within any depth.
View 2 RepliesI am using Flex dictionary to store ValueObjects with Timestamp as the 'key' for each object.
Given a timestamp, I want to iterate over the dictionary starting from the given timestamp key value.
The Docs discuss the following for dictionary iteration, but this iterates from the first key-value pair.
for (var key:Object in myDictionary)
{
trace(key, myDictionary[key]);
}
I'm accessing the classes from an externally loaded SWF so that I can "skin" SWF applications at runtime. Everything works fine but I'd like to make it as dynamic as possible and allow developers to access all the class definitions in a loaded SWF without having the FLA file or a list of their names.
[Code]....
I am iterating through aChildObject which extends ParentClass. however the props from the parent aren't showing up.
View 4 RepliesI've got a loop which creates a movie clip for each day of the month and lines them up. so, depending on how many days are in the current month, the counter var for the loop is 28, 30, or 31.
Code:
for(var j:Number=1; j <= lastDay; j++){
// Create the Empty Movie Clip
_root.createEmptyMovieClip("dateClip"+j,300+j);
var dateClip:MovieClip = _root["dateClip"+j];
Within this very same loop I am also using the same counter var (j) to iterate thru an array that is created from parsing my xml file. Now, I don't have 28, 30, or 31 dates in my xml file -- just about 4 or 5. so if i trace out this array I'll get values for the first 4 or 5 positions but then a series of 'undefineds' for the rest. that's normal, right?
Code:
trace(ArrDate[j].attributes.day);
The problem comes when I try to target the movie clip instances based on the "dateClip" and the "ArrDate". Here it comes up totally undefined in all circumstances.
Code:
trace(dateClip["thisDate"+(ArrDate[j].attributes.day)]);
I can trace out dateClip and I can trace out the ArrDate (even though it returns only 4 values and the rest undefined).
Question regarding math: I am trying to interate through an xml set (the xml will constantly change) and display 6 items at a time. If the total from xml is not divisible by 6 and lets say 4 left from the array, only show 4 and set the other attached mcs to false. I am adding them via attachMovie and basically do not know how to set up the math on it, can anyone shed some light?
View 9 RepliesI would like to know is there a way to iterate through all parents in a display object. I need to do this because i am loading swfs to application and swfs have different number of nested movieClips and i would like to be able to access loader properties like width and height dynamically from within any depth. How can i do that?
View 13 RepliesI'm trying to optimize a site I'm building with Django/Flash and am having a problem using Django's iterate over chunks() feature. I'm sending an image from Flash to Django using request.POST data rather than through a form (using request.FILES). The problem I foresee is that if there is large user volume, I could potentially kill memory. But it seems that Django only allows iterating over chunks with request.FILES. Is there a way to:
1) wrap my request.POST data into a request.FILES (thus spoofing Django)
or
2) use chunks() with request.POST data
I'm trying to build a small app that will iterate through an array of sound files to see if they are valid.I'm simulating corrupt sound files by taking .png's and changing the extension on them to .mp3 The idea is a sound will start playing and the timer will start. When the sound is done playing the next sound will start and the timer will reset and start counting down again. If a sound does not finish within 45 seconds the timer will complete, output the name of the file that did not finish, and then skip to the next file. For some reason though the timer does not reset when the sounds finish playing, it just keeps counting down from wherever it is.
Code:
import flash.display.Sprite;
import flash.net.URLRequest;
import flash.media.Sound;
import flash.media.SoundChannel;
[code]....
I think it would be simplest to explain it like this:
[Code]...
Im pretty sure Im not going about this the right way... but anyways If you move to the left or right, the front triangle is supposed to have its points redrawn to locked positions inside the player, but for some reason it is leaving artifacts and Im sure its some redundancy in my script that I don't see...here is the script executing the redraw...
Actionscript Code:
function reDrawFront() { var temp=frontLockright.localToGlobal(new Point(0,0)); var temp2=frontLockleft.localToGlobal(new Point(0,0));
[code]....
From my flash "home" frames, I have 4 buttons that take the user to different places on the timeline. One frame on the timeline includes a carosel of pictures that rotate and looks nice. I downloaded the carosel actionscript and xml documents online, I did not build them myself. Now, when I hit the "home" button to get back to the home frame, the carosel still lingers around. I would like to know how to hide it, or make it not come back at all when coming back to my "home" frame.
Here is my actionscript inserted in the frame:
import mx.utils.Delegate;var numOfItems:Number;var radiusX:Number = 1000;var radiusY:Number = 30;var centerX:Number = Stage.width / 2;var centerY:Number = Stage.height / 2;var speed:Number = 0.9;var perspective:Number = 130;var home:MovieClip = this;var tooltip:MovieClip =
[Code]....
i want to stop a video from playing,when leaving a framei tried to use SoundMixer.stopAll(); but it only stops the sound, i think my video is still streaming in the background because im starting to notice performance problems when i go back and open the video againthe website gets very slow.
View 5 Replies