ActionScript 2.0 :: Selecting The Classes/packages To Import At Runtime?
Jan 17, 2008
Before starting an class or code, you should put all your import statements..
Now I have flash application, which offers a search feature which relies on some pretty huge classes. The user is unlikely to use this feature. However, importing those classes anyway adds some pretty large kbs to my application. Is there a way to import these classes at runtime ONLY IF the user chooses to use this feature?
I am creating a library in AS3. Inside the library I make use of a bunch of classes/packages that need not be exposed to the end user of my lib. I want to only expose one of these classes.
I guess my questions are:
1) How are libraries commonly distributed in AS3?
2) Is there a .jar equivalent in AS3 that developers can include, but will only have access/knowledge of the classes I've declared as public?
In the Below action script file there is an error saying cannot import mx.controls.Label, I am compiling this through command line on,linux and the environment variable path is set where flex is installed ,how to resolve this
package { import mx.controls.Label; public class Test
I'm new to as3 and although I am able to build classes that don't error but also don't put anything on the stage. I have Starter_1.as file stored in a folder called com...this is the script for that file:
Code: package com { import flash.display.Sprite; import flash.text.TextField; public class Starter_1 extends Sprite { private var tField:TextField; public function Starter_1 () { [Code] .....
From what I can see the problem is because the addChild(tField) is not referencing the stage in anyway because the script is in an external .as file and not on the timeline (good coding practice I read somewhere?) I use this on the timeline to try put the text field on the stage: Code: import com.Starter_1; var f1:Starter_1 = new Starter_1(); How do I get this working?
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 have a small framework that I would like to put out there. I would love to export these classes as a single file. I know there is a SWC format, but there is not much recent information on how to export build this and I have a feeling this format might be outdated.
I'm trying to re-organize my classes into folders, currently they're all just in the same directory and it's very messy, so I've tested this out in one feature, being the bullets. So bullet.as is in the directory: [main source]/Classes/Turrets/Ammo
I so in the bullet.as file I have coded as follows: Code: package Classes.Turrets.Ammo { import flash.display.MovieClip; import flash.events.* public class Bullet extends MovieClip {
Now this works, the bullet is fired on to the stage, however it behaves profoundly. For some reason it does not move at all or behave how it does when it is fired from the turret object, the bullets behave perfectly though when I just simply put them in the same directory as the source .fla. What can I do to easily re-organize my classes into folders without turning my objects into malfunctioning pieces of junk?
I'm building Action Script project in Flash Builder. No flex, no third party libs. Pure actionscript - hierarchy of packages and classes. How do I include a plain external .as file, which is not a package or class, but just a set of statements?
A lot of people have .com websites & put all their classes & packages inside a com folder & then their website name to avoid any possible naming conflicts when using other peoples classes - all very sensible. I have a .co.uk website however - is there an equivelant naming standard?
I'm having a strange issue with CS5.5 and the import for runtime sharing settings. Here's what I'm doing: I create two .fla's, Export.fla and Import.fla. In Export.fla, I create a shape, select it, press F8 and tick export for runtime sharing, to create a really simple exported movie clip. I click the exported symbol in the library, press Ctrl-C, switch to Import.fla and press Ctrl-V. Everything ok so far, the symbol is imported for runtime sharing.
The first problem I have at this stage is that changes I do to the exported symbol in Export.fla are not reflected in Import.fla, only in the final .swf's I can see the changes. Also, unlike in CS4 and CS5 I cannot "Update" the imported symbol in the library right-click menu, to make changes to Export.fla visible in Import.fla. The menu entry is just greyed out...
So I tried to use Authortime sharing, in the Symbol Properties for the imported symbol in Import.fla. I link the source to the symbol in Export.fla, and once I do that, everything is completely borked. The previously imported symbol is no longer imported. Whenever it is changed in Export.fla, it gets an "Export for Runtime Sharing" tick in its Properties in Import.fla, and worst, it is not shared at runtime, like I need it to. how to get the "normal" CS/4/5 behaviour in CS5.5: a runtime shared symbol, that can be updated in Import.fla (I dont care if manually or auotmatically) when I change it in Export.fla, and which also is runtime shared?
* lib.swf * sceneA.swf * sceneB.swf * loader.swf � 1) "lib.swf" - contains two MovieClips, "mc_A" and "mc_B"� with "Export For Runtime Sharing" checked. � 2) "sceneA.swf" - contains in the stage "mc_A" (copied from "lib.swf"). This MovieClip is checked with "Import For Runtime Sharing" in the library.
I usually lurk, but on and off over the past 2-3 months...I've been trying to solve a problem and I can't seem to find a good solution for it. Here is my problem: - I have a SWF that acts as a Shell. This shell will contain the Design Template, the functions/class calls to make it run, and a call to the external SWF that contains all the core code classes.
- My main goal for this setup is to separate the front end Design part (which can be edited and modified relatively easily) from the core code. Now the core code is something the person making the Design Template should not have to mess with. They call it and they are done; they can now use the classes for most of the functionality they will need.
- The problem is, when I change the external SWF with the core code and distribute it... the Design Template needs to be recompiled to get any updates the external SWf core code has made. I want this to be done at runtime so that the user will not have to recompile their Design Template when the core code is updated. - Now, I've seen some people talk about a runtime library... but you have to go into the IDE and set things up a certain way or something something... I don't want that. Is there a way to make all this work in actionscript?
- I have a SWF that acts as a Shell. This shell will contain the Design Template, the functions/class calls to make it run, and a call to the external SWF that contains all the core code classes.
- My main goal for this setup is to separate the front end Design part (which can be edited and modified relatively easily) from the core code. Now the core code is something the person making the Design Template should not have to mess with. They call it and they are done; they can now use the classes for most of the functionality they will need.
- The problem is, when I change the external SWF with the core code and distribute it... the Design Template needs to be recompiled to get any updates the external SWf core code has made. I want this to be done at runtime so that the user will not have to recompile their Design Template when the core code is updated.
- Now, I've seen some people talk about a runtime library... but you have to go into the IDE and set things up a certain way or something something... I don't want that. Is there a way to make all this work in actionscript?
Additional Notes:
- Yes, it must be an external SWF. My requirements are adamant about not using an .as file.
- From my tests (though a bit fuzzy and may be flawed) an include statement will work in runtime. Correct me if I'm wrong.
- I've seen some PNG encryption method for games suggested somewhere. I haven't tried this (because encryption isn't the main goal...), but in theory, would this make the code from an updated core code external SWF refresh in realtime without recompiling the Design Template SWF file?
I tried to import a class in a .as file and I had strange behaviors that I cannot explain. First of, I tried to get work a senocular class by importing it locally his script in the same directory of my main .as class.
There was no error returned from the compiler saying not found but there was one telling my class is still undefined as when I try to make the class work. (possibly undefined method). So I did it with the old fashion I found in some demos, placing the .as file in a com/senocular/display/ folder:
I suppose I need to import an special class to use data types as integer, long or double from my own class. But i don't know what is the correct class I have to import?
Summary: I don't quite understand how the import/export URLs for symbols in a runtime library work. I can't figure out how I can set them so that the runtime library will be properly loaded and accessible for other swfs to import from, if I want it to work both in a local environment (on my harddrive), and from a remote environment (on a web page).
Relative URLs seem to work great for the hard-drive case, but fail for the web page. Is there a magic way to set the relative URL to work from the web too? And/or, is there some way of manually loading up the RSL at runtime and making the importing swfs import from that loaded copy, rather than having Flash doing it behind the scenes based on the import URL set in the symbol? Following is a longish description of what I'm trying to do, and why... I'm trying to figure out if we can use RSLs to contain common UI controls for our next project. I'm running into an organizational issue that I can't quite figure out - how to get the RSLs to work in both a local development/debugging environment, and on a production web environment, with the same exporting/importing URLs.
Here's what my setup would look like. Say I have a main application main.swf, an RSL lib.swf, and a UI module dialog.swf. Main.swf loads or embeds dialog.swf. lib.swf exports some symbols that dialog.swf imports. On a local development environment, these swfs are found in folders like so:
i am tryin to impor the following classes in my FlashDevelop project, import fl.transitions.Tween; and fl.transitions.easing.*; however, in my flashdevelop project i can't seem to find this, i can only seem to find the flash.XXX classes. What do i need to do to gain access to the fl.XXX classes? do i need to download a new sdk or change my ide to something else?
When I point my code to import an external classes such as:
import flash.display.*;
my understanding is that its referencing something within the flash directory to load up the display classes.
In other instances I create a "com.whatever" directory to store other classes that my code can point to.
Well I was running through the Kirupa tutorial (displaying google maps in flash) and I noticed in the code it says "import [url]..." the swf works just fine but where is it grabbing the google classes from if I didnt create the directory?
open google docs, new document, and type in: hello world (world bolded)
then download it as html(zipped)
i unzip the html file, and save it to the assets folder in src folder of my Flex app
i have a Spark:TextArea instance and i want to do:
var importer:ITextImporter = TextConverter.getImporter(TextConverter.TEXT_FIELD_HTML_FORMAT); myTextArea.textFlow = importer.importToFlow(htmlSource);
where htmlSource should point to the saved html file somehow
how do i do this? i tryed embedding, converting to ByteArrayAsset and to String, but i always get the source of the html file and not it's rendered rich text (ie "hello world).
working a project that has 9 swf.a lot of the swf are using the same classes like papervison and tweenlite.is there a way to store classes like papervison in a share library?