ActionScript 3.0 :: Comunicating Between Loaded Child Movieclips And Parent Holder Movieclips?
Aug 6, 2010
I m trying to make sense of how to load a swf into a parent MovieClip and allow them to communicate.I ve attached two zip files � one which works fine and the other doesn�t. Unfortunately (for me), the one which doesn�t work is closer to my current project.I need to load movieclips into the parent movieclip. The parent movieclip has controls which rely on values parsed from the child movieclip.In the parent movieclips I wait until the loading is complete and so the values should be passed. However, the values aren�t passed unless I use a button (or timer), to pass the values (see the working exampes).The code which doesn�t work is:
Parent movieclip:
ActionScript Code:
stop();
var myLoader:Loader = new Loader();[code].............
I am creating a pile of stackable movieclips. The dragging function is not a prob but I have a problem with the parent/child relationship in the "bringtotop" function.
Code: package { import flash.display.MovieClip; import flash.display.Graphics; import flash.events.Event; import flash.events.MouseEvent; public class Colorbox extends MovieClip { [Code] .....
The error generated is : RangeError: Error #2006: The supplied index is out of bounds. at flash.display:isplayObjectContainer/setChildIndex() at Colorbox/bringtotop()
I am trying to load a swf into a holder movie clip from the child movieclip.It's parent has a holder that i want to load a swf into.I am navigating from within a child clip.It would be nice to have the swfs load from an external xml file but it isn't mandatory.
Im working on a project that has a main swf file associated with the document class. It loads XML that provides the text content for the project, then it loads a swf that contains a font in its library, then it loads the first of several content module swfs. When the font swf has inited, I'm registering its library font with Font.registerFont(), and using it in a TextFormat object. After everything is done, I can add code to the document class to create a text field on the stage of the main swf and format it successfully with the TextFormat object, but when I try to do the same thing inside the loaded content module swf, the text doesn't show up there at all.
I'm working on a project that has a main swf file associated with the document class. It loads XML that provides the text content for the project, then it loads a swf that contains a font in its library, then it loads the first of several content module swfs. When the font swf has inited, I'm registering its library font with Font.registerFont(), and using it in a TextFormat object. After everything is done, I can add code to the document class to create a text field on the stage of the main swf and format it successfully with the TextFormat object, but when I try to do the same thing inside the loaded content module swf, the text doesn't show up there at all.
I am making my first flash game, and I have very little experience. How would I make a parent of MovieClips, so I can hide all of them onLoad at once, without having to do every single one?
I have a set of movieclips that are added as children to a parent mc. I want to scale the parent mc up but keep one of the mc's in the same place on the stage. I think the easiest way to do that is to scale the mc up, calculate how far the child mc moves and move the parent an equal amount in th opposite direction. Everything works but I can't for the life of me wrap my head around the math required to calculate the distance to move the parent mc. Has anyone else tried this? Is there an easier way that I don't know about?
I want to dynamically add MovieClips to a parent clip and display the most recently added at the to with the rest moving down as each new clip is added. So far I have it working but I get a gap right after the top-most clip.At the moment I'm just adding instances of one clip with a view to adding different ones later when I get the display sorted.
Code: Select all private var __content:Array; public function Menustack(){ one.addEventListener(MouseEvent.CLICK, doAddone);
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.
i 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).
I 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.
var lightBox:mc_lightbox = new mc_lightbox(); lightBox.x = 300; lightBox.y = 200; addChild(lightBox);
I get a lightbox up on the screen, within the lightbox is some more script, there are three menu options for that new window. So far when you click on it the loading part comes up just fine but whenever I have it go to another scene it leaves behind the lightbox above. I'm able to removeChild(loading) because its right there just a function above but I'm unable to removeChild(lightBox) because it's one up. How can I access that child? I tried many variations of parent, MovieClip, and root relationships but still couldn't get flash to find it.
I have an elearning course, a .swf, that loads multiple .swfs as the user progresses through the course. At the end, there is a quiz.
The quiz.swf uses the radiobutton component. I have developed some custom skins to use on the radiobutton component. I have figured out that: I have to add an instance of a radiobutton in the main .swf for the radiobuttons in the quiz .swf to show.I have to copy the radiobutton intance from the quiz swf library to the main swf library if I want my custom skins to show in the quiz swf While, this works fine. It is not practical. I want the quiz.swf to more modular. So I can pop it in to any course and not have to go back in and add the radiobutton skins to each course.
I am trying to implement a "card shuffle" animation using MovieClip instances on the stage. The instances are linked to the same class. From the class I am able to look at the numChildren of the parent: trace(this.parent.numChildren);
Let's say I have three cards on the stage with these instance names: "orange_mc", "green_mc" and "blue_mc". They are all linked to a custom class I created. On a MouseEvent I would like to bring the selected card to the top depth. I know that this would do the trick: this.parent.addChild(this);
I would like to animate the effect and it seems that to be able to do this I would need to know the depths of all the MovieClips on the stage (or at least to determine if the selected is at the top - for this, no animation would be required). I tried the following, only to get an error: this.parent.getChildIndex(orange_mc); and MovieClip(this.parent).getChildIndex(orange_mc);
I have a movieClip within another MovieClip. I gave the child movieClip the instance name "hSprite" and I added it to the parent movieClip stage. Now I get an error like the following.
[Fault] exception, information=ReferenceError: Error #1056: Cannot create property hSprite on com.objects.Hero. If I remove the instance name from the child movieclip, then the error goes away. but when I add the instance name back, the error reappears again.
Keep in mind that both classes are set for export. The parent class is embeded by a custom class which work perfectly fine. But the minute I give the child movieClip a instance name, the error starts up again.
i searched everywhere, i was not able to find a solutionmy xml menu implementation use a "main" Menu class. This class parse the xml file and create an aeeay of MenuItem class.MenuItem costructor is (stripped down version) something like this:Code:function MenuItem(name: String, url: String, parent_mc: MovieClip)parent_mc is a reference to the "container" MovieClip for Items (generally an emptymovieclip made by Menu class)
I'm trying to build a simple mask with 2 children mcs. The masking is almost working, but the two children only mask where they don't overlap. I've tried using a mask layer and using code, and it's the same effect either way.
When you make a simple game that maybe has a few different 'screens' like start, help, and high score, and a few levels, and you don't wish to load from external swf's. What is the best practice for making these games as far as the timeline?To just have ONE frame that add's and removes child movieclips from the stage?
I am having issues trying to get a simple button to make the playhead jump to a certain frame when pressed. I have the main timeline and then have a movieclip which has buttons inside of it and actionscript applied in the movieclips timeline. Is this a no? That is should all actions go on the main timeline? If this is so then does anyone know why I keep getting an error that it can't find the instance named button inside the movieclip?
portfolioButton.addEventListener(MouseEvent.MOUSE_ DOWN, mouseDownHandler); function mouseDownHandler(event:MouseEvent):void { gotoAndPlay(100); }
Let's say I am loading a movieclip from a remote url within another movieclip on another server.
This movieclip now needs to load another child movie clip on the same server as itself.
How can it get its own url and not the url of its parent container so as to load this child ? Because if it refers to "child.swf" it will be relative to the super parent container insted of the first server isn't it ? So it will not be able to load the child correctly if all it can get is the url of the parent.
i'm a designer trying to step up my flash skills and have a scripting problem that's causing me trouble. essentially i have a child swf loaded into a container in a parent swf and want the child to be able to instruct the parent. to explain in full, the child contains an flv with bespoke video player components. it's container sits in one frame of the parent. when the flv finishes playing, i need the parent swf to move onto another frame. as it's a controllable flv, it isnt possible to predict the exact length of time the child will need to be present, so it literally needs to tell the parent it's finished playing at that very point.
I am stuck with the ActionScript here. I have a very complex animated flash movie for eLearning. These contain around 10 to 15 frames. In each frame I am having multiple movie clip symbols. The animation has been created using a blend of scripting and also normal flash animation.Now I want to create pause and play functionality for the entire movie. I was able to create the pause function but when i try to play the movie it behaves very strange. [code]...
I have to make a photo album, so I'm creating a container mc for a single pic.Inside it I have an empty mc where i'll "loadMovie" the pic jpg, a simple animated gif serving as a preloader and a dynamic text to load the pic title from a XML file.Then I tween the container.pic and the container.preloader.The problem come when I have multiple instances of container, because my function only works for the last created instance.
ActionScript Code: preloaderTween(container.preload, _alpha, 0, 100); on finished {
[code]....
Is there a simple way to "separate" the instances of the same mc?I've also tried to put the instances on different layers, but it doesn't work.
What I've got is a clip that when moused over expands down, and when moused out contracts back up again...simple right.
The problem I've got is that as soon as I place a child inside the expanding clip (which is another expanding and contracting clip). the listener gets blocked by its child making it contact before it should. This sounds a little confusing, but will make alot more sense when viewing my code here...
Code: import com.greensock.*; import com.greensock.easing.*; var section1:Section1 = new Section1();
[Code]....
By the way I will be putting buttons inside the clips eventually, so disabling the clips contents is a no go.
What seems to happen is as soon as the cursor goes over any of the MovieClips that are inside of the expandable button the MouseOver event is getting cancelled. and the MouseOut event gets Called (I presume that it no longer thinks it is over the clip due to the call getting blocked by the content clips). This can be seen when the mouse goes over the text (which is a MovieClip inside the expanding button). I'm pretty sure this is to do with event propagation, and is probably quite straight forward to sort, but I'm just not sure where? here's my code...
I've found the solutions for most of my many problems with as 3 but this one is really baffling The frame actions of child-movieclips of dynamically added movieclips are not firing! If I have movieclip, say "mc", which contains a child-movieclip "submc" which has a timeline animation in it with "stop();" on the last frame and I add "mc" on the stage via addChild() the stop action inside the sub movieclip will not work.
All the frame actions inside "mc" itself work. Everything works if I drag the movieclip onto the stage manually. Right now the only way I can see to stop a movieclip on its last frame is by using the ENTER_FRAME event, but that's awfully cumbersome.
I made a ship in flash, composed of different movieclips exported for actionscipt, then I converted the whole ship in a movieclip. I wanna access a wing to make it rotate but I don't know how. I tried this:
Code: package{ import flash.display.MovieClip; public class Prueba extends MovieClip{