ActionScript 3.0 :: If I Add An Else It Only Detects The Last Item In The Array?
Jan 26, 2010
I'm a slight issue with this for loop:
Code:
for (var i = 0; i < clickArray.length; i++) {
trace(clickArray[i].name);
if (clickArray[i].hitTestPoint(mouseX,mouseY,true)) {[code].....
The code basically see if your touching of the MC in the clickArray and changes another MC's frame accordingly.This bit works fine. However, if I add an else:
Code:
for (var i = 0; i < clickArray.length; i++) {
trace(clickArray[i].name);
if (clickArray[i].hitTestPoint(mouseX,mouseY,true)) {[code]....
If I add an else it only detects the last item in the array, i.e it always goes to frame 7 unless it's touching the last MC in clickArray. why adding an else statement would cause this to happen? I also tried adding an else if not hitTest...
I put my mc's in an array.I have another array with strings.when the mc is clicked I want to get its position in the mc array and return the string from the same position in the string array.How do I do that?
PHP Code: var numBtnArray:Array = new Array; function addNumButtonsToStage():void{
I know how to remove duplicates from an array, but what I'm trying to do is prevent an item from ever being added to an array in the first place if it already exists. I'm pulling in data from an xml feed in a loop, and I thought that searching for that values index would work, but no matter what, the index is always -1. Here's my code:
[Code]...
Maybe I'm misunderstanding the indexOf function, but I thought it was supposed to return -1 if a value did not exist in an array. What am I doing wrong?
I have this code to try to acess the values of the array in the arraycollection but it does not work it actually creates a value to the end of the arraycollection. can anyone tell me what im doing wrong i basically whant to modifys the individual arrays in the arraycollection and add Login_user.
I'm building a preloader which only loads the background image. This preloader is inside a MyStage class and it's something like this:[code] Remember, I'm calling resultado() on the onProgress function just for test purposes. In theory, it should go on the Completehandler function. Now, when I check if perc is equal to 0, it returns true and loads the image and the rest of content in my index class, but only works with zero.[code]
Everything worked perfectly fine in CS5, then I converted it to CS4 and it won't move my guy around, or even trace anything, when I press the WASD keys. The arrow keys still work fine.
I am trying to implement a quadtree of rectangles (instead of points) to be used for collision detection. For some reason, overlap/intersection/collision is not always detected. I suspect this has something to do with the way an inserted collider looks for nearby colliders (see the "COLLISION A" and "COLLISION B" sections of Quadtree.as). Can anyone identify why this happens?
Below is my code for the quadtree, and several other classes that, when compiled together, will show you what I mean when I say that the "quadtree" s "inaccurate". You only really need to look at Quadtree.as, but compiling it together with the other classes.
I have to load a text file. First I want to detect if the file exists or not, so I use "if (rawTxt == undefined)".
Now, if the file exists and contains data, the condition n2 is met...it's OK! But now, if the file exists BUT is empty it doesn't meet the condition n2.. It's not "undefined" neither "not undefined" since any trace action accours.
In other words, how can I check that a text file exists...AND that it's empty or not (so that I can add a branch if that condition is met?) Try by yourself with an empty text file named "Favorites.ini".
Code: var loadFavorite = new LoadVars(); loadFavorite.onData = function(rawTxt:String) { if (rawTxt == undefined) {
when I test my project in flash CS4, both the flash player and the authoring tool detect my keystrokes. Is there a way to make the authoring tool ignore key input while testing a movie, since I really only intend the key presses for the movie?
has anyone else found trace() to be much, much slower in CS4?
Apologies for this post, but I am desperately trying to get an email contact for the swiss watchmaker Jean Roulet le Locle and their site is 100% Flash which does not work for me.
When I try that site with IE8 and FF3, the music and animation start, however, when I try to go to the "next page" it gets stuck at 0% loading. In particular when I try to go to the Contacts page. When the page starts it says "Flash 5.0 plug-in" detected which makes no sense to me.
I've spend an hour uninstalling and reinstalling Flash to no avail. If this site works for someone, could you please post their email contact information.
Originally, I wanted to email this difficulty to Adobe, but they are pretty much a secret organization which is hidden from the prying workd.
I want to know if there is a method or some code to add new items to an array, but it want the items have the name of the buttons's instance name, or the label's name, so when i push the button, it adds its name to an array. Here is my code:
ActionScript Code: tauri.addEventListener(MouseEvent.CLICK, addAddress); abydos.addEventListener(MouseEvent.CLICK, addAddress); tollana.addEventListener(MouseEvent.CLICK, addAddress); dialNow.addEventListener(MouseEvent.CLICK, dialTo); var tauriAddress:Array = ["tauri","abydos"]; var newAddress:Array = new Array(); function addAddress(event:MouseEvent):void { newAddress.push();
I don't know if I should use the push method here, tell me what to put here for adding the instance name of the button to the array trace(newAddress); }
I'm trying to add an item to an array, but when I do, it keeps the results (prizeField) from before and adds the new ones to it. i.e. at the beginning if I push a string to the array I have 4 items. If I push another, I then have 9. Then 15 and so forth. Here is my code:
Code: var myFlexParent:Object; var prizeArray:Array = ["apples", "bananas", "cranberries"]; var textFormat:TextFormat = new TextFormat("Cairo", 48);[code].....
I know that I need some sort of removeChild() in there, but I cannot get it to actually work.
When the combo box is changed it will add items to another combo box, i.e if africa is chosen, all the countries in africa will be listed in the second combo box.
At the moment i am manually adding in all the countries, _root.combo1.addItem("Label", "Data");
for 60 countries that would be messy code, is there a way to do it in an array cause my advanced actionsript isnt that good. But i will need to be able to get the data of a country out later ....
I have a tricky problem in that I have an array that has been populated with strings ("item1", "item2", etc). However, at a certain point I need to pull one randomly out of the group, via a random number function. The issue is I cannot reference the items in the array by a number, I get an error. So when I try to get myArray(5) it doesn't work.
How can I work around this so I can grab a random item in my string array?
I have 2 arrays & 2 checkbox repeaters: the second gets populated w/ items selected from the first. I can add the items no problem. How do I then delete the item if it gets deselected from the first checkbox repeater?
I have two two-dimensional arrays, and this line of code:
openListParents[compWith] = openList[olID];
Does it work? Yes. However, openListParents[compWith] becomes openList[olID], but I want openListParents[compWith] to be the value of openList[olID]. This is what I get when I press CTRL+ALT+V:
[Code].....
This is because openList might change, and I want the value of that openListParents in the array to be the value of the openList at the time when the code is run.
I have an array of questions for an interactive quiz game. When you answer a question, functionally I want that question to be removed from the array (cat4Questions) so that it won't come back for the player so I tried to splice it.I wasn't sure if it was working so I traced the array. While I was expecting "question1, question2, question3, question4" to be traced, "question1, question2, question3, question4, question5" was the result of my trace.This is the line of code where I try to splice the array:cat4Questions.splice(cat4Questions.length,1);trace(cat4Questions);
So I'm getting strange results when trying to remove the first item in my array. When I remove the first item by using the shift() method, it deletes the whole array instead of just the first item.
Here is my code.
Code: public class Main extends MovieClip { var deck:Array =
[Code]....
When I run the program it correctly shuffles the deck array and pushes all the shuffled items into the shuffledDeck Array. Then the first 26 cards get pushed into the playerDeck Array and the rest go to the computerDeck Array.
When the last bit of code runs, it correctly picks the first item in the playerDeck Array, but when I try to remove that item, it removes everything in playerDeck.
i am tring to check the values imn my array but for some reason the hit is never trace. So is the value o0f cat not found in the array. if not what do i do to find the value cat
ActionScript Code: var numbers_array = new Array("cat"); for( i =0; i < numbers_array.length; i++){
I'm generating an array from a string, then place the item to a text field.It works OK if there is no commas, if an item has commas, then the item is considered as multiple items. How can I have ?For example if the string is like the one below (with | as the delimiter):
C1_3_ans = "item 1|item 2|item 3, with some commas, here" var errorSelected:Array = C1_3_ans.split("|");
errorSelected would be come [item 1,item 2,item 3, with some commas, here] instead of 3 items, it becomes 5 items.How can I keep the 3rd part of the text as one item?
I'm loading data into a movie clip via XML and an array system that duplicates a single movie clip any number of times, as defined by the XML file. The code is working, but what I would like to do now is be able to get the previous number from the array.Here's the script I'm using: