Actionscript 3.0 :: Tracking Right/wrong In An Array Of MovieClips/Objects
May 27, 2009
I've got two rather large arrays which I put a bunch of movieclips into and I'm just stumped on how I can possibly track if a specific movieclip in the array is right or wrong. Determing right/wrong is something I need to be able to set and then check again later when a function getItem is called.
I just quickly made this example code because the actual file's code is much longer and contains a bunch of other code that is irrelevant to this issue.
Code: Select allvar mcArray:Array = new Array();
mcArray = [movieClip01, movieClip02, movieClip03];
button.addEventListener(MouseEvent.CLICK, getItem);
function getItem(e:MouseEvent):void {
I've got two rather large arrays which I put a bunch of movieclips into and I'm just stumped on how I can possibly track if a specific movieclip in the array is right or wrong. Determing right/wrong is something I need to be able to set and then check again later when a function getItem is called.
I did have previous help with screen movement from Vincent, unfortunately how to get a Variable that tracks an objects Y position on movemnt is eluding me
How to track the no. of balls inside my movieclip (ball7)? And put as dynamic text (winner_txt)? Inside my movieclip has no layer, ball layer. No layer: each individual one frame is labelled "0b", "1b" and continues.. Ball layer: first frame empty, 2nd frame 1 ball, 3rd frame 2 ball.. and continues.. Tried using: var no = _root.ball7_mc._currentframe _root.winner_txt = Number(no);
So I've got a button that spawns a block and when pressed spawns another to the right of that block, if pressed again the process repeats. These blocks are all placed into an Array. When the user click on the blocks, they are removed.I would like the blocks to track their position in the Array so I can splice out the value on click and all the other "building spots" will move to their Array position * building spot width, so when a block is cut out, the others all move a long and remove that space.Since Arrays aren't my strong point, I wish to see what you think would be the best option here. Now keep in mind I am not a Flash Pro, so the way I have coded may not be the best, but I like to think I try Here is the code currently:
I'm trying to keep track of several movie clips with an array, but I'm running into some issues. I'm making a shooter game that requires hitTesting a list of projectiles and removing the projectiles from the list when they leave the screen or hit stuff. I've got the projectiles being added to the stage with this:
[Code]...
At first that appeared to work fine, but the bullets aren't always removed in the order they were created, so when I remove one from the array in this manner, it shifts the index numbers for all the ones that came after it back one, thus making their "num" variable no longer correspond to their index number; so when they try to splice themselves, they end up splicing the wrong ones. (Like, if I removed [3], the bullet that was in [4] is now in [3], but it doesn't know that, so it tries to splice [4], which now refers to whatever was in [5], and so on.) What's the correct way to handle this kind of situation? I feel like I must be missing something obvious, but I haven't been able to figure out a solution.
I've been reading through all the various threads related to the drawing API and saving drawings. About a hundred times I've seen mention of "log mouse positions into an array" and stuff like that, but I can't find any clear and simple examples of how to do this. Let's take a very simple use of the drawing object to do freeform drawing. What is the AS to capture the mouse XYs as the user draws and put that into an array. I can't figure out how to get Flash to keep updating things as I go, it invariably grabs the fist point and that's it.
Let's use the most basic drawing example I can find: [AS]_root.createEmptyMovieClip("line",1); _root.onMouseDown = function(){ line.moveTo(_xmouse,_ymouse); line.lineStyle(0,0x000000,100); this.onEnterFrame = function(){ line.lineTo(_xmouse,_ymouse); }} _root.onMouseUp = function(){ this.onEnterFrame = null; }[/AS]
Where/what gets added to just capture all those _xmouse and _ymouse?
I've been reading through all the various threads related to the drawing API and saving drawings. About a hundred times I've seen mention of "log mouse positions into an array" and stuff like that, but I can't find any clear and simple examples of how to do this.
Let's take a very simple use of the drawing object to do freeform drawing. What is the AS to capture the mouse XYs as the user draws and put that into an array. I can't figure out how to get Flash to keep updating things as I go, it invariably grabs the fist point and that's it. Could one of you AS gods just write out a super simple routine for this? I know I'm not the only one that needs this (as it seems to be asked every week) Let's use the most basic drawing example I can find:
I have a flash project that exports at around 3MB, I am trying to create a preloader for it but it seems to get called after the preloading is complete, there for, making it useless. My stage is empty, nothing on the timeline. The preloading script is called in the main document class. Does anyone know why this isn't working, am I calling my preloader function at the wrong place or are my objects in the library loading first? Here is the code,
I have this code which tests if another grass instance is next to the current one. So far so good. The trace statement correctly outputs when it finds an instance nearby. The first time this will say: "instance1 100,100 found instance3 97,100 nearby" which is correct. But further down the code when I do the hitTestPoint, the wrong instance is in the array. Instead of saying "testing instance3 97,100 97,100 true" it has instance1 in the array and says "testing instance1 100,100 97,100 false". How can that be when I put instance3 in?[code]
I have an array of temporary objects created in a for loop. The objects are of type class "Tile", a class I created. However, it appears that whenever I create a lot of tiles in the for loop, the program slows down indefinitely.
While the array is whiped at a later trigger point, I am thinking that perhaps these Tile objects are not being erased from memory. They are being created on the fly in a for loop, and the array is being reset to "array = []".
Are the objects still in memory or are they cleaned up when the array is set to []?
I have a service which returns an Array of ObjectProxy objects. I would like to cast this to a custom object (a value object) and create an ArrayCollection. How can I do this?ited:I am using Django and PyAMF for the backend. I had to write a custom SQL query and I am wrapping the resulting records in ObjectProxy and sending the whole result as an ArrayCollection.Here is my client side code:
[ArrayElementType("SessionVO")] [Bindable] private var _list:ArrayCollection;
Is this the correct, most efficient way to recycle objects when creating an array of objects?
package com { public class CreateList extends MovieClip { //this is the object I will be recycling private var newProperty:PropertyRow; //this is the array I will use to reference the objects
iSo let's say I have three different arrays of objects, and I want to combine them into one sorted array. I want the order to be such that the items from each array are evenly distributed throughout the sorted array.
If there were 3 xItems, 3 yItems, and 3 zItems, the sorted array would have this order: x, y, z, x, y, z, x, y, z
HOWEVER, even if the arrays are differing lengths, I still need to make them alternate as much as possible. If there were 6 xItems, 4 yItems, and 2 zItems, the sorted array should have this order: x, y, x, y, x, z, x, y, x, y, x, z
i have two arrays of DesplayObjects and i want to add all the objects in the second array to the end of the first array, i knew that i just can just do a loop and puch em into the array, but i wondered if there was a simple function for doing this?
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 have this one movieclip.. which is the NPC characters for my RPG.. but i want to have my main movie in another swf.. Is there a way for me to "import" the NPC character movieclip.. into my main movie for me to use it? And.. as i have more and more scenes in different swfs.. i'll just "import" the same NPC movieclip.. so.. that one NPC movieclip will be the same throughout all the different swfs.. is there a way to do that?
I've noticed that sometimes .. people put things into files which has ".as" at the end.. which probably means that they put all their actionscript into that file.. is there like a ".movieclips" or something which allows me to do the same to movieclips that i'm reusing over and over again? lol Hope you can understand what i'm trying to describe!.. lol If you need me to elaborate more.
I am looking for a script which would it make possible to arrange different movieclips on/arround a vector object. let me explain a bit better what i mean:imagine you have 6 different illustration of flowers, all seperate movieclips.then i have an object like for example the siluette of a man in vector format. now i would like to load like 4000 copies of the flower-movieclips on top of the siluette with a little bit of random so the flowers form in a way the siluette.
Apparently it's relatively simple in AS3 using a stage mouseevent.MOUSE_OVER listener, but I need an answer in AS2, which doesn't have the mousevent listener. Is the only way to get a list of objects under the mouse cursor, to do a recursive list of every object in the file and do a hitTest to get true/false on each? There must be a simpler way, right? I've seen a bunch of comments on forums that say "use hitTest", but hitTest just returns true or false, and not with the name of an object you hit, so maybe there's a way to use it that I'm not considering?
I have a few movie clips running swf's and I need a play/stop button in one clip to control the audio in another clip. The buttons are in the _root clip and the audio is contained in an swf I load into an empty 'content' movie. I have labelled the frame containing the audio but can't seem to use the object hierarchy to access it. On a somewhat similar note, is there a way to have the root movie display the bytes loaded/bytes total of a swf loading over top of the root movie, i.e. in a content empty movieclip?
Any accurate description of the relationship between the Display Object hierarchy and nested movie clips? I have a movie clip, that has a few movie clips and text fields inside of it. I need access to those MCs and text fields. So, I start off with stage.addChild(container_mc). (These are just examples, by the way). Then I do container_mc.addChild(movieOne_mc), container_mc.addChild(movieTwo_mc), and container_mc.addChild(textOne_txt).
I've made sure to import the necessary classes and declare my variables accordingly. Now I need to access the stuff inside the container. Let's say I need to change what the text box says. So I try container_mc.textOne_txt.text = "Hello, world!"; That throws an error, so I try parent.container_mc.textOne_txt.text = "Hello, world!"; That throws an error, too. So I try MovieClip(parent).container_mc.textOne_txt.text = "Hello, world!"; That throws an error... Finally, I try MovieClip(parent.container_mc).textOne_txt.text = "Hello, world!"; And then I give up and come here.
I've had this work before, but only by referencing the name of the movie clips in question. Ex: MovieClip(parent.getChildByName(currentVideo.toStr ing())).gotoAndStop(2); Is that the only way to access nested movie clips? I don't mind giving every single object a name if I have to, I'm just failing to understand if this is the right way to do things or not. And I foresee issues in the future with objects that aren't movie clips, or with dynamically generated objects.
where I can find a tutorial to create resizable movie clips? The viewer should be able to resize movie clips during playtime... I tried a lot of things... the objects get resized but they just "blow up" from all sides...
var lightBox:mc_lightbox = new mc_lightbox(); lightBox.x = 300; lightBox.y = 200; addChild(lightBox);
I get a lightbox up on the screen, within the lightbox is some more script, there are three menu options for that new window. So far when you click on it the loading part comes up just fine but whenever I have it go to another scene it leaves behind the lightbox above. I'm able to removeChild(loading) because its right there just a function above but I'm unable to removeChild(lightBox) because it's one up. How can I access that child? I tried many variations of parent, MovieClip, and root relationships but still couldn't get flash to find it.
I have declared an Array as a new Array(); I would like to push objects into that array but have a text field read back the array minus the commas that are pushed by user interaction (from numbered buttons).
For example, if the user pushes button 1 then button 4 then button 8 I would like the array to read in the text field 148 instead of 1,4,8 .
I have a movie clip who is only a square, i need to copy it on the flash stage a number of times (dinamic). How can i do this in execution time, i know AS2, so i prefer a solution in AS2.
I am making a thing where a bunch of square shaped movie clips will be placed on the desktop, and will be draggable. I was wondering if there was a way to get them to stick together... similar to the snap to objects tool. Like say I am dragging one and I want to make a large square out of the smaller squares. I want them to snap together...
if got a question, when designing in the fla, you can create objects convert them to movieclips and then double click on that movieclip so your inside your movieclip. Now i wanted to code everything so no more designing any more just code. Now i searched google for a as3 movieclip in movieclip but cant seem to find anything.
So what i basically want is a code for; the design trick movieclip in movieclip.