ActionScript 3.0 :: Calling Function From Subclass To Home / Doc
Jan 12, 2010
I seem to be having some difficulty calling a function from my subclass to home/doc class. I am trying to click the button called "GalleryButton.swf" (located in in Home page.as) to add a function called "addGal". (Also located in in Home page.as) to call a function from my main/doc class to work, called "gallery". Which indeed removes my home page from the stage and adds my gallery page to the stage.
I receive this error:
ReferenceError: Error #1069: Property gallery not found on flash.display.Stage and there is no default value.
at HomeClip/addGal()
EXAMPLE CODE - NOT FULL
I have import code such as:
import flash.net.URLRequest;
import flash.display.LoaderInfo;
etc etc. Because the pages to transition using buttons from the navigation class, its just that a button from homeClip.as, won't call the function "gallery" on the main class needed to add the gallery page to the stage.
Main Class - (holds the functions to add pages)
Code:
package {
public function StartHome() {
trace("addingHome");
addChild(_NavigationBar); //ADDS NAVIGATION CLASS//
_NavigationBar.name="NavBar";
} public function home() {
[Code] .....
so i'm working mostly in a main class file. up until now subclasses (or the class for objects that i'm using in my game) have really only contained methods that controlled property values, and properties. however, i'm now interested in making an enemy in my game, but doing almost all the code for the enemy in the class file. i need to figure out how to communicate and check the object instance of the class against an object instance being controlled by the main class.
It's early days in my AS3 learning, and I'm looking for a little clarification regarding a variable typed to a superclass (in this case var mySpinner:MovieClip) which contains a reference to an new instance of a subclass (in this case Spinner.) I am trying to get my head around why my code compiles and runs and I am able to call the method rotater() on mySpinner even though mySpinner is typed as MovieClip, and the MovieClip class does not contain the method rotater().
On page 163 of the official Adobe Programming ActionScript 3.0 documentation it says the following, which I believe is related to my situation, but I am still in need of clarification: "Because each class defines a data type, the use of inheritance creates a special relationship between a base class and a class that extends it. A subclass is guaranteed to possess all the properties of its base class, which means that an instance of a subclass can always be substituted for an instance of the base class."
Can I access a static variable of a subClass' subClass? I don't want to instantiate it, just looking to get the variable because it has already been initialized by the subClass.example:
package { public class A extends MovieClip { private var classB:B = new B();
I'm overriding a protected function in a subclass.Let's say I have two classes, Apple and Fruit. I have all variables in place, this is just a simplified version.
[Code]...
Example is trivial. The problem is that the type of the getRandom function depends on its own type. One returns an apple, the other returns a fruit.Of course I get errors about override and coercion.
I've tried returning a Fruit instead of an Apple, but then the object is not an apple, therefore it has no Apple-specific properties.The problem is in ducktyping. There's a third class I cannot change, that executes the getRandom() function on each object, and I need the Apples to be something slightly different.
How can I override the getRandom function in Apple, so that it returns apples, rather than fruit?
I have a .fla and one.as(DisablingButtons.as).The .fla currently has only one key frame and three movie clips.First movie clip has base class flash.display.MovieClip and class DisablingButtons.as.The other two movie clips have base class DisablingButtons and their own classes (set by flash on export). The movie clips have identical timelines, 20 frames, two motion tweens, and the only action is stop();on frames 1,5,10,15. I get two errors:5000: The class 'DisablingButtons' must subclass 'flash.display.MovieClip'and 4 copies of 1024: Overriding a function that is not marked for override (on frames 1,5,10,15 of movie clip #2)
I am importing flash.display.MovieClip and have public class DisablingButtons extends MovieClip.Code below...[code]..........
package{ public interface GraphADT{ function addNode(newNode:Node):Boolean;[code]........
Having this setup here is giving me errors, namely:
1144: Interface method addNode in namespace GraphADT is implemented with an incompatible signature in class AdjacancyListGraph.
Upon closer inspection it was apparent that AS3 doesn't like the different parameter types from the different Graph classes newNode:Node from Graph , and newNode:AwareNode from AdjacancyListGraph
However I don't understand why that would be a problem since AwareNode is a subClass of Node.Is there any way I can make my code work, while keeping the integrity of the code?
I have an AS3 function that loads and audio file and then plays it. I have the pre-loader for the first audio file working - now I need to run the pre-load function before the 2nd audio file starts.
i'm trying to modify some code and can't figure out what the issue i'm having it. this is the(shortened) code:
public static function Lose():void { trace("OVER!"); Clock.stop();[code]...
this is the error i get: 1180: Call to a possibly undefined method OverIt.i just want to call a function from inside of the public static funtion.both function are inside this class:
Okay so I am reading through sens tutorial on OOP and updating my game that I am making. It is much easier to code this way (IMO) but still hitting snags.I am trying to get through this code:
Okay so I am reading through sens tutorial on OOP and updating my game that I am making. It is much easier to code this way (IMO) but still hitting snags. I am trying to get through this code:
I'm trying to get this one function to be able to call many functions (not at once, but call many possible ones)In other words, I'm trying to get this variable to be named as a function. That way, this one variable can create multiple functions.example:
actionscript Code: class Thing extends MovieClip{ var funcvar; var othervar; function onLoad() funcvar = "YYY"; othervar = "ZZZ"; function onEnterFrame()
I hope that this is possible. I can't seem to find any info on it on the web. I need to call a function from within a function. I'm not sure if there is a name for doing this that I don't know of?This is some example code of what I'm trying to achieve:
Actionscript Code: someTimer.addEventListener(TimerEvent.TIMER, functionWithin);function mainFunction():void{ function functionWithin():void }}
I read online, and I understand kinda what the error is stating. Though, I can't find out why.So basically what I understand is that I am calling a function that is not a function?ere is the error and code portions that are required.TypeError: Error #1006: value is not a function.at VideoPlayer_fla::MainTimeline/startVideoPlayer()at VideoPlayer_fla::MainTimeline/frame1()
I am refactoring some code. I have a PHP page that contains a MySQL query and stores the result in a PHP variable $my_result. This result is then echoed to a Flash SWF during embedding with SWFObject. I now want to call this PHP page that makes the query from a javascript function like so - one change I have made to the PHP is that instead of storing the result in a variable $my_result I am echoing the result. Javascript function to call the PHP page and make the database query
I am making a character walk. This code will make him wobble to the right and when thats done it will trigger him to wobble to the left and then call the function again to continue the loop.I can get the loop to work fine by calling the function but how do I STOP the function? Also I want to call it later on. Is there a way to start and stop a function?
i have a movie clip of a square in the library exported as Square1, i place 2 instances of it on stage and push them to an array called ar i add event listeners to both ar[0] and ar[1] to do a certain function. i need flash to tell me wheter ar[0] or ar[1] called the function.
I'm writing a class that utilizes the whole screen resolution and need a movieClip to adjust itself in accordance to that. That "almost work". The problem is that I cannot call functions when the resize listener kicks (onResize = function()) in, and I don't understand why I want to call the function centreMe() from within the onResize function.
Code: import mx.transitions.Tween; import mx.transitions.easing.*; import mx.utils.Delegate; class centre { public function centre() { [Code] .....
I'm using FLex Builder and in my Main class I load an external swf. In the external swf there is a movieclip on the stage called house. In the library I have that movieclips Class name set to a class I defined called com.buildings.House
When I load the swf from the main class I'm trying to access a function called setup in the class called House. I have tried a bunch of different ways but I get errors for them all.
Code: private function onLoadSwf( url : String) : void { var loader : Loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoadComplete); loader.contentLoaderInfo.addEventListener(Event.INIT, onLoadInit);
[Code]....
I'm at a loss right now and its driving me mad. In flash I used to use the var externalSwf : MovieClip = evt.target.content; example and it worked but with Flex Builder its throwing error saying setup is not a function.
With the Imap interface its saying externalSwf is null.
I have a program that is displaying a number of images from an XML file. The images are being resized and displayed through a loop function. I'm creating a new Loader each time through the loop and adding it to the stage. The problem is, I then want to create an event listener that will call a function for a mouse event for each image. The first issue I'm running into: how do I determine which image is which after loading them to the stage (say I want to display a large version of the image when the small image is clicked)? Secondly, since I'm creating the Loader within the first function, how do I pass the Loader to another function, say the one called by the mouse event listener? I'm sure I'm going about the fundamentals the wrong way.
I have several buttons calling the bounceOut() function andthe bounceOut() function calls the onMotionFinish() function. Afterthat function is finished I want to go back to the original callingFirst a call is made to bounceOut() when a button is clicked.I have ten buttons.
function bounceOut() { var smSlide:Tween=new Tween(sideMenu_mc,"x",Regular.easeOut,200,-200,2,true);