Help me Create gotoAndPlay from Main Timeline to a MovieClip frame
Sounds stupid, but I'm barely stepping up from AS 1.0, and
3.0 is super cool, but also making my head spin. I'm knee deep in
learning C# and AS 2.0 as it is, as well as working in VS 2005 for
the first time, and I'm working very hard to get all of my asp.NET
software to be running data driven Flash AS 3.0 UIs.
So this stupid noob question when answered, is going to help
a ton, and I've searched for hours so far, and finally resorted to
just tuckin the tail and asking for help. HELP! :) Thanks,
Chris
Hi, you can set an instance name( for example mcClip ). Then
you can access everything in this clip ( including gotoAndPlay
using dot: mcClip.gotoAndPlay
Similar Messages
-
Jumping from Main Timeline to a specific frame of a MovieClip
Hello there!
I'm a begginer with Flash... and I am attending a course of fundamentals of Flash... so I apologize if my doubt is a too obvious answer to some of you.
The situation is as follows:
I'm using Action Script 2.0 --- I'm obligated to in the course I'm attending.
I have a main timeline that has 3 frames. On the 2nd frame I have a movieclip named mc_nbr. On the 3rd frame I have a button "voltar" that when pressed I want it to "Go and Stop/Play" at frame 3 of the movieclip (that is embedded on frame 2 of the main timeline).
I used the folowing code for the button btn_voltar:
on (press)
_root.mc_nbr.gotoAndStop("3");
I tried as well with
on (press)
this.mc_nbr.gotoAndStop("3");
None of them works!
I tried to see wheather the button even works and it does.
I included a input text box and the stament before the code shown above like the one that follows:
feedback.text = "Pressionei o botão!";
So the part missing (and the important one) is jumping to the movieclip. I can't figure out how to do it !!!
I uploaded the "project" at http://www.megaupload.com/?d=A6M581US
Could anyone, please help me.
Thank You for your feedback.Ron ron,
Thank you for your help... but either I'm not following You or I'm doing something really wrong.
I tried what you suggested but it doesn't solve my problem...
Were we talking about the same button ? (btn_voltar, from the 3rd frame)
Could you take a look at my file in http://www.megaupload.com/?d=A6M581US ?? -
I need help to create idoc from scrach.
i need help to create idoc from scrach.
Swamy Katta,
Please read "[the rules|https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/rulesofEngagement]" before you post any further, and confirm that you have read them?
=> Search first, ask questions later please!
Julius -
Controlling multiple external swfs from main timeline
Hi, I've been trying to combine the features of two tutorials I found, one that deals with controlling external swf's from the main timeline and the other that explains how to load and unload multiple external swf's. I'd like to be able to load and unload multiple external swf's, and control these swf's buttons from the main timeline.
I asked this same question on the forum of the site where I found these tutorials, and receive only one reply saying that "it should'nt be hard to do." but they did not elaborate any further. This left me think that I was missing something very obvious and I've spent too much time now trying to work what it is now. I understand pretty much how both pieces of code work, but just can't work out how to combine them.
If someone could explain it to me, I'd much appreciate it.
Tutorial One code - controlling an external swf from the main timeline.
var ldr:Loader = new Loader();
var urlReq:URLRequest = new URLRequest("swfs/balls.swf");
ldr.load(urlReq);
function loadHandler (event:Event) {
var myClip:MovieClip = event.target.content;
addChild(myClip);
function myClipOver(event:MouseEvent):void {
myClip.myBlueBalls.stop();
function myClipOut(event:MouseEvent):void {
myClip.myBlueBalls.play();
// set listeners
myClip.addEventListener(MouseEvent.ROLL_OVER, myClipOver);
myClip.addEventListener(MouseEvent.ROLL_OUT, myClipOut);
// listener
ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, loadHandler);
Tutorial Two code - loading and unloading multiple external swfs.
var Xpos:Number = 110;
var Ypos:Number = 180;
var swf:MovieClip;
var loader:Loader = new Loader();
var defaultSWF:URLRequest = new URLRequest("swfs/eyesClosed.swf");
loader.load(defaultSWF);
loader.x = Xpos;
loader.y = Ypos;
addChild(loader);
// Btns Universal function
function btnClick(event:MouseEvent):void {
removeChild(loader);
var newSWFRequest:URLRequest = new URLRequest("swfs/" + event.target.name + ".swf");
loader.load(newSWFRequest);
loader.x = Xpos;
loader.y = Ypos;
addChild(loader);
// Btn listeners
eyesClosed.addEventListener(MouseEvent.CLICK, btnClick);
stingray.addEventListener(MouseEvent.CLICK, btnClick);
demon.addEventListener(MouseEvent.CLICK, btnClick);
strongman.addEventListener(MouseEvent.CLICK, btnClick);I will not be able to help you with whatever relaxatraja provided though it is purported by relaxatraja to be clearly explaining what I was explaining (???).
Your loadHandler function appears a bit confused. For the code you show I don't see you assigning any event listeners for the events that will be dispatched in the loaded file. As I showed earlier, your loadHandler function should be assigning a listener for the event that will be dispatched (modified slightly below). and if you have three different events being dispatched in the loaded file, then you'll do better to have three different listeners. I show only one below for one of the events you dispatch...
function loadHandler (event:Event) {
// assign a listener for the loaded file's goExit function's event
MovieClip(event.currentTarget.content).addEventListener("close", event1Handler);
// I can't make sense of what you have here
removeChild(myClip); // why ?? - it hasn't been added yet as far as I can see - error 2007?
var newSWFRequest:URLRequest = new URLRequest("swfs/" + event.target.name + ".swf"); // the event.target is the Loader
ldr.load(newSWFRequest); // this will load over the file you just finished loading??
ldr.x = Xpos;
ldr.y = Ypos;
addChild(myClip); // why?? it has nothing in it
function event1Handler(e:Event):void {
// do whatever is involved with what the "close" event is supposed to do
trace("goExit function executed");
As far as what you have in the loaded file, you appear to be trying to pass the files names as if they were parameters. The file naming should be done at the receiving side for the event handler function for the event listener. While you could create a custom event that include parameters that you can pass, that's another level of coding that is better left for a future experience.
Study the following - understand it before you try to use it.
Below is a link to some files I made for another posting that demonstrates what I have been explaining. The neurope file is the main file. Publish the netherlands file so that you have an swf to load for it, and then run the neurope file. The file that gets loaded (netherlands) only has a button in it that when clicked dispatches an event for which the main file (neurope) has assigned a listener. The main file displays a message when the button gets clicked in the loaded file.
http://www.nedwebs.com/Flash/neurope.zip -
Accessing class var from main timeline
Hi all! Well I've been working on this for a couple of days
now and just can't seem to get it to work right...... I'm still
getting my feet wet with as3 and like it more and more everytime I
use it.... almost.
Anyways, here's where I'm running into trouble.
Here's a dumbed down version of my project with all the other
usless drivel excluded. Basically what I'm trying to do is declare
a var and give it a value in my class. Then I want to be able to
display that value on the stage and use it in the main timeline.
Seems simple enough....
I need to be able to pass the var from the class to the main
timeline for use.... Any help on this would be GREATLY appreciated.
Thanks.kglad, worked like a charm in my short test file... however
in my real world flash file the class takes a short time to
actually compute the value of the variable. If I fire the trace
from the main timeline it will display NaN b/c at the moment it
fires the value of the var doesn't exist b/c it has yet to be
calculated......
I don't really know the best way to delay this... would the
best way be to somehow add an event listener to listen to the var
to see when it is assigned a value?.... I'm open to suggestions.
btw, good catch on the assignment of a string value!!
Thanks! -
Controlling movieclip from main timeline & Child
Hi,
This code is currently contained within my "mc_1" movieclip. I want to be able to have this code on my main timeline, however no matter what I try I constantly get errors, multiple different versions. I've tried adding mc_1 infront of everything, but that just gives an output error about a Sprite.
Also, I'm currently using visible to control whether the back image to the textbox should show - What I'd really like to do is control it using a child, but they're movieclips not buttons, so when I try to addChild within the function it errors saying I'm trying to control a movieclip within a simplebutton function.
import flash.events.MouseEvent;
stop();
mc_textbox.visible = false;
for(var i:uint=1; i<8; i++){
this["line"+String(i)].addEventListener(MouseEvent.ROLL_OVER, line_in, false, 0, true);
this["line"+String(i)].addEventListener(MouseEvent.ROLL_OUT, line_out, false, 0, true);
function line_in(e:MouseEvent):void // Defineing the function as line_in
var lineTarget:SimpleButton = SimpleButton(e.currentTarget); // The variable is lineTarget
switch(lineTarget) // Each case should swap the lineTarget
case line1: // line 1 is the first button
line_output.text = "1"; // This text should display
mc_textbox.visible = true; // The textbox should display
break; // If this is not the case, break and check next
case line2:
line_output.text = "2";
mc_textbox.visible = true;
break;
case line3:
line_output.text = "3";
mc_textbox.visible = true;
break;
case line4:
line_output.text = "4";
mc_textbox.visible = true;
break;
/* This case has much more text than the rest, as such the textbox is enlarged for this case only
and changed in position. The line_output dynamic text field is also moved on the Y axis for this.
This is reset to default using the line_out function.
case line5:
line_output.text = "55";
line_output.y = 427.65;
mc_textbox.visible = true;
mc_textbox.height = 100;
mc_textbox.y = 417;
break;
case line6:
line_output.text = "6";
mc_textbox.visible = true;
break;
case line7:
line_output.text = "7";
mc_textbox.visible = true;
break;
default: // If none of the cases are true, this should display
line_output.text = ""; // line_output should be blank
mc_textbox.visible = false; // mc_textbox should be invisible by default
function line_out(e:MouseEvent):void
line_output.text = "";
line_output.y = 474.65;
mc_textbox.visible = false;
mc_textbox.height = 61.95;
mc_textbox.y = 454;I've resolved the timeline issue. Now my only issue is the Child not working.
What I'm trying to do:
addChild(mc_1.mc_textbox) to appear upon rollover of a button. On rolloff, for the child to be removed.
Add mc_textbox inside mc_1 on rollover, at a specific XY and height. On rolloff, for the child to be removed.
I have also been told that I should not have a dynamic textbox on the scene and should call that in using AS3 - If you have time, could you inform me how this would be done?
Thanks alot for the help,
ERROR:
TypeError: Error #2007: Parameter child must be non-null.
at flash.display::DisplayObjectContainer/addChild()
at Main_new_fla::MainTimeline/line_in()
TypeError: Error #2007: Parameter child must be non-null.
at flash.display::DisplayObjectContainer/removeChild()
at Main_new_fla::MainTimeline/line_out()
import flash.events.MouseEvent;
stop();
for(var i:uint=1; i<8; i++){
this.mc_1["line"+String(i)].addEventListener(MouseEvent.ROLL_OVER, line_in, false, 0, true);
this.mc_1["line"+String(i)].addEventListener(MouseEvent.ROLL_OUT, line_out, false, 0, true);
function line_in(e:MouseEvent):void // Defineing the function as line_in
var lineTarget:SimpleButton = SimpleButton(e.currentTarget); // The variable is lineTarget
switch(lineTarget) // Each case should swap the lineTarget
case mc_1.line1: // line 1 is the first button
mc_1.line_output.text = "1"; // This text should display
addChild(mc_1.mc_textbox); // The textbox should display
break; // If this is not the case, break and check next
case mc_1.line2:
mc_1.line_output.text = "2";
addChild(mc_1.mc_textbox);
break;
case mc_1.line3:
mc_1.line_output.text = "3";
addChild(mc_1.mc_textbox);
break;
case mc_1.line4:
mc_1.line_output.text = "4";
addChild(mc_1.mc_textbox);
break;
/* This case has much more text than the rest, as such the textbox is enlarged for this case only
and changed in position. The line_output dynamic text field is also moved on the Y axis for this.
This is reset to default using the line_out function.
case mc_1.line5:
mc_1.line_output.text = "55";
mc_1.line_output.y = 427.65;
addChild(mc_1.mc_textbox);
mc_1.mc_textbox.height = 100;
mc_1.mc_textbox.y = 417;
break;
case mc_1.line6:
mc_1.line_output.text = "6";
addChild(mc_1.mc_textbox);
break;
case mc_1.line7:
mc_1.line_output.text = "7";
addChild(mc_1.mc_textbox);
break;
default: // If none of the cases are true, this should display
mc_1.line_output.text = ""; // line_output should be blank
addChild(mc_1.mc_textbox); // mc_textbox should be invisible by default
// Removes any text that has been displayed from the Dynamic text box, also resetting the sizes to default.
function line_out(e:MouseEvent):void
mc_1.line_output.text = "";
mc_1.line_output.y = 474.65;
removeChild(mc_1.mc_textbox)
mc_1.mc_textbox.height = 61.95;
mc_1.mc_textbox.y = 454; -
Controlling loaded swf from main timeline
Hello,
I'm working on loading external swf files for ios. I am able to load the swf files and set them to visible or invisible in different frames. I am having trouble controlling the loaded swf files from the main timeline. Specifically, I would like to have a button on the main timeline, that when clicked will move a loaded swf to frame 1.
Here is a code that loads one swf file:
var myLoader1:Loader;
var loaderContext1:LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain, null);
if(myLoader1 == null)
myLoader1 = new Loader();
addChild(myLoader1);
myLoader1.load(new URLRequest("folder/file1.swf"),loaderContext1);
myLoader1.visible = true;
backbutton.addEventListener(MouseEvent.MOUSE_DOWN, backbutton1);
function backbutton1(myEvent:MouseEvent):void {???????????? myLoader1.gotoAndStop(1);} (this line does not work)
(Once I load file1.swf, within the file1.swf I click a forward button to move to different frames. My question is: how do I code the 'backbutton' on the main timeline so that it causes the loaded file1.swf to go to frame 1?)
Thank you for your help.sure.
if the movieclip on the loaded swf's main timeline has reference mc, you would use:
MovieClip(myLoader.content).mc.gotoAndStop(1);
p.s. you might find the following helpful, http://kb2.adobe.com/community/publishing/918/cpsid_91887.html -
How to add button inside move clip and call it from main timeline?
Hi,
On the main timeline I have a movie clip called clock_mc and playBtn
playBtn is placed in the center of clock_mc
When you press playBtn clock_mc starts playing
playBtn.addEventListener(MouseEvent.CLICK, playClock);
function playClock(event:MouseEvent):void
if (event.target == playBtn)
clock_mc.play();
playBtn.visible = false;
trace ("play button was clicked");
This is working fine for me.
But I want to add replayBtn to the last frame of clock_mc and set up the function on main Timeline.
Another words when the clock_mc rich last frame you see replayBtn.
code example:
replayBtn.addEventListener(MouseEvent.CLICK, playClock);
if (event.target == replayBtn)
clock_mc.play();
replayBtn.visible = false;
trace ("replay button was clicked");
I've tryed to placed the replayBtn on the stage on the main timeline and I've set it up to replayBtn.visible = false;
And then I add replayBtn.visible = true; to last AS frame of clock_mc but it wont work
Even when I put the button physically to the last frame of clock_mc it will not work either.
Please helpI've solved the problem:-)
I've set replayBtn.visible = false; on first frame of clock_mc
and replayBtn.visible = true; at the last frame
and than as you sugested I'v add:
clock_mc.replayBtn.addEventListener(MouseEvent.CLICK, replayClock);
function replayClock(event:MouseEvent):void
clock_mc.play();
trace ("replay button was clicked");
I couldn't see replayBtn at the firs stage because I have clockTween assosiated with clock:
clockTween = new Tween(clock_mc, "x", Regular.easeOut, -469,438, .5, true);
and I had replyBtn in the wrong place so when clock_mc was coming up on the stage replayBtn was on the left side of the stage :/
Now I have to solve only one thing.
Maybe you would have any suggestions please.
I've set up stop(); in a first frame of clock_mc
that when you see clock_mc sliding in it has to wait for playBtn to be clicked
because I have two tween:
clockTween = new Tween(clock_mc, "x", Regular.easeOut, -469,438, .5, true);
playTween = new Tween(playBtn, "x", Regular.easeOut, -720,514, .5, true);
playBtn.visible = true;
so when you click on playBtn:
function playClock(event:MouseEvent):void
if (event.target == playBtn)
clock_mc.play();
playBtn.visible = false;
trace ("play button was clicked");
everythink is working fine except when I clik on replayBtn it play for I sec because there is stop(); on the first frame of clock_mc -
Navigating to Frame Label in mc from main timeline
Lets say that in my main timeline, I have a number of frame
labels. On stage I have a movie clip (let's call it bg_mc) which
contains a tweened animation that has been looping repeatedly (so
it has its own timeline with its own frame labels).
I would like this to happen:
- On the main timeline, the playhead enters a specific frame
called "newBackground."
- When that happens, I want the playhead in bg_mc to jump to
the first frame in its timeline, "beginLoop."
How do I accomplish this?
Thanks so much for your help!
DavidNow, this brings on another question... that is, what if the
opposite is true?
For instance:
The main timeline plays to a stop(); at frame 10.
At frame 10, a movie clip (countdown_mc) which contains a
countdown timer, begins.
When the timer reaches 00:00, I want to trigger the main
timeline to continue and play the next frame (11).
Thanks again for the great advice,
David -
Control swf from main timeline
i know i've done this before! i have a swf. 4 labels. a stop
at frame 1. i embedd this into my main timeline. i have 4 butons in
an MC in my main project, going to specific labels in my main
timeline, where i have the following code, attempting to load the
swf and jump to that label:
this.container_shell.loadMovie("interact01.swf");
interact_shellb.gotoAndStop("label1");
its not working. the swf loads, but i can't jump to the
label.
any ideas? appologize for the basic question, i'm a designer,
not a programmer!If you have a question to ask, you should start a new posting and include the code/info pertinent to your problem. The one you are trying to catch a ride from is flawed and requires some questions to be answered. Being that the posting is over 4 years old, it is unlikely the original poster is going to be answering any.
-
Attach a movieclip from the main timeline inside another movieclip.
I need help with the game I am working currently. On the main timeline Actions frame I have a loader class called myLoader. I attached that to a movieclip called currentSWF. I have a movieclip called SpinningCard in the library which I dynamically attached to the stage. Inside the SpinningCard movieclip there is another movieclip Card. In the Card movieclip I have 10 frames and on each frame I want to attach a different instance of the movieclip currentSWF. How can I do achieve that?
here's what I have till now...
On the main timeline Actions frame...
var loader:Loader=new Loader();
loader.load(new URLRequest("CardGraphics.swf"))
var currentSWF:MovieClip;
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, swfLoaded);
function swfLoaded(e:Event):void {
currentSWF = MovieClip(loader.contentLoaderInfo.content);
addChild(currentSWF);
Inside the Card movieclip on the first frame I have this code...
var a1:MovieClip = MovieClip(parent.parent.getChildByName('currentSWF'));
CardFrame1.addChild(a1);
//CardFrame1 is an empty movieclip which is there on the frame 1 of Card Moveiclip.
I am getting error : Parameter must be non-null. How can I solve. Can anyone please help me.Hi Nabren
I'm also looking to load a library based movie-clip into a stage based movie-clip, so that I can inturn swap it with other movie clips to act as different pages (page2_mc etc) which will be used in different sections of the application to give chapters as such.
I've had a go at the above but can't get a result, though it did not throw an error. I also had a trace() on each side and both of those triggered.
The stage based mc I called pageMC and the content mc I called content the same as your example
trace('loader - cx');
var loader:Loader=new Loader();
var pageMC:MovieClip;
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, swfLoaded);
function swfLoaded(e:Event):void {
pageMC = MovieClip(loader.contentLoaderInfo.content);
pageMC.name = "pageMC";
addChild(pageMC);
trace("Menu 4");
I'd appreciate some assistance. I would like to use internal MC's as I want to put the application to iOS and Android and believe by using movieclips I should be able to have some code with them whereas importing swf's I can't.
Thanks -
Goto next frame in a movieclip from main timeline button
So what I have is a button (named Next) on the main timeline. I have a movie clip on that frame (on the main timeline) and the movie clip has 3 frames that I want to be able to cycle through using the "Next" button that is on the main timeline. How can I go about doing this?
Thank you,Thanks kglad! Works like a charm. :-)
I had already named the instance of the movieclip and button so I just needed to change the code to match and it's working great.
One other issue I've come up with now is that when it goes to the 3rd frame of the movieclip and I click next, it doesn't do anything. shouldn't it go back to frame 1 of the movieclip? -
Converting a layer on the main timeline into a movieclip
I'm not really sure how to properly describe this so please
bear with me.
Say you create an animated action on your main timeline with
a symbol. Then you decide you want to take that action and put it
into a movie clip so that it migrates across the screen. Since it
is already on your main timeline, how do you take that layer, and
convert it into a movie clip?
I hope I've described this clearly enough.Select all the frames on the layer, right-click on them and
select copy frames. Create a new symbol. Right-click on the first
frame of this new movieclip and select paste frames. Go back to the
main timeline and delete the layer. -
Need help moving my code from the timeline into classes
Hello everybody,
A few months ago I made a simple flashgame with the help of a tutorial (http://www.flashgametuts.com/tutorials/as3/how-to-create-a-brick-breaker-game-in-as3-part- 1/) as a school assignment. When I turned it in to my teacher, his biggest complaint was that the code was written onto the timeline instead of in seperate classes. I know virtually nothing of programming (dealt with agoraphobia while the classes took place ), so I was wondering if someone could help me move the code into classes.
Here's the complete package for the game: https://www.dropbox.com/sh/xhjuhz04z8g129m/0nSwf1wngu
Thanks!You will need to learn about classes. I suggest that for the moment you set your actual project to the side--but keep it in mind--and work on some smaller chunks. Do some tutorials and learn a bit. Then try and apply what you have learned to your project.
http://www.untoldentertainment.com/blog/2009/08/25/tutorial-understanding-classes-in-as3-p art-1/
Work on the individual bits and post more specific questions when you run up against them.
It will require shifting your thoughts a bit on how to design and structure things. For me the really key concept is encapsulation--the idea that your classes are self-contained and have very specific routes of communication for receiving and sending information. To achieve this you need to think about methods, properties, and events. If you've done regular timeline coding you probably recognize properties (x, alpha, htmlText, etc.) and events (MouseEvent.CLICKED). Methods is a fancy word for function. So when you do something like myMovieClip.gotoAndStop(5) the gotoAndStop is a method of the MovieClip class and that just means somewhere there is code like this:
function gotoAndPlay(frame:Object, scene:String=null):void{
// code that tells flash how to move the movieclip to a frame
That is a bit of a simplification, but conceptionally it is what you will do for the methods of your classes. -
Need help with custom event from Main class to an unrelated class.
Hey guys,
I'm new to Flash and not great with OOP. I've made it pretty far with google and lurking, but I've been pulling my hair out on this problem for a day and everything I try throws an error or simply doesn't hit the listener.
I'm trying to get my Main class to send a custom event to an unrelated class called BigIcon. The rest of the code works fine, it's just the addEventListener and dispatchEvent that isn't working.
I've put in the relevant code in below. Let me know if anything else is needed to troubleshoot. Thank you!
Main.as
package
import flash.display.MovieClip;
import flash.events.MouseEvent;
public class Main extends MovieClip
var iconLayer_mc:MovieClip = new MovieClip();
public function Main()
Spin_btn.addEventListener(MouseEvent.CLICK,fl_MouseClickHandler);
addChildAt(iconLayer_mc,0);
placeIcons();
function placeIcons():void
var i:int;
var j:int;
for (i = 0; i < 4; i++)
for (j = 0; j < 5; j++)
//iconString_array has the names of illustrator objects that have been converted to MovieClips and are in the library.
var placedIcon_mc:BigIcon = new BigIcon(iconString_array[i][j],i,j);
iconLayer_mc.addChild(placedIcon_mc);
function fl_MouseClickHandler(event:MouseEvent):void
dispatchEvent(new Event("twitchupEvent",true));
BigIcon.as
package
import flash.display.MovieClip;
import flash.events.Event;
import flash.utils.getDefinitionByName;
public class BigIcon extends MovieClip
private var iconImage_str:String;
private var iconRow_int:int;
private var iconColumn_int:int;
public function BigIcon(iconImage_arg:String, iconRow_arg:int, iconColumn_arg:int)
iconImage_str = iconImage_arg;
iconRow_int = iconRow_arg;
iconColumn_int = iconColumn_arg;
this.addEventListener(Event.ADDED_TO_STAGE, Setup);
function Setup(e:Event)
this.y = iconRow_int;
this.x = iconColumn_int;
var ClassReference:Class = getDefinitionByName(iconImage_str) as Class;
var thisIcon_mc:MovieClip = new ClassReference;
this.addChild(thisIcon_mc);
addEventListener("twitchupEvent", twitchUp);
function twitchUp(e:Event)
this.y += 10;Ned Murphy wrote:
You should be getting an error for the Main.as class due to missing a line to import the Event class...
import flash.events.Event;
My apologies, I should attempt to compile my example code before I ask for help...
Alright, this compiles, gives me no errors, shows my 'book' and 'flowers' icons perfectly when ran, and prints 'addEventListener' to the output window as expected. I get no errors when I press the button, 'dispatchEvent' is output (good), but the 'twitchUp' function is never called and 'EventTriggered' is never output.
How do I get the 'twitchUp' event to trigger?
Main.as
package
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.events.*;
public class Main extends MovieClip
var iconLayer_mc:MovieClip = new MovieClip();
var iconString_array:Array = new Array(2);
public function Main()
Spin_btn.addEventListener(MouseEvent.CLICK,fl_MouseClickHandler);
addChildAt(iconLayer_mc,0);
buildStringArray();
placeIcons();
function buildStringArray():void
var i:int;
var j:int;
for (i = 0; i < 2; i++)
iconString_array[i] = new Array(3);
for (j = 0; j < 3; j++)
if (Math.random() > .5)
//'flowers' is the name of an illustrator object that has been converted to a MovieClip and is in the library
iconString_array[i][j] = "flowers";
else
//'book' is the name of an illustrator object that has been converted to a MovieClip and is in the library
iconString_array[i][j] = "book";
function placeIcons():void
var i:int;
var j:int;
for (i = 0; i < 2; i++)
for (j = 0; j < 3; j++)
//iconString_array has the names of illustrator objects that have been converted to MovieClips and are in the library.
var placedIcon_mc:BigIcon = new BigIcon(iconString_array[i][j],i*50,j*50);
iconLayer_mc.addChild(placedIcon_mc);
function fl_MouseClickHandler(event:MouseEvent):void
dispatchEvent(new Event("twitchupEvent",true));
trace("dispatchEvent");
BigIcon.as
package
import flash.display.MovieClip;
import flash.events.*;
import flash.utils.getDefinitionByName;
public class BigIcon extends MovieClip
private var iconImage_str:String;
private var iconRow_int:int;
private var iconColumn_int:int;
public function BigIcon(iconImage_arg:String, iconRow_arg:int, iconColumn_arg:int)
iconImage_str = iconImage_arg;
iconRow_int = iconRow_arg;
iconColumn_int = iconColumn_arg;
this.addEventListener(Event.ADDED_TO_STAGE, Setup);
function Setup(e:Event)
this.y = iconRow_int;
this.x = iconColumn_int;
var ClassReference:Class = getDefinitionByName(iconImage_str) as Class;
var thisIcon_mc:MovieClip = new ClassReference;
this.addChild(thisIcon_mc);
addEventListener("twitchupEvent", twitchUp);
trace("addEventListener");
function twitchUp(e:Event)
this.y += 10;
trace("EventTriggered");
Output:
[SWF] Untitled-1.swf - 40457 bytes after decompression
addEventListener
addEventListener
addEventListener
addEventListener
addEventListener
addEventListener
dispatchEvent
[UnloadSWF] Untitled-1.swf
Test Movie terminated.
Maybe you are looking for
-
It is very frustrating even to receive an email from itunes support telling me: well, if your code or card are not working call your bank, which I did and everything is fine, it matches with existing acct in itunes... then I tried and tried and time
-
Oracle Proxy Authentication and WLS 8.1/CMP
Hey folks, Is there any way to configure WLS 8.1 to automatically set the Oracle CLIENT_IDENTIFIER variable or use Oracle Proxy Authentication on JDBC connections? I'm interested in using Oracle auditing with my CMP entity beans, but would like to ca
-
Mountain Lion Downloading Problem!
Mountain Lion is not downloading.I dont know whats the problem, the internets working perfectly fine but the downloading bar is absolutely stationary.Anyone facng similar issue? Help please!
-
Where is my iTunes U download?
I just downloaded Upton Sinclair's "The Jungle" from http://www.openculture.com/freeaudiobooks in the "Free iTunes" format. But now I can't find it on my iPhone 4, either in iTunes or in iTunes U. How do I find it? Thanks.
-
About the "magic" mint-green borders on iPhones, iPads ...
Just recently I found my golden iPhone 5S to show strange green borders on display. I called Apple, reported the problem and they sent me a new unit for 29€. Some time later I won an iPod Touch 5G on Ebay. Told to be in a fine condition. It had a den