Flash :: Change The Values Of Arrays From Different Classes?
Sep 16, 2010How do I change the values of arrays from different classes? i've array in one class called creation all the array are global variable
[Code]...
How do I change the values of arrays from different classes? i've array in one class called creation all the array are global variable
[Code]...
I am running into some trouble adding an array into another array to create a multi-dimensional array.The code appears as below:
var slideDataArray:Array = new Array();
var slideShowDataArray:Array = new Array();
slideDataArray[0] = xmlData.SlideShowParameters.SlideShowImagesDirectory;[code]........
I am looking for a means of placing the slideDataArray into a 'slot' or value of slideShowDataArray so that I can in the end pass the slideShowDataArray as a parameter to another function.As of now, the last slideDataArray appears 11 times (the loop runs 11 times) in slideShowDataArray and the way the code is written the slideDataArray is unique every iteration of the loop.
I'm trying to use associative arrays to store my variables but am looking for a solution to change the value of array1[i] to array2[i]. Since it's an associative array, the only way I know how to loop through these kinds of arrays is by the following:
Code:
for(var i in array1) {
trace(array1[i];
}
What I would do when using indexed arrays to change the value of array1[i] to array2[i] would be something like this:
Code:
for(i=0; i<array1.length; i++) {
array1[i] = array2[i];
}
However, I can't see any way you can do this with associative arrays because they do not have a numbered index such that in a loop you could
say array1[i] = array2[i] .
So I'm looking for a way to do this with associative arrays.
I'm struggling with something that shouldn't be too difficult but I can't figure it out I have a number of Arrays with different values and I want to find the common values all of the Arrays have, see example below:
var arrayOne:Array = ["1","2","3"];
var arrayTwo:Array = ["1","2","7"];
var arrayThree:Array = ["1","2","9","12"];
_resultArray = ["1","2"];
What i'm trying to do is creating an array of objects, little squares that are positioned in a grid with coordinates and when i click on the coordinates i need to select only the elements which fit with the value. So, what i'm trying to do now is to pass a value to each element of the array but it doesn't work:
[Code]...
I have an array in my one class (loadXML) and i want to use it in a different class (player). I have my two classes here. This is not working though. How can i use songsArray in player.as? Its all good and dandy in loadXML, the array is being populated.
Code: Select allpackage
{
import flash.display.MovieClip;[code]..........
if I create a new AS3 file with the following code:
Code:
function createArrays():void {
for(var i:uint=0;i<3;i++){
trace(i);
[code]....
If I set my document class to tst.as, remove all except the last line and put the following in a tst.as file:
Code:
package {
import flash.display.MovieClip;
import flash.events.*;
[code]....
or are there functions you can't build in external as but you can in the IDE?
In my example I have established root items (item1,item2,item3 and item4) and sub-items underneath them, and I can easily access the values at the sub-level, but I can't figure out how to output the values on the root level, if I use treemenu[0] it doesn't output "item 1" but the values on the sublevel, how can I point to the actual value on the root level? so it would output for example "item 1"?
Code:
var treemenu:Array = new Array(new Array());
treemenu.push("Item 1");
[code]....
I have a little problem and I guess it won't be difficult to solve, but I am still learning to create codes and I get stuck every once in a while (more every than once haha). What I want is to create to different arrays, one for all the buttons I have, and the other for all the instances of the frames that will take me when I hit each button. So for example if I hit mybutton3, it should take me to frame3.
[Code].....
Is there a simple way to ask "Does this array contain this value?" For example I have an array1 [0,2,4,6,8,10] and another array2 [1,3,5,7,9]. I want to say something like:
[Code]...
In this case of course it would find the value "3" in array2 and then do the appropriate action specified there.
I have made a very simple custom class for keeping track of groups of offices for a company. The class has a Number variable to tell it how many different offices there are, and an Array to store the individual offices by name. It looks like this.
class officeCluster{
static var _className:String = "officeCluster";
// variables var numOffices:Number;
var locationArray:Array = new Array();
// functions function officeCluster() {
trace("officeCluster constructor");
}}
Now, it is my understand that when I create different instances of the class, they will each have their own version of "numOffices" and their own version of "locationArray". When I run traces of "numOffices", this seems to be true. For example,
trace(manufacturingOfficeCluster.numOffices);
trace(servicesOfficeCluster.numOffices);
yields
5
4
In the output panel, which is correct. However, there is trouble with the locationArray. It seems that as I assign different values to it, regardless of what instance I specify, there is only ONE array- NOT one for each instance. In other words,
trace(manufacturingOfficeCluster.locationArray[1].theLocation);
// theLocation is a String. The locationArray itself holds Objects.trace(servicesOfficeCluster.locationArray[1].theLocation);
Is anyone aware of any issues partaining to using Arrays within Class instances? I've been able to work around this by creating multiple arrays within the class and using a different one for each instance, but this seems very sloppy.
I'm making a turn based RPG in Flash, with AS 3 as the language,Basically, my idea was to put all of my weapon data on a single multi-dimensional array. Now if I want to add a weapon into my inventory, easy, i just use inventoryArray.push(weaponArray[1]) Easy, I just added the weapon into my inventory.I've been looking into Design patterns, and it seems that most OOP designs are using classes and inheriting from a superclass. Component-->Weapon-->Sword-->LongSword. What should I go with, putting all data in one array or using the inherit style, with one class containing a single weapon?
View 2 RepliesSo I'm coding a maze in Flash using ActionScript 2.0. I'm using a 2D array and with that I will give each point a value, either 1 or 2. I then plan to use modulo and an if else statement to pull a brick movie clip from my library. Here's what I've coded so far with the 2D array. This is my first time using this array and I'm unsure wwether I have coded this correctly. how do I use this array now to assign the values of 0 and 1?
[Code]...
I've got movieclips of dice called "dicePicked1", "dicePicked2", etc all the way to 6. each of these movieclips has a graphics on keyframes with labels "One" to "Six".Now I'm trying to find (in vain) a way to cross check the labels with arrays of numbers so that each time it finds a dicePicked with the appropriate label, it moves onto the next number to find. For example, I need to see if one of each dice has [1,2,3,4,5,6]. Once the program finds a dicePicked with the Label "One", it moves onto the next element which is 2 and so on. If it finds the last element (and thus all the elements), it returns true. If it doesn't find an element (for example none of the dicePicked have a Label "Three") then it returns false. I'm trying to find a system that can accommodate different combinations and some with the same numbers multiple times (for example 3 different dicePicked have the label "three")
View 6 RepliesI'm trying to make an array with different color values. My problem is that when I do...
teamColor[i] = currentColor...
All color values in my array turn into the currentColor. (I would upload more code, but that would be a massive mess, considering that I have code everywhere with references from movie clips that are as far as 3 layers deep. However, this would be irrelevant anyways (probably), because I tested this with color values on my main timeline, without any references to or from anything deeply nested). I would like to add that I tried adding strings in there and that the strings remained their original, intended, value, while the color exhibited the same phenomenon.
I changed my code by creating separate variables for each color instead of putting the variables into an array (not what I really wanted to do, but it works). My code looks like this:
if (teamColor != 0) {
this["team"+teamColor+"Color"] = new ColorTransform(0,0,0,1,currentColor.redOffset,currentColor.greenOffset,currentColor.blueOffset,)
teamColor = 0
namebox.addboxes()//function in a movieclip
}
TeamColor is now an int that is changed based on which box a user clicks from a movie clip that has a dynamically generated name, based off of what the variable value in a loop was when it was created.
(E.G: 'tempboxname[ttns].name = i;')
teamColor is then equal to that name when the user clicks it. I have another movieclip with colors in it and the above function is called to check if any teamColor change has occurred, and if it has, act accordingly. (The idea of having teamColor equal to 0 is so that if the user clicks twice, nothing changes. I other conditionals for other colors, all within the same function). That is how I fixed me code. It's not what I wanted, because it's not an array (meaning a seemingly infinite number of teamColors, and thus, teams) but it'll do for me.
I am trying to find the sum of one column's timings which is like '00:00:00' format. I am splitting the time string at ':' and storing into an array. Then trying to add array1[1] value to array2[1] value. Here I'm not getting type casting logic. I'm getting an error when I give int(array2[1]) += int(array1[1]) .
View 2 RepliesSay I had this array[code]...
This adds five new instances of the Thing class through the main timeline. In the Actionscript code for the Thing class I want to be able to reference the index of the given instance for identification purposes.
TL;DR version: how do I add more values to the 0th row of an array?[If that's too vague, read on.]What I'm trying to do currently is make a tilemap engine. I have an multidimensional array that is sifted through when the program begins that determines what type of tile is added to the stage which was then put in its appropriate place. These tiles scroll when the player moves.
Now, the problem is, I expect to make huge maps. Putting a large amount of children (tiles) on the stage makes the program incredibly laggy, so to fix this I created another multidimensional array that held the values of the tiles that are currently in the field of vision of the player.
the values in the new array shifts and moves along with the player, gets the children that will be left behind and deletes them. To keep things short, the player would not notice the addition and removal of the tiles, because the tiles are added at the position where the player is currently moving and the tiles that are removed are removed where the player is moving away from.
The issue I am having lies with moving up and down. The addition and removal of tiles follows a very strict process:
1. shift the array that holds tiles in the player's range of vision so that new tile values can be added.
2. add children (tiles), assign their names, add the name to the appropriate place in the array and move the child (tile) to the appropriate place on the stage.
3. Delete the tiles left behind.
4. Remove the names of the children that were deleted from the array.
To move up, I would have to unshift the array (so that all the rows move down one), add the names of the new children(tiles) that will appear directly above the range of view, then delete the children that are named in the last row of the array and pop the last value in the array (which, since this is a multidimensional array, is not one value, but the entire last row of children names). The problem is, after I unshift the array and add a new row with only a single value in it, I can't add more values into the row!
(the name of the array that holds the names of the children in the player's range of view is containmentUnit.)
I have tried these,
Code:
containmentUnit[0].push("test");
Code:
containmentUnit[0].splice(0, 0, "test");
but it always comes out the same way-- with an error message that reads:
TypeError: Error #1006: value is not a function.
at storage/update()
how I could add some values to that first row?
If I send remote data from Zend_Amf to Flex, if two array properties on the object have the same data values they are deserialized at the remote end with the same memory storage.Example: AS3 object:
Snippet:
[RemoteClass(alias="TestVO")]
public class TestVO
[code].....
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.
[Code]...
I've been making arrays from numbers produced by the Collatz conjecture. But when the number where we start calculating exceeds over 1x10^16 program can't do any more calculations. It loses it's capability to handle odd numbers. Heres a part of my code that makes calculations:
ActionScript Code:
var a:Number;
var result:Array = new Array();
var count:int = 0;
function calculate(e:TimerEvent):void{
[Code] .....
I am currently using this AS to randomize an array:
Code:
function shuffle(wordtestmix,b):Number {
var num : Number = Math.round(Math.random()*2)-1;
return num;
[Code]....
and would still like to randomize the array without splitting the two values up.
What is the best way to declare this type of array and also adjust the randomize code in order to mix it correctly.
I have a array of categories, for e.g.
var categoryArray = new Array('value1', 'value2', 'value3');
I would like to loop and create new arrays from each of the values in the categoryArray I tried...
for(var i=0;i<=categoryArray.length-1;i++){
this[categoryArray[i]] = new Array();
}
value1[0] = "dsfsdf";
trace(value1[0]);
It doesn't seem to work.
Sometimes there is a name conflict between classes in two different libraries, but I almost exclusively use one over the other. Unfortunately, the one I am using is not showing up as the first entry and I have to press the down arrow to pick it.
View 1 RepliesI want to compare one value against all values in the other array and extact a match. These are different in length.
Imagine one column of unsorted ID's and one column of ID's and names. I came up with this, but it doesn't work.
private function mergeCollections():void
{
for (var k:int = 0;k <= idArray.length;k++)
{
[Code].....
my arraycollections arrive from database.
The real thing I'm doing here is recieve values from a table full of ids and a table full of those ides, plus the name (they are separate because, normalization dude!) And I want to put them inside a datagrid that will only display the name.
I say possibly unsorted because the second column might reach a point of several deletes and inserts and might end up unsorted. But for this case I have one unsorted column against one sorted column.
My current output is just one name printed, and the rest dismissed completely.
NOTE: Also take in account that the nameArray has always MORE or EQUAL values to the ID table. and the Id table will always have values that match the names table.
I was wondering if I can create an array of created Classes. I have a feeling that I cannot, and that you can only create an array of values, not objects.
View 2 RepliesI need to change text in all textfields in my .fla file (Flash CS3).Looks like i should call JSFL function "fl.findObjectInDocByType("text", fl.getDocumentDOM())" and it would return all elements, but it returns zero length array. I there any another way to iterate threw all library items, and change values of TextField's in MovieClips ?
View 1 Repliesi am using get and setters in my as3 code to edit values of an other class (because those variables are shared) i dont like to put stage.sharedVar.isScrabble in my code every time to change a variable so i used get/set functions [code]as you van see it has a lot of duplicate code every time the "return stage.sharedVar." and the "stage.sharedVar."+ the value + " = val" is constantly comming back.i was wondering is there a other way of creating these get/sets?[code]
View 3 Replieshow subclasses,instances,and inheritance work. The below code isn't actual project code, it's theoretical code, generalized to a simplistic level so that we can talk about the big issues.Let's say I have animals_app.fla, with a "Dog" class MC and a "Cat" class MC. Both "Dog" and "Cat" are subclasses of "Animals"; animals_app.fla uses document class "Main".
Intuitively, I think Animals should declare that every subclass should have some animalSpecies, and each subclass will define the value of its own animalSpecies. It wouldn't make sense for Animals to provide any default value, because it will always be different per subclass. Is this correct? I had tried out some code similar to that below, and was perplexed because it seemed like whenever a subclass tried to define a value for its own animalSpecies variable, it was actually changing the value of the variable in the Animal class, but that's not what I want. How do I rewrite this code so that each subclass defines the values of variables it inherits from its superclass, without altering the superclass? And how would I define the value of variables for each instance of a class, so that I'm only changing the values of that instance, without altering the subclass?
Animals.as
Code:
package
{
import flash.display.MovieClip;[code]..........
Also, conventionally, what should be in my Main class? Only the addChild code which attaches MCs to the stage? Or should the values of variables be defined in Main? What am I missing? I recently read Foundation Game Design with Flash and didn't feel like the explanation was sufficient. I've tried scouring the web for OOP tutorials, but they're either too basic or too far over my head.where I should be defining values of variables for classes, subclasses, and instances?
Im creating MMO with flash but making it small at first.... I need to know the best way to code the characters.... I was thinking keeping all the data such as coordinates, inventory and cash all in MYSQL so the clients cant change the values in my flash client program. I was thinking of calling quires every few seconds which would eventually becomes thousands... what do you think is the best way about it?
BTW: Flash = Client Side
PHP = Server
MYSQL = DATA