ActionScript 3.0 :: An Array With Objects Stored In It - When I Remove It - Flash Doesnt Seem To Mind Its Absence?
Jun 16, 2011
ive come across this method 'as' and I dont get it.I am following a tut, and i have an array with my objects stored in it(for reference to control these sprites).They are instantiations of my sprite class 'Ball.as'
Code:
for(i=0;i<3;i++){
var myMCs:Ball = myMCs[i] as Ball;
}
when I remove it - flash doesnt seem to mind its absence.
I need to remove mc's that are stored in an array, I need to remove them when they finish a tweening effect (everything works great) only that i get to remove only 1 created mc, but i need to erase all the mc's that are on the array...
Code: for (var i:uint = 0; i < arrayMC.length; i++) { var tweenBonusY:Tween = new Tween(arrayMC[i].mcPower, "scaleY", Strong.easeInOut, pct,
Anyway, I am having problems with storing movie clip objects in an array because when I try to access them, it kinda loses its properties as a movie clip. Say, i have mc_1 stored in the array,and in the course of the flash movie, a button is triggered to change its visibility to "false".. what i do is, arr[0]._visibility = false.So here's what I'm really trying to do with my school project: I have 24 movieclips, i named them field1, field2, ..., field24. I stored them in an array. Initially, they're invisible. Then, a button is clicked to show one field. If the button is clicked again, the second field is displayed, and so
I'm trying to draw a line between circles stored in an array. I have a button on the stage which adds another circle to the stage. My issue is I cannot draw a line between the most recent circle added to the array and the one that will be added next.
It is a bit complicated and I'm not an experienced programmer by any stretch of the imagination.
I have a little bit of code that makes a nifty kaleidoscope effect, but I would like to take it one step further by having each star in the kaleidoscope gradually shift color as it expands outwards. Right now, I create randomly colored "star" movieclips by drawing 6 different triangles within the movieclip, and then add those individual "star" movieclips to a "stars" array.
What I'd like to do is use a "for...in" loop to grab the .color property of each of the "star" movieclips and change it slightly (using colorTransform?) at each ENTER_FRAME. How can I go in and access the star.color property (or is it star.transform.colorTransform?) of each of the movieclip objects that are now stored in my "stars" array?
Would it be:
Code: for (var i in stars){stars[i].transform.colorTransform = myColorTransform; }OR for (var i in stars){stars[i].star.transform.colorTransform = myColorTransform; }
I'm trying to remove all objects from an array, and then emptying the array using splice. I'm restarting the game, removing all objects etc so that I can add them again. But what happens is that no object (enemies, blocks, bullets etc) is really removed. It's not visible anymore, but it's still on the stage wreaking havoc (hit detection still working, so enemies are avoiding enemies that were supposed to be removed, bullets hitting them and so on). And then when I restart the game a couple of times I have way too many objects and the game starts to lag. Code below: This is the code for the enemy, I have different loops for the other objects, but they all look the same: Code: for(var a=0; a<enemy1.length; a++) //loop through enemy1 { if(enemy1[a].dead == true) //check if dead { removeChild(enemy1[a]); //remove from stage enemy1.splice(a,1); //remove element from array }} So to reiterate, I need to remove the objects from the stage, and clear/empty the array.
I have an array containing objects, where each object contains a boolean. I was wondering how I can remove only the objects where the boolean is set to true.I've tried doing it like this:
But it doesn't seem to work that well. (Reason for it not working may very well be another reason, but I thought I'd check here anyway since I'm an AS3 novice)
but adding "removeDuplicates(aPeople);" after "createfile(thename);" has no effect: in other words, when I push the savefile button, it keeps creating clones of the same objects. What can I do?
I'm working on a game for the iPhone using flash, and since memory is crucial i want to clean up displayObjects not needed. All the objects i need to delete is MovieClips taken from some array to another using splice(). Here is the [code]...
How on earth do I use the onMouseDown event to remove objects generated by an array?
I'm still programming (if my bumbling can be called that ) the game I discussed in the 'Random Object Generation' thread and I'm using the basic framework of the array function that h88 gave me. Everything is working fabulously, but getting the things to disappear onMouseDown is a problem - it doesn't work.
Oh, and if I reference Target.prototype.onMouseDown and tell it it to this.unloadMovie, it unloads every single target on the screen instead of the one your mouse is actually over, making for a fairly... lame... game. I'm pretty sure it's because every single clip generated by the array is a Target prototype instance and so when the MouseDown occurrs, it unloads every Target movieClip. And I am using a hitTest in the Target.prototype.onMouseDown command, so that doesn't solve anything...
Why doesnt my Array work? I get this message: "Scene 1, Layer 'Actions', Frame 1, Line 83 1067: Implicit coercion of a value of type Array to an unrelated type flash.display:MovieClip."
PHP Code:
var boxArray:Array= new Array();boxArray.push(WallLeft);boxArray.push(WallLeft2);
I've knocked together a Java/BlazeDS server which creates a generic GridBean object. This GridBean contains:[code]I then created a Flex app that uses a RemoteObjectServiceWrapper to call my java server, grab the GridBean, create some DataGrid columns from the columnDefs and then set the dataProvider as the list of objects. Ok so far, everything renders.Now, what I'd really like to do is: set up some kind of event handler on the flex side so that if my item/object is edited in the datagrid, I fire a message off to java saying 'edited this field on this item'. The end goal is to have a nice generic way to render any list of objects from Java in a flex datagrid.
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
I'm using the following array to storing multiple variables for similar movieclips: public var ballPlaced:Array = new Array(false, false, false); ....however, its not storing the boolean value properly in the array? I'm using the following code in the ZoneFill and ZoneEmpty to assign it a value of true or false, e.g;
I have a "back button" scheme that includes using an array to store references to functions.However, when i have to troubleshoot something like this, one of the things i'd like to be able to trace is the names of the functions that are in the array. If i trace a for loop through the array i just get [type Function] for each function. I would like to look at it's name.Right now, im using a workaround that places objects with a func property and a funcName property, which is a string that needs to be indicated manually.
I was wondering... i thought this might be a dumb question to ask but ive been wondering if it is possible to remove all the data that was inserted into an array?
i.e.
ActionScript Code: var loadAllThumbnails:Array = new Array("poop1", "poop2", "poop3", "poop4", "poop5"); someBtn.onRelease = function(){ //clears/emptys the array when released }
Code: var enemyArrayOneA:Array = new Array(); for (var i = 1; i <= 84; i++) { /*
[code]...
I try to use race("mc.main1.a_0" + i + ".x = " + enemyArrayOne[i].x); and it doesn't work...I'm trying to find out if I can store instance names of movie clips inside an array and retrieve the movie clip's x and y positions.
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
ActionScript Code: public function drawPiece(xPos:Number, yPos:Number):void{ _piece_mc.graphics.lineStyle(1,0x000000);
[Code]....
The object is there. When tracing out the array for specific index it provides: [object Piece].
Or would it just be best to use a single dimensional array? End goal is to have a board class to be able to use for checkers and then potentially chess.
I have a movieclip that i want to move to 4 predetermined spots with a click of a button. I've been trying to put it together all morning. Is this a job or a loop?[code]...
I need to create an Array of movieclips so that I'm able to read / modify / add its properties. I thought the best solution was to create an Array of strings with each movieclip's name and then using this to convert the string to an expression, but I don't really know what to do when I want to access one of its properties. Here's my code:
ActionScript Code: var room:Object = new Object room.objects = ["mcObj1", "mcObj2", "mcObj3"] mcObj1.Description = "It's a ball and it bounces"
I want to write a function that will load all of my external sounds stored in an array which are just strings of their filenames ie:
var soundList:Array = new Array(); soundList = ["sound1.wav", "sound2.wav", etc];
And create a new array with sound Objects that will have the sounds loaded in them (for later execution). After loading all of the sounds in the soundList array, the function should return or just set a _root value to 'true' ie: