So, what exactly are the rules on several classes inside of one AS file?So far, the only way I have been able to do this is by putting the class outside of the package brackets with no namespace selected (which I believe means 'internal' by default, right?)[code]So, using this notation, I'm wondering if a few things are possible:
1. Putting several 'secret' classes in the same AS file?
2. Making these classes public via the "Main" class, the one that the AS file is actually made for?Both examples applied here. Are these the right ways to do this?:[code]
3. Since these classes are marked as internal, they should be available to classes which extend the Main class AND classes in the same package without any import statements, correct?
4. Does embedding classes like this affect performance in any way?
5. Will these embedded classes always be compiled even if they are never accessed or referenced, similar to Library items or other classes?
I'm trying to compile AS files using the mxmlc but the particular class depends on other classes. My command is something like this: mxmlc -includes classA classB -source-path=. com.example.com.classC.
This gave me classC.swf but when I loaded it, it was still looking for classA.swf and classB.swf. Is there anyway I can have just one swf file?
Is there a way I can load an xml-file in a separate as-file and use this for multiple classes? (Or, should I load the xml-file in every class I want to use it in)
for example i set up a basic xml structure
test.xml
Code: <xml> <first>use this data in the first class</first> <second>use this data in the second class</second>
I'm building a 10 channel mixer/remixer in Flash. Users can select a "song" to load from an xml driven combo box at the top of the application. In the document class, there is a function that takes the selected item from the combo box and loads in an external swf, which just serves as a library for the 10 sounds of a particular song. I then have to extract each of these sounds by their class names ("Track1", "Track2", "Track3", etc...) and send them off to their respective "MixerChannel" objects. As you can see, the following code block in the "initHandler" is pretty long and redundant. Is there any other way/shortcuts I can use to reduce the code a bit?
The examples I'll use don't do anything - they're classes without ANY members - no variables, methods, anything.
Let's say I extends Sprite and call it MySprite.
I save it in test.core
[code]...
Now I create another custom class called MyWindow that extends MySprite.
I save it in test.windows
[code]...
Then I create another class that extends MyWindows (the example I'll use is a document class - but that doesn't matter - I've tested using an instance too).
[code]...
Notice that I'm not even trying to instantiate the helper classes - just having them there throws the error.
If there is only a single helper class, everything runs fine.
Also note that - as far as I can tell - this only happens when extending one class from another package, then extending that class with more than one helper object.I'm pretty sure there's no namespace bumps or typographical errors, as this is a very pared-down version of the original application.
EDIT: seems the problem exists even without the crossing packages - even extending MySprite in the document class with multiple internal classes generates this error.
I have an actionscript project which uses visual symbols from an SWC. I have a CheckoutButton which has the following class associated with it (compiled into the SWC in Flash CS3).
How do you subclass multiple classes. I have a class that subclasses MovieClip. I added a new feature. Now its yelling that my class needs to subclass SimpleButton. I know there both part of the display class. But how do you subclass that?
multiple classes and then register each movieclip from the library to a different class? It isnt working for me. I created two different classes and created two entire different movieClips and registered each movie clips to a different class. However, I can only use on movieClip at a time, when I use the duplicateMovieClip. command to create copies of the movieclip, i find that only those movieclips, whose class i declared first, appear on stage
I'm trying to set up an AS3 project using a single package, that will have multiple classes coded in seperate files.I am looking for examples and tutorials for this kind of project.As I understand it, these files must have the same package, and their class must be public. This will allow the multiple files and various classes to be used in the single package.[code]Either of both of these files could then be imported into the main movie and their classes / functions used in the package.
I am attempting to use multiple AS3 timers to run a short animation in flash but I'm having a problem with some of the instances running slowly or not being removed when they are supposed to. I found a way to make things work the way I want but in being new to AS3 I believe my runtime issues are due to jumbled code.
I'd have thought this to be simple, but nothing works. I have a game I'm working on, and in it, there will be a speed stat. The fast you are going, the faster everything else has to move to make it look like you are moving faster.The problem is, the speed stat (obviously not called speed) is one of the upgradable stats, and needs to be available for the class handling upgrades for it to be changed, and it needs to be read by the class handling moving objects.The second class however, has absolutely no idea the variable even exists. I've tried for weeks to look up a tutorial on it, but there doesn't seem to be any at all that I can find. (I am using public variables, and have tried various ways of trying to point at the class it's from but apparently I must be using the wrong syntax)
Say if the structure of my game is set up like this:mainMenu- Classes inside the mainMenu package.instructions- MainMenuButtonClass.- Other classes inside the instructions package.game- MainMenuButtonClass.- Other classes inside the game package.The class MainMenuButtonClass is a button that, when clicked, directs the user to the MaiMenu and is identical in both the instructions package and the game package. Would it make sense just to save the same file in two locations or is there a better way to handle it.I'm not trying to access variables between the two classes. I'm not looking for any code either.
I've been searching the internet for how to use scenes in flash games, and from what I understand it got some problems? MY problem is that i cant really understand what the problem is and I cant find i "clean" explanation.
Some say you dont should use scenes in game development, some say you should?? Im confused.
Another thing that i dont understand quite is the document classes. Should i have one document class for every scene or one for all of them?
If i have 2 scenes with it's own document classes, how do i switch between them?
Can you declare multiple classes and then register each movieclip from the library to a different class? It isnt working for me.
I created two different classes and created two entire different movieClips and registered each movie clips to a different class.
However, I can only use on movieClip at a time, when I use the duplicateMovieClip... command to create copies of the movieclip, i find that only those movieclips, whose class i declared first, appear on stage.
How do Static classes work in projects where child swf's use the same Static class as their parent?
For simplicity... lets say we have some older content swf files that are using TweenLite version 8 ( a common enough Static class.) But the parent SWF is being updated and uses a more recent version of TweenLite (version 10). The child SWF's are loaded into the parent SWF. Do the child SWF exist in there own sandbox and have TweenLite version 8 running and the Parent runs it's own copy of TweenLite 10? Or does the parents clips Static class of TweenLite (version 10) overwrite the children Static class using some sort of magical shared memory space when JIT (runtime) compiling?
I have a rather general question regarding OOP. How do constructor functions execute with multiple class extensions? I'm making an orbital physics simulation, and every spatial body is of the class SpaceObject, which extends Sprite. Then, I have all earth-type planets be of the class Earth, which extends SpaceObject. There are certain parameters that I'd like to set for every single SpaceObject (like position and size) in the constructor function, and certain parameters (like density and mass) that I'd like to set in the constructor of class Earth.But from the main timeline, when I create an instance of class Earth, I can only enter the parameters of the Earth constructor, ie
Code: var planet1:Earth = new Earth(density, mass) Or I can create an instance of SpaceObject:
What is the correct way to import 'sub' classes into a main class?What i have is a class (i call it Console) that gives the user info about the swf for debugging, but also gives the user the ability to give their input to dynamically change the swf. Sorta like what games have when you press the "`" key.But it handles more things then just read user input, it also connects to the Database through PHP and connects through the server using Sockets.And there are more of those things that gets added later, so to prevent it gets to big later i want to split it into multiple .as files
Console Class: renders stuff and allows user input.I want that to include the following classes:
ConnectPHP Class (handles php > mysql) ConnectJava Class (handles sockets)
So that the methods in those 2 classes are accessible in the Console class like:
[code]...
I tried importing them but then i had to access them through the Object initialized:
[code]...
But i want to access them as
[code]...
removing the reference of the ConnectJava Object. Is this possible? If you wonder why, id like to keep it as simple as possible because i share the classes with my friends.
I've been searching the internet for how to use scenes in flash games, and from what I understand it got some problems? MY problem is that i cant really understand what the problem is and I cant find i "clean" explanation.Some say you dont should use scenes in game development, some say you should?? Im confused.Another thing that i dont understand quite is the document classes. Should i have one document class for every scene or one for all of them?
In flash one can point to a file on disk to associate the form with a class which name can be different from the form name so that you can multiple forms to the same class.
In Silverlight is it possible somehow including by hacking vs studio project xml file by hand ?
I have created a file called Config.as, in it are getter and setter methods that define variables that I need to reference throughout my system.
I have obviously made a mistake as I tried to access a variable in two files as indicated in a demo below:
Code: package { import Config; public class TestOne {
[Code].....
It seems quite clear to me that I have created two instance of the Config class and that is why in class TestTwo the trace statement doesn't return "hello world". Is there a common coding practice to access the same variable with multiple classes?
Are there any tutorials available that will show me how to create a multiple class program from scratch? I have 2 classes working with a fla and when I add a 3rd class every object I create comes up as an error.1120: Access of undefined property.I'm very frustrated cause I can't figure what the problem is. I have just migrated to OOP so I'm relatively new at this.
package { import flash.display.Sprite; public class MySprite extends Sprite{
[Code]....
and extend that class, if more than one internal classes are defined:
package { public class MainClass extends MySprite { public function MainClass():void{}
[Code]....
ReferenceError: Error #1065: Variable MainClass is not defined.Note that this only happens (as far as I can tell) when the public class of the package extends another class, and multiple internal classes are defined. The internal classes don't even need to be instanced or referenced to generate the error (the bare-bones code above will error out). If only a single internal class is defined, it works fine (no error). Even if the internal class is instanced.
I want to add some common functionality to a number of display object classes: Sprite, MovieClip, TextField, TLFTextField, Bitmap, Loader, SimpleButton, and possibly more.I can easily extend any one of those and add my code, but I would need to duplicate the same code across a bunch of classes, ie SuperSprite, SuperMovieClip, SuperTextField, etc.
So the options I've thought of: 1. Use includes, so each class extends whatever and simply includes the class code. I haven't tried this so I'm not sure you can even use includes like that, and I'm not sure how it might affect (break) code hinting.
2. Create a new class that takes a target reference and essentially wraps functionality on to any eligible target instance. I'm not crazy about this because it means the instance I'm dealing with isn't the actual display object (ie its some wrapper that references the display object.)
3. Create a core class that takes a target display object and encapsulates all the functionality, then create separate classes each that extend the various display objects and contain an instance of that core class with itself as the target. I think I like this idea but am sure I would come back later and be confused with the structure.
i've got two classes and i'm not extending to MovieClip. I like to attach the mc in the constructor just because i'll be working with different MC's that have the same purpose.
however, im using private var loadedMC:Movieclip and now i've got another class that needs to be able to access the instance's variable.
for example, myClass.loadedMC , but this would mean having to make it public and I rather not go that route.
can you declare multiple classes and then register each movieclip from the library to a different class? It isnt working for me.I created two different classes and created two entire different movieClips and registered each movie clips to a different class.However, I can only use on movieClip at a time, when I use the duplicateMovieClip... command to create copies of the movieclip, i find that only those movieclips, whose class i declared first, appear on stage.
I had to create a menu using array and I had to animate it. With some great expertise from people, I've accomplished that. But now I have a question about OOP, because I'm trying to add functionality to the buttons to load swfs into my main movie. Even though I strictly follow tutorials and exercises, I can't figure out how to reference a variable made in one class to another. For instance, I have index.as, navbar.as, and menubutton.as. I assume I need to add a loader to my index.as. But I can't trace the loader in my other classes. I've been told to effectively accomplish this, it is best to use custom event dispatchers. But I'm lost on how to use them.