ActionScript 3.0 :: Constructor In Document Class Runs Twice?
Sep 17, 2009I'm working on my document class and the contructor is running twice, hence it is running almost all of my code twice.[code]
View 5 RepliesI'm working on my document class and the contructor is running twice, hence it is running almost all of my code twice.[code]
View 5 RepliesI want to pass values to document class's constructor form html while embedding.
View 2 RepliesI'm learning how to work with a document class. Using the class below, I am learning that this initiates immediately when running the Fla. The problem is that the "scrol" Movieclip is not present in the first frame, which is a menu with a list of topics. Scrol comes later in and is in it's own section/frame label and goes to that section when selected from the main menu of topics.
Is there a way I could call this action only when the Movieclip is present or when that section is shown? Also, I'd like to apply it to other movieclips, not just scrol. Underneath se = new SwipeEngine(scrol,400,0); can I just add a duplicate line but change the mc name? A possible concern is that the mcs may be different sizes in length and might not need to scroll as far.
[Code]....
I've got a simple program that consist of a document class and a buttonTemplate constructor class. I need to call a function called updateText that should be in the document class, when someone clicks on a button. My event listeners for the buttons are in the buttonTemplate class. My question is, how do you call a function in the document class from a constructor class? Here is my simplified code below
DOCUMENT CLASS
Code:
package {
import flash.display.MovieClip;
import flash.text.TextField;
[Code].....
I got an error like "Incorrect number of arguments.. Expected 0." when I was trying to make an instance of a user-defined class that I've written in the document class of my project.Here's the line in my document class:private var myNotice:myNoticeClass = new myNoticeClass(this);An untyped parameter is supposed to be the only argument to the constructor method of class myNoticeClass and the constructor is something like this
public function myNoticeClass(ref:*)
{ ......
}
[code].....
here is the scenario we ran across while working on our Flash AS3 project today.
/main/root.fla
/main/root.as
/main/sub1/sub.fla
[code]....
We have many sub swf's that are loaded by the main root swf. The root swf shows the art on the stage of the sub swf, and also runs some code from the sub swf's document class. However, we noticed the constructor was not getting called on the second sub swf if the document class is the same name- even if they are in different folders. Note that we publish our swf files to a separate directory (with the same structure as above) so it is easily copied to the web server.
-root.swf loads sub1/sub.swf
-the constructor of the document class sub.as in subfolder sub1 gets called
-root.swf shows sub1/sub.swf assets with the correctly constructed sub1/sub.as document class
-user chooses to switch to sub2
[code]...
We decided to use a workaround where we basically changed the two document class .as files to be different names (e.g. renamed sub1/sub.as -> sub1/sub1.as and sub2/sub.as -> sub2/sub2.as, and updated the .fla's to point to the renamed document classes), and it works as expected. Hopefully that workaround is useful for someone.I realize most people just name every single file differently and keep everything in one folder, but when you have a sufficiently complicated project, things like this come up.
I am dispatching an event from one document class and listening for it via another document class.My code in class A.
Code:
this.dispatchEvent(new MYEvent(MyEvent.APERTURE_DONE));
trace("Dispatching APERTURE_DONE");
my code in class B.
Code:
addEventListener(MyEvent.APERTURE_DONE, onDoorsOpen,true);
trace("Lisetning for APERTURE_DONE");
[code]....
My listener is registering before the event is dispatched, based on my output window, however I never get the "Open Doors" trace statement to fire.
I have a FLA (say Main.FLA) document class with a child MovieClip on the stage: into the child MovieClip I load other swf files: each of the files contains its own Document Class (every swf is a somewhat independent application, say quizzes and so on).For some reason I must use the Main document class to store data (scores or so) from the child swfs loaded into the Main swf. HOW do I reference the Main class? I can't find a way.[code]and dispatch an Event this way from the loaded swf document class to the Main class:[code]Now, first of all I don't know if this could even work. Secondly, I tried to make it work by adding an event listener to my Main class but id did not work.
View 9 RepliesSo I had a working .fla, with a document class package in the same directory. Everything was fine, until moving both to a new directory, now the fla cannot find the document class. WTF?
View 2 RepliesI am creating a Weapon class for a game and the weapons itself will be the sub classes. The sub classes will hard code some values (such as max ammo and the weapon name).
I trying to access this declared data in the base class constructor, at the moment it's not outputting the values. Is this possible?
I've broken my Weapon class for simplicity:
ActionScript Code:
package
{
import flash.display.MovieClip;
[Code]....
My current workaround is creating a protected method in the base class to trace the information and calling that method in the sub class's constructor, this works fine but this doesn't seem like the most efficient technique?
I want to clone a class object. I tried following from here:
package
{
import flash.net.registerClassAlias;
import flash.utils.ByteArray;
[Code]...
BUT this only works when the class has a default constructor and not when it has parameterized constructor:
how to clone a class object when the class has a parameterized constructor?
I want to declare addEventListener in a class. But I want the function handler to run from another class.
Say I have a class Ground.as with the code:
stage.addEventListener(Event.ENTER_FRAME, animateChar);
Then in Ball.as I have the function:
public function animateChar(event:Event):void
{ .......
Ball.as and Ground.as are in the same directory.
I am trying to things efficiently and put as little code as possible on the timeline.
I have a document class loading and working at runtime.
It creates a button that takes me to a different frame on the timeline.
I have a movie clip there. I put a trace in the constructor of the class of that movie clip but it will not show the trace comment in the output window-its not working. There are no errors.
I also tried instantiating the same movie clip from the document class-which worked-but the trace in it's class's constructor still does not output.
I'm making a class called 'player', and really, I don't need a constructor function for it. Do you just outline the function, but don't put anything between the curly braces? Also, I'm a bit new with access levels. If I wanted my functions from my player class to be accessible from the main class, do I make them public?
View 3 Repliesam trying to pass a movieclip reffrenc to a class, but i want it to be optional, so am trying to initialize it, but it dossent work, why?
public class CoverFlower extends MovieClip
{
var playBtn:BigPlay = new BigPlay();
[code].....
For Example:
package{
public class A {
var test:String;
public function A()
}} class B{
}
The code is in the same file, we call B is inner class, then how to call the constructor of class B
I'm doing something - probably very stupid - with an external library swf. That swf so far contains two buttons each with their own classes 'Simple_Button' and 'Simple_Pop_Button'. In the library swf document class I set up an object that lists the available classes:
Code:
oClasses = {"Simple_Button":"com.Home.Button.Simple_Button",
"Simple_Pop_Button":"com.Home.Button.Simple_Pop_Button"};
In the swf that loads the library swf I process that object and create another object with proper class references based on it:
Code:
function initHandler(event:Event):void {
defineLibraryClasses(event.target.content.getClasses(), event.target.loader);
addBtns();
}
[Code]....
i have some pretty simple code, i have my document class trying to add a santa class to the stage (simple game ) - but it will not add and i get not errors at all,Santa class:
Code:
package Classes {
import flash.display.*;
[code].....
I have a custom class, MyMC. The only argument the constructor takes is a string, which sets the text of a label inside MyMC.
In the Flash IDE I've placed an instance of MyMC, which is called mcOnStage, on the stage. Through the document's class Main I'd want to perform the constructor function of mcOnStage.
I have a bunch of sprites in my library which all behave in the same way.
now i want to put the behavior and all the common methods into one BaseClass [code]...
In the AS3 there is a remark, that a Class Constructor is just a method of the class, that is executed when an object of that class is created. So, since the constructor is just a method of a class, how can I call it directly from the other class methods?
View 8 RepliesI fell on an unexpected comportment with AS3 class definitions this morning. To tell it quickly, I cannot create an instance of a class inside the same class methods.
Here is an exemple :
package {
import flash.display.MovieClip;
import flash.events.Event;
public class Test extends MovieClip {
[code]....
I would like to understand the sub-process that prevents to do that.
I'm trying to pass my object class as constructor argument. I have something like this:
package myclass {
import flash.display.MovieClip;
import flash.display.BitmapData;
import flash.display.Bitmap;
[code]....
Now, when I try to create my Example:
import myclass.Example;
var example:Example = new Example(myObjClass);
I get message, that I'm not passing any variable (Error #1063). Why is that? What is wrong with it?
I have a document class name elevator and my constructor is also elevator as usualHow to call this constructor function within elevator class? Is is possible or not?
View 1 Repliesconstructor function in a Class file. I've built several over my day and never heard a 'proper' answer about them. If your constructor function does nothing, not even set vars or listeners
ActionScript Code:
public function MyClass():void{
}
is it proper to keep it in the Class file or is it ok to leave it out completely?Or is this just something of preference? What do you guys think/do?
I have created a class:
Code:
package net.icsna.website
{
/**
* ...
* @author Kyle McKnight
[code]...
And then I create a new instance of the class:
Code:
var scroller:Scroller = new Scroller(_contactDisplayPage.getChildByName("contactInfoHolder"));
And I'm getting an error 1136:Incorrect number of arguments. Expected 0...
i have been working on this project. I made a class with a empty blank symbol.
package {
public class imgHold extends MovieClip {
public function imgHold (imgSrc:String)[code]....
I want to be able to add this class on my stage and put in a string in the contructor parameter and the class will display w/e symbol accordingly. How would i make this class link to different symbols depending on the parameter in the contructor?
How to create new class instance without calling constructor function, meanwhile constructor function must exist and is requiring 1 parameter.
var newclass:myclass = new myclass; <- still calls function myclass in myclass class
I would like to call constructor function later:
newclass.newclass(myparam);
This is my first post. I'm new to actionscript, but not to programming. I hope to learn a lot from these forums. To the point: I decided a few days ago that I wanted to create a flash game. I'm taking an object-oriented approach to the game design since that is what I know. The issue I am having is that I have a class called Hero that inherits from a class called Entity. Now my issue is that I don't want Hero to call the Entities class constructor when I initialize a new Entity.
View 5 RepliesI'm currently writing a class where I'd like to call the class constructor without having to instantiate the class itself. Something like this : Class:
[Code]...
trace(testString); //wil trace the text "test test123" Is it possible to somehow achieve this? When I write the costructor method like "public static function ClassName" it fails. Is there any other way?