ActionScript 3.0 :: Does The ForEach Method Modify The Array
Oct 5, 2009Does the forEach method modify the array
View 4 RepliesDoes the forEach method modify the array
View 4 RepliesI have a file with a many button instances, the names of which I've put into 2 different arrays. I'm adding an eventListener to each button dynamically using the forEach...in method. I want the buttons in the first array to call a function and the buttons in the second array to call a different function. I'm getting no errors on compilation, but my problem is that buttons in both arrays are calling both functions.
<code>
var btnList:Array = [bRed, bBlue, bPurple, bGold, bGreen];var greenList:Array = [gb1, gb2, gb3, gb4, gb5, gb6, gb7, gb8, gb9, gb10, gb11, gb12, gb13, gb14];
[code]....
I've got e website where the thumbnails for the gallery are dispaly using:
Code:
{foreach from=$product_images key=count item=imageArray name=images}
{foreach from=$imageArray item=image}
{$image.id}
{/foreach}
{/foreach}
and the <ul> list.
Now I would like to display it also on the flash presentation attached to this website.
How can I do it?
I'm passing variables from the wbesite to flash using:
Code:
<param name=FlashVars value="myVariable={$product.product_name}&item_no={$product.product_reference}&thumb={$image.id}" />
When I use '$image.id' without checking the Array it returns only the last image.
I am used to C# and XNA, where its very simple to go through all objects in a list or array.
I am trying to make a tile map, and have a 2D array of TileObjects.
how do i make a loop that goes through all object?
I'm wondering which is faster in AS3:
array.forEach( function(v:Object, ...args):void
{ ... } );
Or
var l:int = array.length;
for ( var i:int = 0; i < l; i++ ) { ... }
Rafael NĂĽnlist uses a swap or switch slide method to load each picture at a time. That means as soon as the second image appear infront of the first image, the first image will disappear. How do I prevent this? I want all the images to appear on the stage one at a
time? How do I modify his switchSlide method so that additional images will not disappear?
Does anyone know if it is possible to have an Array containing predefined variables - then modify a variable using the array?
For example
ActionScript Code:
var data1:String = new String;
var data2:String = new String;
[Code]....
This will currently trace 111 - can I get it to trace "Hello"?
I make a photo gallery. I populate the images (660 in total) by using push.Array I want to make an inputText area so everyone will be able to jump to photo number whichever they please. Example, if you type 258 in the inputdataText, photo258.jpg will load to the stage.
Below is the script my_ti is the instance for my text input components (using AS 2.0 and Flash player 6, CS 3)fotoke is the instance for my dynamic text. It tells the users which photo they're currently seeing.
Code:
this.createEmptyMovieClip("photo",this.getNextHighestDepth());
this.pathToPics = "data/images/";
this.fadeSpeed = 7;
[code]....
I am curious if this is an okay implementation of the Array.filter() method.
[Code]...
I was not able to figure out an implementation of the callback function for the filter() method, where the callback was outside of the getGallery() function. I wonder if there is a way to get the isGallery function outside of the getGallery scope?
I've been trying to move array elements from one array to another using the push method. The problem is that the element pushed should any longer be on the first array where it was taken from. That's where i'm stuck..
[Code]...
Is there a way in a forEach () to get the next key/value?
example:
var firstItem:Number;
var secondItem:Number;
var thirdItem:Number
[Code].....
how to get the next key/value while in forEach()?
I'm trying to get specific variables out of a for each loop. These variables are used to display a click event on a marker on a map. If you click the marker on the map, the details pop over it. Now these details are being overwritten each time the loop starts (50 times). The solution I'm looking for, let's me select a marker on the map with the according detail attached to it.
There might be an easy solution but I haven't found it yet.
The code : for each(artistXML in artistList.events.event)
[Code]...
I got a europe map designed in flash (1 movieclip, 1 frame, really simple), which contains the map as drawing objects directly inside the scene and in addition some specific countries as clickable buttons. So far it's working fine. What I need now is to make all the other drawing objects clickable without having to edit and script each object. I'm thinking about something like this (pseudo code):
foreach(obj in MovieClip) {
if(obj !typeof(Button)) {
obj.addEventListener(MouseEvent.MOUSE_DOWN, genericClickListener);
}
}
I just don't know the syntax how to achieve that.
I have an image slideshow program working right now and it takes in a folder of a hard coded in number of images. I would like to change this so that it can take in a folder and will display all of them no matter the number. Is there a way to do this in flash? I'm thinking something like the foreach loop in perl or other scripting language. It is possible to store then number of images in a text file but I also don't know how to read that in flash either. I'm working in actionscript 3.
View 2 Replieswas trying to get a prototype run from a foreach loop depending on instance name... but i stripped the code. Why wont this work?
[Code]...
I am working on some kind of framework, and trying not to "hard code" anything. My idea is to have few screens with background movieclips and messages. Every screen will have messages, but some screens will not have movieclips. So far my code look something like this and it works fine:
ActionScript Code:
var mySuperMsg:Array = new Array();
mySuperMsg[0] = new SuperMessage("Lorem ipsum ", new Point(100, 100), 1, 10, 1);
mySuperMsg[1] = new SuperMessage("Lorem ipsum dolor sit amet", new Point(100, 200), 2, 10, 1);
mySuperMsg[2] = new SuperMessage("Lorem ipsum dolor ", new Point(100, 300), 3, 10, 1);
myMsgScreen2 = new MsgScreen(680, 500, new Point(0,0), myBackgroundMc, mySuperMsg);
As you can see, MsgScreen have 5 parameters like width, height, location, background movieclip, and array for messages. SuperMessage class have it's text, location, and some textformat parameters. This works as I expected. Problem is that msgScreen3 will have some movieclips in it, and iIwant them to be in array also. with their locations and so on...I cant set default value to array, so I cant get with putting 6th (default) parameter and only putting 5 when I don't need it. How to overpass it.
I understand the Array Method:
arrayname = new Array();
arrayname [0] = "Text"
arrayame [1] = " Text2"
And have it randomly pick one via a clicked button or what have you, but how do I have these effect variables? We have randomly selected from one in the array, how do I make it so once it selects one of those, it effects one variable, and if it goes to another one effecting another variable + - or what have you, without using if statements?
I got a class extending the array. np there when I instantiate a new object from the class I call it myArray (var myArray:NewArray = new NewArray(); ) now what's the fastest way to fill the new object? All I could find is
[Code]...
Anyone have a method for swapping items in an array?
View 4 RepliesMultiple value passing Querystring using flash array method into asp file ?
trying to work with the code but not passing any value ?
Code:
for (var i = 0; i<newArray.length; i++) {
var num = i+1;
pas["n"+num+"="] = newArray[i].name;
[Code].....
how to pass multiple querystring to html or asp ?
I am populating an array employees (shown at the bottom) with data from a MySQL database table. To locate employees that statisfy a complex criteria, I am using a loop like so:
var emplyees:Array = new Array();
var i:int;var counter:int=0;for (i=0;i<employees.length;i++){
if((employees[i].city=="London")&&(employees[i].age<30)){ counter=+; }}if(counter==0){ trace("No such emplyees")}else{ trace("Found "+counter+" employees.")}"
It works fine, but I think it is cumbersome and potentially slow with large amounts of data. Is there a better way of doing this?
[Code]...
Is there any method/function to convert XML to an associative array?
View 1 RepliesLet's say I have a utility class that contains a static method. This method runs some math on the arguments passed to it, then returns an Array.
Example:
Code:
// within the utility class
public static function getPoints(num:Number):Array {
var ar:Array = [];
[Code]....
Is it possible to refference a movieclip in an array and then calling a methodfor ex.The movieclip i want to refference: main.box.mymovieclip
var current:array = new array();
push(main.box.mymovieclip);
and then like calling a method on it:
[code].....
how to deal with unsorted arrays to get the next higher or next smaller value?
var _myArray:Array = (1,pizza,2,6,8,test,11,16,17,cola)
_myArray.splice(4,1) // > remove number 8 !
trace(_myArray) // > array contains now: (1,pizza,2,6,test,11,16,17,cola)
how can i get the next higher value (= 11) ?
I have a drag and drop game. You listen to a sound for exampl "bread" You proceed to drag that mc to a box. If it is the right object I want to remove that mc and splice the array so it doesn't choose that object anymore. However I have notices two things.
When I splice(0) a specific element - then nothing works. When I splice the cuurent indexed element ie: the last element to get right - it doesn't actually remove it from the array. I have highlighted the key code parts.
[Code]....
i have this method:
private function findConnectedNodes(node:Node):Array{
var test_node:Node;
var surrounding_nodes:Array = [];
[code]......
I upload a file using adobe air HTTPService.Send method by passing byte array of file content read using FileReference. When I write the set of bytes from the server side (php) it writes the details of the byte array (buff) to the file instead of contents of the file like "endian=bigEndian&position=0&bytesAvailable=61127&length=61127&objectEncoding=3" . Below I have included the code that how I read the file and send it to server. Is there anyway that i can directly pass the data in the byte array to send method?
File Read
var buff:ByteArray = new ByteArray();
var localFilePath:String = "/Videos/sample.txt";
var uploadedFile:File = new File(localFilePath);
[Code]....
In actionscript 2 I was able to make indexed associative arrays. Ex:
var arr:Object = new Object();
arr[0] = {var1:"one", var2:"two"}
arr[1] = {var1:"a", var2:"b"}
In actionscript 3 I cant seem to do this.I get the error below.TypeError: Error #1009: Cannot access a property or method of a null object reference.
I am getting this error: 1180: Call to a possibly undefined method startWorld.but the method startWorld is defined as you can see in attachment.
View 4 Replies