ActionScript 2.0 :: Using Variables To Determine Timeline Nav?
May 31, 2009
I am building a menu system. There are 4 main menu buttons for the 4 different pages of the site. When you click on one of these I want to animate the existing menu structure off the page in a fancy way. So each area has an exit animation if you like. The thing is i would only rather have this ONCE in the timeline for each page/area. So would it be possible to play it once and then after it, have a variable to determine where yuo go next that is already assigned a value depending on what button the end user pressed.
how to reference a variable that is on my main timeline into a class.Or I need to know how to pick up a variable from my php file (as in "myswf.swf?variable=3") into my class.This was all very easy to do in AS2.I just can't find out how to do it in AS3.
I am building a somewhat sophisticated slide menu. I have input a wait(); command using setInterval in the first frame of my actions panel. My wait() function works perfectly.I have also set a few variables to start out being false. Once a particular button is clicked, it sets the variable to true and sends the playhead to a particular spot within the movie. Actionscript then performs a command to that says if that variable has been set to "true" gotoAndPlay "this", otherwise gotoAndPlay "this-instead".
The problem I am having is that when I click on one of the buttons, it is somehow setting all the variables to true and sending the playhead to places I don't want it to go.Here is the code I have placed in my first frame:
button1 == false; button2 == false; button3 == false; button4 == false; //Make movie wait for ten second interval before resuming playfunction wait() {stop();var myInterval = setInterval(function () {play();clearInterval(myInterval);}, 10*1000); // stop for 10 seconds}[code]....
For some reason, regardless of which button is actually pressed, (cube2, cube3, or cube4, all of the variables are set to "true" and the playhead goes to whichever frame it wants to at that point.
I have a flash web site with multiple scenes for each page. I know, I should use multiple swf's, not scenes, and I probably will if I can't get this figured out.So what I'm doing is that my link buttons set a variable called "destination" which then moves the time line to a frame label called var_transition, where var is the prefix for the current scene.(for example, the transition frame on my primary scene is ov_transition, where the transition frame for the faq scene is faq_transition).So you see, I don't have duplicate frame labels, but what happens is that the transition works perfectly when moving from the first scene to any other scene, but after that things get a little screwy... When I try to go back to the primary scene, the transition loops itself to the point just before the timeline would move.
It's 5 frames with a tween of a single graphic that sweeps past the stage. When the graphic fully covers the stage, the time line should move to the frame label defined in the destination variable, where, at that point, the transition will finish by continuing it's tween until it fully reveals the stage at the new location.Also, I included a button on the second scene (auto parts) that should send the movie to the third scene (bank), but when I hit it, it sends me to the 4th scene (cafe) for no apparent reason.
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 have a class called Butterfly that extends MovieClip and exists as an asset in my Flash CS4 library.
The timeline of Butterfly consists of different wing flaps for different segments of its behavior. One of the animations is the wings opening up. Once the wings are open, dynamic text is shown on the wings of the butterfly.
Code: //Butterfly.as ... private var _textForWings:String = "Text For Wings";
I don't seem to have access to that variable from frame 159 inside of the clip.
What is the right process for accessing variables defined in the class by the frames inside?
Currently I'm using a getter for the _textForWings variable and using
Code: //getter inside Butterfly.as public function get textForWings():String
[Code]....
In this instance this works, but this things that i specify in the class are not avaiable to me within the timeline where i need them issue is really causing some headaches.
I built my website on the main timeline with a fade in animation...stop(on the page) and a fade out animation. At the end of this fade out animation i would like it to call upon a variable to know what page to go to next.I am trying to tell my main timeline to gotoAndPlay a frame based off of a variable within a movieclip(about_mc this movieclip contains another movieclip which acts like a button(factsheet_mc)) that i have set in my main timeline.I set the variable with:
var buttonFrame; in the first frame of the main timeline
then within my movieclip i have another movieclip which tells my main timeline to play the out fade and remember a variable:
this.onRelease = function(){ --------"this" meaning the movieclip factsheet_mc------------ [code]........
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.
I've got a problem using variables in my Flash project. I've got a variable called "count" decelerate in a layer of my main timeline. Like this: _global.count=0; In my movieclip I want to set that variable from 0 to 1. For do that I wrote in a code layer of my mc: _global.count=1; Now... When I perform a new action the variables count return to 0. It's seem that Flash reset all variables.
I'm having a strange problem setting variables in movie clips from another (parent timeline). I run the following code from the parent movie clip to target child movie clips it contains.
I am trying to set variables in a movie clip targetted by the 'clip' argument in the setVars function but they are being traced as undefined. However, setting the function works fine. I have also tried manually defining the variables in the movie clip and am still unable to change them externally from the setVars Function.
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.
Is there a way to access variables on the main timeline in Flash other than MovieClip(root).myVar ? The problem I am having is that I have a movie clip that uses several main timeline variables, but when I instantiate it, it throws a 1009 type error (cannot access property of null object reference). My understanding of whats going on (and please correct me if I am wrong) is that when instantiated it runs the code on the first frame of the movieclip. However, it is not added to display list yet, so it does not have a root. Thus, all the MovieClip(root).myVar lines do not have a root to look at. Does anyone know of a way around this?
I have movieclip that act as a container for a short animation. This animation has a script that repeat the movements until it's greater than a variable. But I wonder if it's possible to use this movieclip on several places on the timeline and have a several variables with different max number of movements that control the script inside the movieclip container? I have tested, but it seems like the value from the variable at the main timeline don't reach the script in the container!?
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."
I've simplified the problem but basically i have two files: parent.fla and child.fla.. parent.fla has its own class definition of type ParentClass and is basically defined as below..
public class ParentClass extends MovieClip { public function AddListener()[code]....
These classes all have the relevant imports etc so there's no compilation errors.But when i try to publish the child.fla i get the error saying..1120: Access of undefined property btnOnStage
my work around at the moment is just putting in var btnOnStage:SimpleButton; into the ParentObject class which lets it publish it fine, but it obviously causes conflicts when i publish the parent.fla as btnOnStage already exists.I know this is because basically the object is on the timeline in the parent.fla and is being accessed from the class and has never been defined. But how do i get around this? Is there a way to tell flash that there will be a variable like that there and dont worry bout it?
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 some main time line variables I need to access and manipulate from inside a movieclip timeline. However, when I try to subtract from a global variable, one that's declared on the main timeline on frame 1 outside of a function/whatever, it says:Symbol 'lemon_cup', Layer 'actions', Frame 1, Line 54 1120: Access of undefined property lemons1.
I have a document class called PlayVoiceOvers; I set voiceToPlay and frameToPlay in the public function and when the voice "v001.mp3" is done playing it jumps to frame label v2.[code]...
However the new voiceToPlay and frameToPlay don't do anything even though when the soundCompleteHandler is done it traces the correct values.can I pass variable information from the main timeline to the document class, apparently I can but I don't know why the new voice over doesn't play.
I am using this code to communicate with an easing function:
[AS] onClipEvent (enterFrame) {_root.gek = false; for (var i = 0; i<18; i++) { if (_root.timeline["copy"+i].hitTest(_root._xmouse, _root._ymouse)) { //set gek variable to true when mouse hits timeline[code]....
if "gek" is true then the easing function works and my little "easebar" moves to the mouse.Now, I want to be able to capture what i is when the mouse moves over it so that I can load an mc depending on where the easebar is.I thought I could declare a global variable (_global.j = 0) at the root and then set i to j and use j somewhere else. But i doesn't exist outside of the onClipEvent.
Is there any way (besides clicking on all the input text fields and checking) to find all variables in the timeline? I cant seem to get all of my variables loaded into php. I'm 100% sure my php script is correct. Only 3 of my variables are being sent and the others are not. I think the problem is that I have duplicate variable names and can't find the duplicate in my timeline.
I am going through the tutorial in the Flash MX 2004 Bible, Chap 33 "Creating A Game in Flash" when on page 1000, the author states in a side note that "We don't use the var keyword here because we want the style variables to be scoped to the main timeline of the movie. In this way, we can access the styles from various functions throughout the game."I've noticed what I thought were two ways to declare variables:
I've been looking for a tutorial to create a timeline scrubber (not animating specific movie clips, but actually a scrubber that can move along different keyframes of a timeline that has a series of images on it).I found a bunch of these (scrubber controlling specific movie clips): http:[url]....but nothing that allows you to just scrub back and forth on the whole timeline in the exported swf.
I cannot seem to find anything of what I need from google.(Well, I can find the reverse method to what i need ) Basically I wish to access a variable declared in the Root Timeline from my Movie clips timeline.
I simply want to assign a variable to the current frame of the main timeline (not movieclip timeline) I already know about _currentframe and it doesn't help in this case.
I am in the learning process. Working with FlashCS5 and AS3. if the issue appears to be too simple for you. Placed a movieclip(mcassessJohn) on the main timeline and moved to the frame labelled "johnFeedback" in the movieclip timeline using the following actionscript code.
I have researched the subject for some time now and still haven't figure it out.I use midas3 library (Midi-actionscript3) to import midi to flash. I get each note-item on a timeline. I get the divisions value (192) and all of the "GET-TEMPO" elements are equal to 81.I tried a lot of combinations to get the actual time of the midi but still no good (timeline*192/60 for example).The reason I know it is not synchronized to the actual time is that when I visualize the notes as simple rectangles in flash - I check if they appear exactly to what the mp3 file plays (I have converted the midi file to this mp3 using simple conversion program)I have read a lot about how all is calculated but still haven't figure out the number I need to use to get it right (timeline * MysteriusConstant = ReaTIME, what is the value of MysteriusConstant? is it really constant? and if not how do I calculate how it is changed?)