ActionScript 3.0 :: Instance Names And Variable Names: It Goes Deeper
Mar 20, 2011
I started a thread about a reference to a symbol House, in the output window, which was: House_1. A lot of people said some useful things about that. All day I've been thinking about it, and I came to the conclusion that I don't understand things, at a very basic level.
Consider:I make a movieclip which I give the Symbol name Drawer. (I don't export it for AcitonScript.)On the stage I manually place two instances of this Symbol. The first one I give the Instance Name drawer (in the properties panel). The second one I leave nameless.Now if I trace the names of both these clips, by
trace(this.getChildAt(0).name);
trace(this.getChildAt(1).name);
the output window gives me
drawer
instance2
Now I know that the so-called "instance name" which I gave in the Properties Panel (drawer) is, in reality, a variable name which Flash gives my first instance behind the scenes. And instance2 is a name that Flash gives my second instance. What exactly the nature of that name is, I do not know.My point is: both names (drawer and instance2) are the .name property of these movieclips. Otherwise I could not have traced them through asking for the .name property, in the above. Yet only the first of these two can be manipulated:
drawer.x can be set;
instance2.x can (as we know) not be set.
But...why? What is the real difference between these two kinds of names? How can they both be the .name property of their underlying movieclip, yet be of such a different nature? What IS the nature of the instance2 name? If it's a String, how come the .name property of one movieclip can be a variable name, while the .name property of another (but identical) movieclip is a String?
I've searched every bit of web page on the net I could find. But it looks as if nobody addresses this issue. We all just work with it - but it makes no bloody sense. A name property = a name property, you'd think. Whether Flash set it or I set it should not make a difference. The x property of a clip, for example, does not change in nature according to who set it - me or Flash.So, again, just to emphasize the problem: how can a property (the name property) of a movieclip change in NATURE depending on who set it? After it's been set, shouldn't the name property of a clip be of exactly the same nature as the name property of another clip?
View 8 Replies
Similar Posts:
Aug 18, 2010
Trying to set up a world of warcraft like hotkey setup for an RPG i'm making for a school project, where you drag spells from the spellbook onto the hotkeys. Understand all the concepts, however, instead of doing a ridiculous amount of if statements, I want to loop the functions. Unfortunately, I don't know how to refer to certain variable and instance names within loops. I shall show you what I have:
ActionScript Code:
for(var i; i<2; i++){
spellbook_inst["spell_"+i+"_inst"].onPress = function(){
this.startDrag();
_root.hold_spell_position_inst._x = this._x;
_root.hold_spell_position_inst._y = this._y;
}}
The "spells" (i.e., icons you drag from the spellbook) are all named spell_(number)_inst, and are movieclips within the spellbook_inst movieclip. I want the drag function to be available for all spells. At the moment, I don't get any syntax errors, but nothing happens, so I presume I have referred to it incorrectly.
View 2 Replies
Sep 12, 2009
The movie I'm creating will have many movie clips on each frame and each will have a mouseover tooltip.I have the code set so that I can mouseover a defined movie clip and I properly get the tooltip.[code]This works, where n1 is the instanced name of the movie clip.What I want is to be able to define a variable "whichNav" that will dynamically change to a movie clip instanced name when I mouse over that movie clip, then I can replace "n1" in the above code with "whichNav" and not have to remake the above code for every movie clip in the frame.For example, I could have movie clips instanced as n1, n2, n3, n4... ect. I want a variable that will track which movie clip I have my mouse over, and input that variable into the above code to create the tool tip for each movie clip.
View 3 Replies
May 21, 2011
Alright so lets say I have a number of movieclips or text fields or something with instance names test1, test2, test3 and so forth. Now say I want to fill these text fields with text that I have in an array and I want to do this with a loop, how do I do this? What I'm really asking is if there is a way to use a variable in an instance name if you catch my drift.
[Code]...
View 1 Replies
Aug 26, 2010
We've got an Illustrator file with something over 1,000 layers. We're trying to import this into Flash and keep the layer names intact, such that they become the names of the movie clips that are imported for each layer and can be used programmatically. (It is a diagram and arrows, boxes, etc all have callout names that will eventually allow them to link to a database.)As near as I can tell, the Import dialog will NOT pass this info across between the two parts of the dialog.
View 1 Replies
Mar 17, 2010
I have a grid 8 columns, 3 rows.I used instance names such as 1-1, 1-2, 2-1, 2-2, ect to easily identify each cell. I can call the movieclips within them without a problem by doing this["1-1"].gotoAndPlay(1); but how do I go about calling them when I can't use "this"? "1-1".gotoAndPlay(1); does not work.
View 2 Replies
Jan 26, 2009
In the first frame I have 60 buttons with each having a actionscript in it using the instance name "A1". What I need to know is how can I REPLACE the instance name from A1 to B1 in 60 buttons in my NEXT FREAME?
Is there an easy way to do it rather than typing one by one?? I used the "FIND AND REPLACE" option but it replaces A1 to B1 in both the frames. I need to alter the instance name only in the second frame. How can I do it?
View 3 Replies
Apr 26, 2009
I have two buttons, they're both movie clips, and have identical code except for their names. When I place one of each on the stage and give them instance names, they come up output:
[Code]...
View 1 Replies
Sep 14, 2010
How to write the following AS codes using VAR instead of instance names?
my_Input_Txt.onChanged = function() { _root.my_Dyn_Txt5.text = my_Input_Txt.text;_root.my_Dyn_Txt6.text = my_Input_Txt.text;};
_root.my_Dyn_Txt5._visible = false_root.my_Dyn_Txt6._visible = false_root.MDT1._visible =
[code]....
View 7 Replies
Jul 15, 2009
I get the error "Access of undefined property menu_bar" when menu_bar is an instance name directly on the main timeline. I'm not sure how I would call it in the other class. It also isn't exported for actionscript is that the problem?
I have it imported to my document class as:
var mouseClicks:MouseClicks = new MouseClicks();
addChild(mouseClicks);
Then the class looks like this:
Code:
package{
import flash.display.MovieClip;
import flash.events.*;
[Code]....
View 2 Replies
Mar 4, 2010
I know I've read something about this here before but I can't find it, so for Mr. Thicky here, I have dragged some buttons on my stage - each one is actually an instance of the same movieclip. In the IDE, I have given them instance names like 'myButton1', 'myButton2' etc. I've then grouped all these buttons together into a single container movieclip called 'buttonHolder'. Now, in my code, I am trying to retrieve the instance name of the button I have clicked on:
[Code].....
View 3 Replies
Jun 3, 2010
I have 100+ of the same movieclips on the stage at the same time, all positioned differently.i'm getting really tired of clicking on one of them, then clicking in the instance name box then typing "i65", then clicking on one of them, then clicking in the instance name box then typing "i66"...
is there anyway flash can fill this information in for you? or a plugin anyone's heard of? this isn't really an actionscript question, I'm not so fussed about selecting the different movieclips based on getChildAt or any of that stuff, I'd just really like a faster way of assigning instance names.
View 1 Replies
Oct 22, 2010
I have a 4x4 set of square buttons that I need to give instance names to. They will be named 'btn_1' thru 'btn_16'. Is there any shortcut to assigning the names or do I have to go through 16 times clicking on the button and clicking down to the 'instance name' text box?
View 2 Replies
Oct 4, 2011
I am working on making a photo flip animation between 5-7 photos but i have to duplicate this 70 different times. So what i have done is made a scene for each set of 5-7 photos, they are externally being pulled in through an AS3 script to prevent a large .swf file from happening with all those photos. The problem i am running into so that i cant seem to run a find and replace search to replace the instance name values.
View 1 Replies
Feb 3, 2009
iv got these buttons animated using the inbuilt tween function and am coding them like this:
function navOver(e:MouseEvent):void {
var page = MovieClip(e.currentTarget).buttonThumb;
var myTween16:Tween = new Tween(page, "y", Regular.easeOut,
0, -25, 0.35, true);
[code]....
MovieClip(e.currentTarget).instanceName returns undefined neather of which are the instance name.i cant hardcode the function because its used on lots of different mcs throughtout the flash file
View 4 Replies
Feb 23, 2010
I am trying to get the instance name that i gave to a dynamically created movieclip the movieclip was created using var zebra_mc:Zebra = new Zebra(); //creating a new instance of the zebra class The movieclip was then added to the stage using a for loop, as it was contained in an array. Each time a movieclip is added to the stage it is then added to another array (existingObjects) I then need to iterate through this array and pull out each objects names. I have tried using existingObjects[i].name, which returns "instance140" and existingObjects[i].toString, which returns functionFunction(){}, very useful. and existingObjects[i] which just returns the object.
View 2 Replies
Jun 18, 2010
I know its possible to hit test From something without an instance name if you have it in a seperate .as file. All you have to do is type in this.hitTest(InstanceName);
But, Is it possible to do a hit test from something without an instance name against something else that doesn't have an instance name?[code]...
View 16 Replies
May 30, 2011
I know you can store instance names in an array and call on the array values to reference the instance names in it.I was wondering if there is any way I can take an instance name, feed it directly into a function and use the name of the function variable/array/whatever to affect the object instance of whatever I name.
if it's an array of instance names, what is it actually an array of? Also, is there any way to hold and reference an instance name in a single value? sidenote: this doesnt have much to do with my question, but can arrays be fed directly into the header of a function?
View 6 Replies
Nov 13, 2009
I have a Flash CS4 FLA throwing the following error when I hit Ctrl+Enter to test the movie: WARNING: Multiple 3D objects on the same frame have the same instance name. 3D instance names must be unique. All but one of the instances will be renamed during export. On my layers, I can't see any duplicate instance names, and Flash doesn't give me ANY indication as to which names are causing the problem. I know it's to do with two layers making use of 3D Tween. When I hide them, the problem goes. I've even tried removing and replacing the Symbols. First of all, I have to have the objects on those layers Tween in 3D, and I have to give them instance names as I refer to them from ActionScript code.
View 2 Replies
Jan 13, 2011
I have a series of movieclips which I want to use as buttons.The instance names of the clips are as follows: "ms1", "ms2", "ms3" and so on...I want to put frame actions on these buttons, so that when the mouse rolls over on them, the button movie clip changes frame. I created an array to store instance names and then referred to it for actions, but the problem is that although my buttons do work, but when I roll over them, the button doesn't move to its next frame.
Here is my code:
ActionScript Code:
var men:Array=new Array();
[code]......
View 1 Replies
Apr 19, 2005
I haven't seen much to explanation of this in any Flash documentation,but maybe someone knows more about this. Initially I was trying tofix a buggy application. The app is fixed now, but I'm still curious.I have an app that defines some object instances (buttons and movie clips)in various frames and on various levels of a timeline. For any object thatneeds to be manipulated by AS, I give it an instance name. However, there's no safeguard against giving several instances the samename. So, I experimented with giving two buttons, on differentlayers and different frames, the same instance name ("playbtn"). Then I defined an event handler:
playbtn.onRelease = function () {
gotoAndPlay(1);
}
[code]....
View 1 Replies
Oct 19, 2005
im trying to use a function in a timeline to identify a symbol and do some stuff with it.
on the movie clip
onClipEvent (load) {
_root.test(_name);
}
[Code]....
i've tried some different things, such as eval, but can't get anything to work.
View 1 Replies
Dec 1, 2005
I am working with a number of movieclips and I was wondering if there was an easy method using actionscript to assign them instance names instead of doing it manually for each movieclip.
View 8 Replies
Jul 13, 2007
There's a way to get the instance name of objects/symbols for variables and use this in actions and/or functions?
View 4 Replies
Apr 5, 2010
I have some movieclips on stage each with an instance name like this: 101, 102,103,104.. etc.When I click one of them, it's istance name is added in an array:[code]I've got a button on stage too and I want when this button is clicked to change the Y of all the selected movieclips:[code]
View 6 Replies
May 19, 2010
Ive made a FLA that has 360 frames.. on each frame there are 5 instances of a movie clip, each of which ive had to painstakingly position and adjust the perspective of with the 3d tool to make them look like they rotate with the clip. Each of the 5 instances on the stage have different instance names (screen1_mc - screen5_mc).My problem is, after all that frame by frame positioning, ive gone to render out the SWF and its telling me that there are "Multiple 3D objects on the same frame have the same instance name. 3D instance names must be unique. All but one of the instances will be renamed during export."
Soo frustrating. I must have either hit ctrl+v twice on one of my frames or perhaps not renamed the instance after pasting it.. but i cant figure out which frame the problem is happening on. Im really hesitant to have to go through all 360 frames clicking on all 5 of the instances to see which frame is causing the issue.Can anyone think of a programmatical way to figure out which frame has the duplicate instance on it?I was thinking about using an enter frame event to loop through tracing out the frame number, then somehow trace out the instance names and the number of instances of screen_mc that appear on each frame to see which frame has the instance thats been automatically renamed by flash?
View 11 Replies
Nov 11, 2010
So, I have something like..
Code:
select = ("block" + number);
trace(select._currentframe);
number++;
This is because I have 5 movieclips named block1, block2, etc. However, it returns undefined. When I directly state the instance name, like:
Code:
trace(block1._currentframe);
It works. How do I use variables as instance names?
View 2 Replies
May 26, 2011
here is the code
Code:
import flash.events.MouseEvent;
import flash.display.SimpleButton;[CODE].....
basically, what this is is a map with hotspots. Its starts off with a rotating movie that is just three maps fading into each other. Clicking on it brings up another map with the hotspots. This is working how I want it to. Now the problem comes when I try to get the "hotspots" to work. What I did was create a series of red dots of the "dot" instance. Their instance names are at the bottom of the code in the commented section. When I mouse over one of these dots (which are buttons, btw) I want the mouse-over function to be called so that it jumps the the frame I want (again, the commented out section kind of gives an idea of how i want to do this). The two biggest things I need are thus: I need to add another parameter to the mouse_over function that takes a number. This number will be the frame I want to go to i.e. the parameter of gotoAndStop(x); The second this I cant figure out how to attach this to the "dot" buttons. I think it has something to do with the getChildByName thing, but I dont know how to implement it.
View 14 Replies
Apr 19, 2012
I have a bunch of buttons on stage, and i want to place all of those buttons names in an array so i can assign an event listener to them easier. What i have is:
Code:
var btnArray = new Array["btn1","btn2","btn3","etc...."];
for(var c=0; c<btnArray.length; c++)
{
btnArray[c].addEventListener(MouseEvent.MOUSE_OVER, doSomething);
}
But that isnt working.
View 2 Replies
May 28, 2009
This should be simple but I can't come up with or find the answer anywhere. All I want to do is create a series of Arrays with instance names generated on the fly. I then want to reference these later. I have a "for" loop with a variable "count" that I want to add to a base name of rowArray and use the result to create an Array. I would think that it would look something like this:
[Code]...
View 2 Replies