ActionScript 3.0 :: Accessing Variables On The Root Timeline?
Feb 18, 2008
I have some variables declared on the root timeline that I need to access from some MovieClips. In AS2 I would do something like this _parent.myVar from within my MovieClip. I intend on getting fully up to speed with AS3 but right now I need a quick fix.on the root timeline I have a variable : var myHitTest:Boolean = false;My MovieClip needs to access this var so I tried it several ways listed here. I've had no success.
im attempting to keep it as portable as possible so its easier to edit later, and i dont have to go around copying/pasting too much code. - i'll cut to the chase..
On my main timeline, i load all the image-file names, as variables.. using loadvars into thumbnails, which ive given instancenames Loader_1 to Loader_20, inside these thumbnails is the Loader component Thumb_1. Here is the code on the main timeline, to load these variables.
Code: BigLoader._visible = false; var my_lv:LoadVars = new LoadVars(); // load variable function
[Code]....
how i could make this more portable without -completely- changing the format its in [so i can still understand it]
My flash project is structured as follows, with the nested external swfs being loaded to clip holders using loadMovie(): home.swf |--sponsors.swf |--educators.swf
In home.swf, I've defined a text box with instance name contentWindow_txt, and assigned its path to _root.cw_txt. Now, when I type the following anywhere in home.swf: Code: _root.cw_txt.htmlText = "testing!";
The dynamic text box contentWindow_txt will display "testing!" when the swf loads. Unfortunately, when I make the same call in sponsors.swf, I get nothing. Is there something about external swfs or variable inheritance I don't know?
number = '12345' I'm trying to hook my counter up to a PHP script that echo's a DB query. Now I've had no issue passing the variable and I can even display it in a dynamic text field but no matter what I try I cannot get the "number" varibable to use my PHP variable The dynamic text field shows the correct value clear as day but the counter just shows "undefined".
i use MovieClip(this.parent) to access a variable that's outside of the movieclip i'm currently writing code in. However, this doesn't work within two functions.For example:
function editMainText (e:Event) { MovieClip(this.parent).headline.text = "Hello"[code]....
doesn't work.There are probably a few small errors in my code, but i essentially need to know how to modify MovieClip(this.parent) to work within the second function.
Okay so there are four variables on my timeline, two of which are arrays:
var greenSpriteArray:Array = new Array(); var pinkSpriteArray:Array = new Array(); var greenNum:int = 1; var pinkNum:int = 1;
whenever I refer to them from a class file by just the variable names I get a 1120 undefined variable error. But if I call for example stage.pinkNum I get "1119: Access of possibly undefined property stage.pinkNum through a reference with static type flash.display:Stage."
Let us say we have a movieclip "mc1" on the stage. We also have another movieclip "mc2" inside mc1. We have declared a variable, say, var number1:Number=5 on the first frame of the main timeline. Now we go inside mc1 and then inside mc2 and write some code on its first frame. Is there any way to use the variable number1 over here? Can properties of mc1 be altered using the code written here? In AS2, it could be done using the "_parent" command, but it doesn't seem to work in AS3. (when we use parent and try accessing a property, it says that it is possibly undefined)
I'm trying to check for an external swf file being loaded using event.target.name=="pubResCHETNA" and currentFrame == second frame of scrollPaneGroup movieclip (the scrollPaneGroup movieclip is from a external loaded swf file)
Here is my code: var currentSWF:MovieClip= new MovieClip(); currentSWF = MovieClip(loader.content); if(event.target.name=="pubResCHETNA" && ?????? ) How should I place the condition over here? { fCbtn.buttonMode=true; fCbtn is a movieclip reside in second frame of scrollPaneGroup movieclip of "pubResCHETNA.swf". }
I have a mc in the main timeline named contactBox_mc, within this mc I have another mc named closeBtn_mc. I have added an EventListener to closeBtn_mc to set the visibility of contactBox_mc to false on MouseEvent.Click.. but no matter what method I try, I get the following error:
1180: Call to a possibly undefined method contactBox_mc.
This is the code I placed within closeBtn_mc to set the visibility of its parent movie to false:
closeBtn_mc.addEventListener(MouseEvent.CLICK, closeBox); function closeBox(e:MouseEvent):void{ contactBox_mc(this.parent).visible = false; }
I also tried: root.contactBox_mc.visible = false; and got the same error,
I'm having trouble accessing the value of the root node of an XML variable in flex. For example:
[Code]....
I can change the "Type" attribute above with X.@Type="xyz"; But how do I change "Content123" to something else? If the xml document were longer/deeper, I could say something like X.Entry[11].Cost=2.22; But what do I say in this case? Obviously X="Content456" doesn't work...
I have a SWf application built in flex 4. One part of the application relies on accessing a public variable ("step1") set at the application root, and is accessed with
var app:Object = FlexGlobals.topLevelApplication; trace("step one is "+app.step1);
This, while not optimal, has worked fine. Now, hoever, I need to load this entire application into another application, and I can't figure out how to access my step1 variable any longer.I have been loading the swf into the new parent application like so:
public var myLoader:Loader = new Loader(); public var pizzaContainer:UIComponent = new UIComponent(); private var myUrl:URLRequest = new URLRequest("chickensoup.swf");
I'm trying to change the text on a textbox called "text1" that is part of a movieclip called "menulist" using actionscript. How can I access text1 with actionscript?[code]
Basically I have a _mc that I am calling in from the library. When I get to the end of the clip I want it to advance the root time line to frame 3.This is the code I have at the end of the _mc
MovieClip(root).gotoAndStop(3);
This is the error I get :Error #1009: Cannot access a property or method of a null object reference.at introScene/frame91()
TypeError: Error #1034: Type Coercion failed: cannot convert flash.display::Stage@44370ba1 to flash.display.MovieClip.
I have a root timeline in which contains a movie clip on a certain frame. Inside that movieclip, on it's second frame, there is a button. I would like to use this button, when clicked, to move take the user to a frame on the root timeline.
So im new to AS3 im trying to do some basic things that i knew in as2 but they arent working in AS3.Im basically trying to do this.this.gotoAndStop("1");basically i just want my main timeline to jump back to the beginning the main time line
What I'm trying to do is very very basic however its flat out not working. I'm trying to add a event listener to a button located within a movieclip thats on the root time line.Here's the code:
I am using Flash CS4 and Actionscript 2.0, and I want to be able to run a certain command for a time I am making only on certain frames...
[Code]...
This doesn't work. The reason I am trying to do this, is because every time I complete a level the timer is still going at the 'congratulations screen' and then when I go to level 2 the timer would start up again, and the seconds would go twice as fast.
I have a movielclip, nav_mc, inside which contains my navigation buttons. Lets say I want to effect the time timeline. Before in AS 2.0 I could simply go
function doIt(evt:MouseEvent):void { _root.january.gotoAndStop(2); }
That doesn't work. Returns this in errors:
Warning: 1058: Migration issue: The property _root is no longer supported. This property has been removed. The closest equivalent is the Stage, which serves as the root of the ActionScript 3.0 display list..
Neither does
root.january.gotoAndStop(2)
or
stage.january.gotoAndStop(2) (1119: Access of possibly undefined property ball_mc through a reference with static type flash.display:Stage.)
or
_stage.january.gotoAndStop(2)
or anything!
How do we do this very simple thing now in AS 3.0
TLDR;
How do I reference the _root timeline in AS 3.0 since _root. no longer works in 3.0
I have a 13 movieclips within another movieclip which in turn is placed on the root timeline. I have written a function in the actions layer of the main timeline: function illboxClear(){ _root.illpre.ill1.gotoAndStop(1); _root.illpre.ill2.gotoAndStop(1); _root.illpre.ill3.gotoAndStop(1); _root.illpre.ill4.gotoAndStop(1); [Code] .....
It sends the animation in each of those described movieclips back to frame one as you can see. When I try to call the function from actions on a button which itself within a separate movieclip placed on the stage: on (rollOver) { illboxClear(); _root.illpre.ill2.play() } on (rollOut) { _root.illpre.ill2.play() } on (release) {getURL("boxer.html","_blank"); } It doesn't work! Can I not call functions from button objects or have I made some other elementary error?
I have only been using FLASH CS3 for a little under a month. I have messed about with it to create some basic stuff. However recently I started on a bit of a larger project. I 'm by no means an expert in FLASH CS3 or AS3.My problem -I created a .FLA file that has seven movie clips on the main timeline, each in its own layer. These are listed below in the order they appear within the main time line.
layer ------------ movie clip ON -------------- on_mc RIM ------------- rim_mc NAV-------------- coverbase_mc PLAYER---------- player_mc MAIN------------- main_mc NAMEBOX------- shellname_mc BASE------------ Base_mc
The art work for these was all imported from adobe photoshop. They all only have one frame on the main timeline. Each movie clip though has its own internal time line and some have further nested movie clips within them.The issue occurs within the NAV layer/coverbase_mc. I placed a movie clip(to act as a button) within coverbase_mc. This movie clip is called navbut_mc.Now, I already have a couple of similar movie clips, that act as buttons, in on_mc and rim_mc these work as I intended them to. However navbut_mc does not work at all in its current position. I get no errors at all on testing the movie but the action that I want it to do does not work even buttonmode = true; will not work on it.
However, if I use the same movie clip in the rim.mc, but obviously give it a seperate instance name (start_mc), then it works as intended. I have looked at various diffrent things but have to admit i'm stummped. Its almost as if when its in coverbase_mc its being hidden by the clips above it, if thats possible.The reasons I need it to work in coverbase_mc are for a) the overall look of the project b)I have some other buttons in that location that need to work from there.
My stage is empty except for an MC with a simple animation and an AS 2 layer. There is not a button or user interaction that engages the MC. I want the MC to play when the timeline reaches the frame with the AS. My MC has an instance name of 'blueMC' and here's the AS I've tried:
blueMC.play(); _root.blueMC.gotoAndPlay("2"); on(load){ blueMC.play(); } onClipEvent(load) { blueMC.gotoAndPlay("2"); } Shouldn't it just be this?: MCinstanceNmae.gotoAndPlay("Frame# or label");