ActionScript 3.0 :: Change Parent Timeline From A Button In The 'Child' Timeline
Apr 30, 2009I am just trying to use actionscript 3.0 (Flash CS4) to change the 'Parent' timeline from a button in the 'Child' timeline
[Code]...
I am just trying to use actionscript 3.0 (Flash CS4) to change the 'Parent' timeline from a button in the 'Child' timeline
[Code]...
Why does a child movieclip only show the first frame within the IDE, regardless of where you are in the parent timeline?If you throw a movieclip with 25 frames onto the main timeline, which also has 25 frame, you don't see the nested movieclip's frame-progress while you scroll through the main timeline.Is there a setting somewhere in preferences or somewhere that will enable you to see a nested movieclip's frame position from the main timeline? Like you do with After Effects composites?
View 3 RepliesI have a main .swf from which I am loading a child .swf into using this code.[code] Once the .swf is loaded in though, I want to be able to use basic timeline control functions like stop(); and gotoAndPlay(); on the child .swf from the parent.
View 1 RepliesI have a basic xml driven portfolio. The xml file holds the path to the portfolio pieces (external .swfs). I have a main navigation that moves from project to project and a subnavigation to view individual pages of that project.The subnav is where I have the problem, I simply want to call gotoAndPlay("framelabel") of the designated mc. It seems that you can no longer call to the timeline of child movieclips as you could with AS 2. I've found some examples Except the examples discuss access of nested movieclips on the stage with assigned instance names. But the problem I'm facing is that I have each item pulled in via the loader Class then the objects are pushed into an array and my subnav needs to access them dynamically via array notation.something like this:
PHP Code:
public function loadMe(){
//var l:Loader = new Loader();
[code].....
I can't get my button to play the parent timeline.. I can get it to alpha out the MC but not play the timeline.. grrr..
ActionScript Code:
import com.greensock.*;
import com.greensock.plugins.*;
TweenPlugin.activate([FramePlugin]);
[code]....
In web design, you usually define a CSS style for a navigation link, which will appear when the user is currently on that page. So if I was on the "about" page, the "about" link in the navigation would be highlighted red, for example.I'm trying to do the same thing with a button in Flash. When a user clicks the button ("on(release)"), it will take them to another frame in the timeline, and, the look of the button will change to let the user know they are currently on that frame. I thought I could do this by adding a keyframe at the destination frame, then going into the button and changing the "up" frame. Sadly, that doesn't work, as it changes the "up" frame for the button everywhere.
View 1 RepliesWith Flahs CS4 with as3 paint a rectangle F8 and convert to symbol button, now if edit the new button, timeline is like this: paint another rectangle F8 and converto to symbol: Movieclip, now the time line is like that:if in the second symbol, edit in properties, and change MovieClip to button, when I edit it, the timeline is no change as first option. What can I do to see the button timeline.
View 2 RepliesHow do I link a button thats embedded in frame 2 (music page timeline) to a frame in the main timeline ( frame 3= biography page)? Both pages are on the same scene with link buttons embedded in each page independent timeline.
View 1 RepliesI have a movie which contains a mc on the main timeline. that mc has a function in it that says
[Code]....
I've just swiched over from FL8 to FL CS4 (3 days ago). I'm learning AS3 at the moment but am on a deadline with a project (a bit over it actualy) which uses AS3
I have a movieclip (container_mc) on the main timeline which holds all the animation and a timer (timer1_mc).When container_mc reaches frame 2 it stops and a timer (timer1_mc) starts running.When the timer finishes, container_mc should continue to the next frame.The code I have to do that (from the timer1_mc) is:
if (d> 260) {
parent.container_mc.nextFrame();
trace("blabla");[code]....
This doesn't work, it gives me the error 1119: Access of possibly undefined property container_mc through a reference with static type flash.display:DisplayObjectContainer.
I have a swf that loads an external swf. I want the external swf, (the one that was just loaded), to interact with the timeline of the swf that just loaded it. I've been trying MovieClip(root). or MovieClip(parent). but they give me errors. How should I use as3 in the external swf so that it interacts correctly with the parent?
View 3 RepliesIf I have a movieclip in my library with some animation on the timeline and actions as well (stops, calls to other methods, etc.) and at runtime I add this clip to the display list, everything works as expected. The actions in the timeline of said clip are fired.If however, I load this file into another swf all the actions in the movieclip are ignored.Attached is a demonstration of this behavior. simply runnning Child.swf on it's own will show nothing as there is a stop on the first frame of the attached clip. However run the Shell.swf (which loads Child.swf) and you'll see the animation of the movie clip. There are no calls anywhere telling anything to start playing. What's worse, the method call further down the timeline and the stop and the end of the timeline are also ignored. Compiling these files and looking at the Output window, you'll see the trace from the method "__testCall" is never fired.Is this a bug with the Flash Player?I've had to use addFrameScript as an alternative to actually having the actions on the timeline. lame.
View 3 RepliesHow do I get a targeted mc to communicate with the parent timeline? I'm not using levels but targeted mc.
I need the playback head to go from the targeted movie clip (this is called nested, correct?) to the parent timeline and stop at a particular movie instance or frame label. I have been unsucessfully using this:
gotoAndPlay(_parent.instancename);
I am on the main stage. In a layer I create a button. I double click on this button to enter its layer. I then do some AS3 to say if the play button is pressed, to change to a pause button. How would I say "If the main timeline is finished, change to the play button"? I am trying
[Code]...
I got a Parent Sprite, let's name it SpriteP, which holds inside it two other Sprites. Sprite1 and Sprite2.[code]Sprite2 is a rectangle. When I rotate it, of course, the height of its parent, SpriteP, GROWS. But I would expect that height to go back to what it should be when I'm removing Sprite2!And it does! If I remove Sprite2 while NOT being rotated, the height of the parent drops back to normal, 200.
View 10 Repliesi am slightly confused about the parent and child relationship. lets assume we have several different instances, what would be difference of adding them all as children of the stage and creating a parent-child hierarchy between them(other than the access path).
View 5 RepliesI got a Parent Sprite, let's name it SpriteP, which holds inside it two other Sprites. Sprite1 and Sprite2.
When Sprite2 is NOT rotated:
Code:
trace(SpriteP.width + ' ' + SpriteP.height); //100 250.
SpriteP.removeChild(Sprite2)
trace(SpriteP.width + ' ' + SpriteP.height); //100 200. -> works, 200 is good.
When Sprite2 is rotated at 90:
[Code].....
And it does! If I remove Sprite2 while NOT being rotated, the height of the parent drops back to normal, 200. But if I rotate Sprite2, the Parent won't update its bounds.
Essentially, i have loaded an external SWF (area-home.swf) w/in a MC (mc_loader) of the main SWF (base.swf). This is simple, not a problem, works like a charm. What I want to do from here is have the main SWF (base.swf) tell the external SWF (area-home.swf) to gotoAndStop at a certain frame (42). Below is the code that I have, and can't quite figure out why it won't work:
PHP Code:
var loader1:Loader=new Loader();
loader1.contentLoaderInfo.addEventListener(Event.COMPLETE, myFunction);
loader1.load(new URLRequest("area-home.swf"));
[code]...
When i trace the total frames, it does bring back the actual frame count from area-home.swf, so I know that it is communicating. It simply does not stop on the 42nd frame (even have a stop(); command on that frame in area-home.swf's timeline)
I have a problem with XML data loading into a datagrid when the containing swf is loaded into another swf.
I am able to get this to work in other scenarios, however in this scenario it seems to be related to the menu system I am using. The menu is populated from another external XML and when a button is clicked it calls a function to load the swf containing the datagrid into the parent swf. The URL for the swf to be loaded is accessed from the menu.xml. The result is an empty data grid.
I have tried adding a the datagrid component to the parent swf, however this dows not solve this issue.
I have a parent movie that contains several buttons that load several child SWF files.The parent timeline has only 1 frame, and in that frame all the ActionScript (version 3) for the parent movie is imported with a single statement:
include "script.as";
The problem is that when a child movie loads, IF the child contains ANY ActionScript calls, it also somehow runs the code in "script.as", which accesses many elements of the parent movie which are not present in the child. This produces "NULL object reference" errors which crash the script:
TypeError: Error #1009: Cannot access a property or method of a null object reference.If I remove all ActionScript calls from the child's timeline, then the child doesn't run the parent's code - But if place so much as a stop(); call in the child timeline, then the child runs the parent's code after being loaded in.
I originally wrote this script for another project, which works fine, and then copied and pasted it to this one, so I don't understand why it's not working the same way. Earlier on I suspected the trouble might be from re-saving my current project as ActionScript 3, when before this upgrade was saved as ActionScript 2. So I went back and re-created each file in fresh AS3 FLAs, but it didn't solve the problem.The child SWFs are loaded with this code from "script.as".
var ldr:Loader = new Loader(); addChild(ldr); var url:String = "child.swf"; var urlReq:URLRequest = new URLRequest(url); ldr.load(urlReq);
Also in "script.as" is a simple trace call at the top of the file:
trace('script.as is running');
When de-bugging the file, the message 'script.as is running' appears in the output panel when each child SWF is loaded, which tells me that the child files are running the parent's code. Is there any way to prevent this from happening?
I work on a truckload of flash banners and have progressed more into dispatching events from the final frame of a MovieClip that would contain an object (or collection of closely related objects) animating and then listening for them from the parent timeline so that I know when to continue the main animation etc.In the animation I'm working on currently, there's a car built from blocks over time (the blocks fall from the top of the banner to make up the car); this is all contained within one MovieClip (to make the resizing easier - all I'll have to do is move the entire MovieClip around).The problem is that when I place this MovieClip onto the timeline, it's represented by its first frame (which is nothing because no blocks have fallen yet). This makes it hard to work with because I can't really tell exactly where the car is going to be when the animation is done and so on.Is there a way to have the final frame of this MovieClip visible from the outer timeline?
View 3 Repliesi have loaded an external SWF (area-home.swf) w/in a MC (mc_loader) of the main SWF (base.swf). This is simple, not a problem, works like a charm. What I want to do from here is have the main SWF (base.swf) tell the external SWF (area-home.swf) to gotoAndStop at a certain frame (42). Below is the code that I have, and can't quite figure out why it won't work:
PHP Code:
var loader1:Loader=new Loader();
loader1.contentLoaderInfo.addEventListener(Event.COMPLETE, myFunction);
loader1.load(new URLRequest("area-home.swf"));
[Code]....
When i trace the total frames, it does bring back the actual frame count from area-home.swf, so I know that it is communicating. It simply does not stop on the 42nd frame (even have a stop(); command on that frame in area-home.swf's timeline)
I'm working on a project and I need to be able to change the movieclips parent without moving the child, so I can tween it into position myself.
View 7 RepliesI made a MovieClip called Stone and I made a StoneBackground child in it. What I want to do is make a grid of the Stone image but everytime with another background I tried this:
stone:Stone = new Stone();
for(var i:int=0; i<2; i++) {
stone.child.gotoAndStop(i);
addChild(stone);
}
But this doesn't work. How can I stop the timeline of the background at different frames for each "stone" ?
On the main timeline I've got a movieclip, inside this movieclip I have some elements. Can I manipulate those elements from the main timeline through AS3? How?
View 3 RepliesI have a cloud named cloud2_mc and in its timeline i have a cloud layer, and an actions layer. I took the cloud and made it into a a Movie clip clip with an instance name of embeddedcloud_mc in this Movie clips timeline i have a 50 frame animation of the cloud breaking appart and disapating with a tween and i have a stop(); function on frame 1 of this layer.
What I want to happen is, when the cloud2_mc movie clip is clicked to play the animation of the cloud breaking appart. the cloud2_mc has a trajectory moving slowly accross the sceen continuously when the cloud2_mc reaches the side of the sceen it loops again. When the animation is clicked i would like it to continue across its path but, when the cloud2_mc reaches to left hand side of the screen i want the embeddedcloud_mc to reset its timeline and go back to its original state where the cloud has not broken appart.
My question is, how do I access an embedded movie clips timeline to tell it to play an animation on its timeline as well as, how do i make the same object restet its timeline to frame 1?
How do I remove child from a different Timeline. One of my movieclip contains three children.I want to remove all the three children.How could I do that. I tried setting instance name and removing the instances using getChildByName. But it doesn't seem to work.
Code:
var mainMc:MovieClip = new MovieClip();
addChild(mainMc);
var box:box_mc;
[code]....
remove child from the timeline. I have attached this sample file. I get "1120: Access of undefined property board." error when I publish it.Here is what I'm doing:
Open button: This will create a child with movieclip
show_btn.addEventListener(MouseEvent.CLICK, showBoard);
function showBoard(event:MouseEvent):void{
var board:Board = new Board();[code]..........
Here is the Error I get when I publish it: 1120: Access of undefined property board.
I have an swf file, MyRoundButtons, which is a set of radio buttons I built (not components). It works fine, but if I import it into a parent it won't work anymore. I have to write a script to load it into a movieclip, (which I hate, because I'll have a several different swfs to assemble on my final stage. I really want to see them all on the stage together, not just at runtime.)
Even when I load it into a clip and the buttons work, however, it doesn't seem to have a separate timeline when double-clicked ,and:I can't make the imported buttons control the timeline of the parent.I defined a test function:
Code: Select allfunction goToNirvana() {gotoAndPlay("nirvana")};
Frame "nirvana," in th parent, has a Trace instruction in it.
goToNirvana works on its own in the parent. [code].....
Whether I define that function in the child, the parent, or both, the instruction won't work. Now, I'd prefer not to do the loadMovie thing at all if I can avoid it, I'd rather have fully rendered button clips onstage at authoring for me to arrange and move about, with fully independent timelines right there. But you see what I'm trying to do. I just can't get it done.
I want to change a variable set to 0 in the parent to 1 when a button in the child is clicked.
This is the parent zero.swf:
var noPass:Number=0;
function getPass(event:onLoad, noPass):void {
if(noPass==0) {
[Code]....