ActionScript 3.0 :: Arrays: Linking A String To Objects On The Stage?
Jan 20, 2010
I have a string array with a list of words,e.g. var textArray:Array = ["a1", "b2", "c3", "e5"]Then I also have an array with a list of buttons that are visible on my stage,e.g. var objectArray:Array = [a1_btn, b2_btn, c3_btn, d4_btn, e5_btn]m wanting to use actionscript to make the buttons that are writen in the text array to be visible onscreen, and the buttons that arn't written in the text array to be invisible.
How can I use arrays and some how display my objects accordingly based on my code below?
What I have here are three buttons that when clicked a new clip is added to the stage with a predefined position which means that when button1 is clicked the MovieClip will be added at the very top and when button2 is clicked the MovieClip will be added at second and when button3 is clicked the clip will be added at the very bottom, but what I would like to do is to be able to dynamically position these objects based on how many clips exist, in other words if button3 is clicked first, I want the clip to be positioned at the very top and if later button1 is clicked the clip is positioned
Accordantly (at second place). I know this may be simple, in fact I could probably use a few IF statements but I know the code would look ugly (yes, even more) and I may have add more buttons later. What I would be awesome is to some-how use arrays or something that makes more sense to hold the MovieClips and then display them accordingly.
I've got four arrays which I want to use to create objects on the stage. The first one is what the Object Class is called. The second one is what I want the instance name to be. The third and fourth relate to the x and y co-ordinates respectively.
The "i" would relate to the parameters for the same object. So, if i = 0, then the Object Class Name would be: 'Background', the instance name would be 'bg', the x position would be '0', and the y position would '0'. What code would I need in the for loop to create this?
have a button on the stage that you called "myButt". Now suppose you want to change its size. You write:myButt._xscale = 25;Now suppose you don't know it's name, but you get the name from another variable:buttname = "myButt";How do you change its size then? in some compiler languages you can expand the string buttname into its value at compile time, with special flagging, such as:
I have started to take AS2 knowledge a bit further now and am working on a rss reader, i have multiple buttons which are loaded into the stage, what i would like to know is a) how do i create those arrays using their 'idenifier' and b) how do i link pressing those with the corresponding url in the urlArray?
what i then want to do is put the url which is loaded after a button has been pressed and put it as a variable which i can then load into
But I keep getting an "Error #2030: End of file was encountered." This is (probably) because the class I'm serializing is too big for the "String" object type in AS3. Is there a limitless object for storing an array of characters (or better yet binary), or am I going to have to make my own class? (like one with an array of strings)
Scenario: 4 areas on 1 stage which are quite similar (eg webcamconference, each area has the same functions)
Buttonobjects are numbered(eg area 1 has playbutton1,mutebutton1,namebutton1,namelabel1, etc)
every area gets a close-Button which closes/shuts down the area.(close1,close2,close3...)i want to archive the following:
if(close1.isPressed){ function invisall(1); }[code]....
this should do the trick via dynamic Nr at the end of each default button(eg playbutton) but ofc
"playbutton1"._visible=false;
doesnt work because playbutton1 is still a String.how can i take the String as a Buttonname /ButtonObject? do i need to write an new function? this would destroy the purpose of less code. for now i will split the area into frames that i put on the stage.
I want to put together an array of values that I can call by an ID I set myself, for example I want to be able to call "title" from the id "123", I tried this with Arrays but they don't seem to work the same way in AS3 as they do in PHP (the language I work with normally).
The following is what I am trying to achieve:
Code: var Values:Object = new Object(); var Infos:Object = { title:'something',
I am trying to put together a match activity where word in one column are linked by a line to definitions in another column. Once all words have been linked to their definitions, you end up with a series of crossing lines so, so I want the definitions and their line to move so that each is level with their connected word and the lines have unravelled. I've got as far as connecting the words to their definitions using a line (as a sprite) and the definitions can then be moved using tweenlite -but I have no idea how I move the lines with their definition. Here is a much simplified section of code to give you an idea of what I am trying to do
I'd like to know how to compare one array to another array with objects.
For example:
Array1 = [one, blue, car]; // there will always be only one entry in this array - no Array1[1], no Array1[2], etc. Array2 = [product.number, product.color, product.type, product.cost, product.qty];
The actual content in Array2 would be something like this:
Array2[0] = [three, green, boat, 100, 5]; Array2[1] = [two, blue, truck, 200, 3]; Array2[2] = [one, red, car, 50, 20]; ...and so on, up to about 60.
I'm trying to figure out to go through all of Array2 to determine if there's a match to Array1. Since none of the entries in Array2 are the same, there will always be one match.In this instance, I want to match array1 with product.number, product.color, and product.type. My example has them as the first 3 criteria, though that may not always be the case.
Something along the lines of this:
Code:
function findMatch () { for(i = 0; i < Array2.length; i++) { if(all 3 Array1 items equals items in Array2[i]) {
[code]...
Background: I've a combobox search that allows a user to select from drop-downs. After a user selects items from all 3 drop-downs, they click a submit button, and there's a check to see if the criteria in the drop-downs matches anything in the Array2 (which it should, if you can select it, then it's in the array).
After that, the matched information is used to populate a movieclip. There's actually about 20 pieces of information associated with each product. However, I only need to match 3 of them.I've searched and found comparisons for arrays. But I don't see how they'd apply to my issue as I'm using objects and there are more items in array2 than in array1. Of course, they may apply, and I'm just not understanding how. I could create a 3rd array and move only the items needed for a match from the array2 to it. Then I could do a straight comparison between array1 and array3.
Basically what I'm looking to do is hitTest bullets inside an array (spawn via addChild -> pushed into an array) with another array containing ships (spawn via addChild -> pushed into an array as well).At the moment I have:
function moveEnemyLarge():void{ var target2:EnemyLarge; for(var i2:int=0;i2<enemyShipArray.length;i2++){
[code]....
.. and a near identical function for the bullets (using variables: i, target).What is the easiest way for me to hitTest the objects within my bullet array with the objects in my ship array. Putting "target" in the PLACEHOLDER slot doesn't work, and from what I've seen some people will shove the one for() inside of the other.
I have a loop, it goes through and works fine. I can trace out my variables and all is hunky dory, for example "trace(title);" displays the variable title, as expected, there is also the variables "something" and "everything" and a unique ID: id. Now I want to put these variables into an array, so the values can be called via the ID. For example (I'm a PHP programmer normally) in PHP I'd do the following:
Code: $array[$id]["title"] = $title; And to display it I would do Code: echo $array[$id]["title"];
For each part of the loop I want to add the "title", "something" and "everything" into the array so I can call them by "id". I think I'm doing it wrong though, should I be using objects? If so, how?
What i have is 2 arrays, where one is "correct" - set by the computer. The player then makes his array and when its done i want to compare them to see that they match up. The array is in theory able to go infinite (its a memory game), and i thought this would work.
The arrays can only contain the numbers 1,2,3 or 4. which is added like this
It continues like this, a list of reoccurring variables seperated by spaces, for a few more lines.How can I separate the string and push the different variables into their appropriate arrays. The end result should look like this:
I'm having a hard time wrapping my head around this problem. I have 2 unsorted arrays that need to be compared, array2 must contain all elements of array1 and array2 can any number of extra elements without affecting the result. I don't see any benefits from sorting the arrays and comparing the string values as array2 can have extra information causing noise.
I want to search an array to see if it contains a specific string, and then get the index of the result. For example, if I had: array[0] = "dogs"; array[1] = "cats"; array[2] = "oranges"; I want to be able to search for "oran" and get 2 back.
I have a chart and am trying to display the "volume" in a line chart as the primary series & the "temp" as a column chart as the secondary series...(the "compound" will be shown in the datatip):
[{date=Tue Feb 08 19:00:00 EST 2011, volume=1200, 1={temp=-50, compound=helium}, 0={temp=-45, compound=oxygen}}]
I can get the "volume" series to display fine, but cannot get the "temp" series to display...how do I access them? Right now I have:
I am trying to make a to-do list application. I would like it to save each time I close. So I researched shared objects, and somehow cannot get it to work. I hold all my "items" in an array, then copy that array to a shared object. Here is the code used to copy the array: At the top. I put the array in a Global class, just ignore the GlobalVars.vars. junk. It's not really necessary, but it definitely works everywhere. ListItem is a class I made that works fine by itself.
Code: var listCookie:SharedObject; listCookie=SharedObject.getLocal("lkjasdf"); if(!listCookie.data.itemArray) { listCookie.data.itemArray=new Array(); } for(var i in listCookie.data.itemArray) [Code] .....
When this function is called, it equates the two arrays fine. I trace them both afterwards, and they have the same items in there. But when I close the .swf and reopen it, the saved array is full of undefined references. It has the same length, just nullifies everything it was supposed to have.
I am trying to assign a number to a variable that is dynically generated from a binded array...when i try and assign it and trace it out nothing happens, which means I am obviously doing something wrong but I am not sure? just for fun i decided to bind the data to a label like so...
I want to arrange certain objects from a vector/array into a gird
Currently, I know how to do this during the creation of the objects.
Here's the grid function I've created:
function ArrangeInGrid(uiRow:uint, uiCol:uint, iOffsetX:int, iOffsetY:int):void { for(var i:uint = 0; i < uiRow; ++i) {
[Code].....
Now I want to be able to apply the same logic of arranging objects in an array/vector in to a grid, how do I do it?
Or suggest a more efficient way to do so (if you have).
Notes:
I want it to be flexible in how many rows and columns the grid can have. The vector I'm using already has the cards in it. I can't just push the cards into the vector cuz of the way I manually created my cards.
can you create arrays of Bitmap and Sprite Objects? or Custom Objects?
if not, how would you typically create multiple Objects of the same type? just a loop with
var enemy:Sprite = new Sprite(); for(var count:int=0; count<10; count++) { enemy = new Sprite();
[Code].....
That way could be fine for many things, but theres other things I want to do.. such as, create an array of wav sounds.... and my program could pick and choose them, so they wouldnt need to load them on demand.. midi files too.
I've got an array of coins, which are called within the array coin1, coin2, coin3, coin4 etc. I'm trying to reference them to say if the character hits coin 2, then coin2 will disappear. Here's my array (so far): ActionScript Code: var coinArray:Array = [coin1, coin2]; //an array which contains all of the coins
And here's the script I'm working on: ActionScript Code: function coinCollect(evt:Event){ if (collisionTest (character, coin/*[n]*/){ var i:int = /*the number from coin[n]*/ - 1 remove coinArray[i] }}
But I'm missing some major things, mainly how to reference which coin has been hit, and how to take the number from that coin and take 1 from it to reference it's correct position in the array? (the code in /* */ tags represents things I'm not sure on the code of).
how can i have an array of strings but also with mc identifiers in the same array and have it know the difference between object and string? RIght now i've got this array of strings that goes to a textfield, and if i change it to
Does anyone know if it's possible to link a MovieClip on the stage to a class? I have a MovieClip on the stage called: square_mc and I have this Move class (see attached code). Of course when I set the class linkage of square_mc to the Move class, square_mc moves down the screen, Move is working. But how would I attach the Move class to square_mc at runtime, when it's on the stage?
Does anyone know if it's possible to link a MovieClip on the stage to a class?
I have a MovieClip on the stage called: square_mc
and I have this Move class (see attached code).
Of course when I set the class linkage of square_mc to the Move class, square_mc moves down the screen, Move is working. But how would I attach the Move class to square_mc at runtime, when it's on the stage?
I have had a long post somewhere on here and just wanted to start a specific post on just associative arrays. First of all I have an array which I don't know if it's an array or an associative array or an object or both. ie: I read that the below would be an object but works as an array too.
The problem is when I use this array as references to instantiate classes in a runtime shared library.I seem to be able to create the appropriate arrays and objects BUT I definately can't use/acess them properly. I massive confusion between movieclips and objects. I get a forced conversion error when I try to add objects to a movieclip . simply because I want to add the mc elements to the stage.