ActionScript 3.0 :: GetDefinitionByName Without Path Included?
Jan 11, 2011
I import a class file with path: "src.Objects.Thing" . Later in the code I try to call getDefinitionByName("Thing"). Unfortunately, I get: "1065: Variable Thing is not defined".The way I fixed this was by writing: getDefinitionByName("src.Objects.Thing"). However, this seems like a cumbersome solution. I would really like to be able to exclude the path when calling getDefinitionByName.
View 2 Replies
Similar Posts:
Sep 21, 2011
Due to decisions out of my control I've created a iPad app by way of a CS5.5 Flash build and using the 'Air for iOS' publish.
In the 'Air for iOS' settings I've included a file. The issue I'm having is in trying to call the file and not knowing what the path is.
I'm hoping this is a case where files added in this manner are placed in a consistent location.
Is that the case? And if so, what would the path be?
View 1 Replies
Nov 17, 2010
I'm in flash cs3 project. I need to create a pdf file from an image path included into an xml file or if easy also in a written path as the code below:[code]
View 0 Replies
Jul 18, 2010
So I've created a script where a mc is clicked on and the player can draw a path using the mouse. I'm trying to figure out how I can get the mc to follow the path drawn out by the player's mouse and when the player clicks again, it erases all of the path.my code is below
Code:
import flash.display.Sprite;
import flash.events.MouseEvent;[code].....
View 14 Replies
Nov 15, 2010
I have the following scenarie in a multi-swf game:swf A loads an external swf B that loads a number of swf-assets.ApplicationDomain is set to ApplicationDomain.currentDomain.When I run swf B alone it can use getDefinitionByName on the loaded swf-assets to create instances of these. That all good.When I run swf A that loads swf B - swf B cannot use getDefinitionByName on its loaded swf-assets. Any ideas why this happens?
I'm also not sure if once the swf-assets are loaded using swf B would I then be able to do the following afterwards:swf A loads swf C (a different swf) and then instanciate the swf-assets loaded using swf B. I would like to have some kind of AssetManager that remembers every swf-asset loaded, so that I can easily re-instanciate assets in other parts of the game if needed instead of reloading these again and again?
View 3 Replies
Nov 2, 2011
Showing error:
ReferenceError: Error #1065: Variable slip2 is not defined.
at global/flash.utils::getDefinitionByName()
at code::slip()
package code{
import flash.display.MovieClip
import flash.utils.getDefinitionByName;
import code.slip1
import code.slip2
import code.slip3
[Code] .....
View 2 Replies
Jun 16, 2009
Say you have a flexunit test that looks like this:
package foo {
import flexunit.framework.TestCase;
import flash.utils.getDefinitionByName;
[code].....
View 2 Replies
Feb 6, 2010
I am currently working on a project that will load a swc, inspect it and allow the user to view the classes inside.I load the library.swf using Loader.loadBytes (the bytes come from the unzip library I use). I create an instance of the class using getDefinitionByName.This all works fine as long as getDefinitionByName is called on the next frame. If I call it straight away I get a reference error. To get round this I've come up with a rather hacky solution:
private function processLibraries( event : Event ) : void
{
_zipFiles.forEach( processSwfs );[code].......
I really don't like using the enter frame event on the top level application. I also don't want to have to set up a timer. That's just as nasty.Loader.loadBytes doesn't fire a complete event so I don't know where I listen for an event for when the bytes have been fully loaded into the ApplicationDomain.
View 1 Replies
Nov 5, 2010
I have a bunch of graphics assets in a fla, the MovieClips are linked to some classes. I export the fla as a swc , which I add to my library with the option "Merged into Code".All works great, I can create instances of my MovieClips , just by calling their classes like this.
example 1
var newMc:BaseClass = new GraphicAsset();
Now if I want do the following , Flash throws an error , GraphicsAssetClass is null!
//example 2
var GraphicsAssetClass:Class = getDefinitionByName("GraphicAsset") as Class;
The only way I can get the above line to work is to do this
//example 3
var newMc:GraphicAsset;
var GraphicsAssetClass:Class = getDefinitionByName("GraphicAsset") as Class;[code]....
where I could simply get the class by calling getDefinitionByName()like I do on example 2 , without having to resort to example 3 solution.
View 2 Replies
Jul 2, 2011
Can somebody explain what is the difference between getDefinitionByName and getDefinition inA AS3?When I load an external SWF I can't use getDefinitionByName because I get an Error #1065.
But using externalSWF_ContentLoaderInfo.applicationDomain.getDefinition works OK.So, why getDefinitionByName doesn't find the className?I mean, if the definition is inside the applicationDomain of the loaded SWF, why is not in the main SWF too? (I'm using Flex). I can't create new tags so I can't add the tags getDefinition and getDefinitionByName.
View 1 Replies
Feb 23, 2012
I have main application which contains ModuleManager. Different modules are loaded by this application. Both main application and loaded modules use my custom RSL. I need to get Class object in my RSL, which is defined in one of the modules. I'm trying to use getDefinitionByName function, but since my class is not defined in RSL, I get an exception (though module with needed class is loaded). Is it possible to make module classes visible to RSL code and to get the instance of it at runtime without changing project structure?
View 2 Replies
Sep 14, 2010
I am trying to create a library of transition effects. Each transition type or preset is its own class. In the Client/Main class I would like to create the transition type I need based off a static constant, hoping to save myself from having to write a long switch statement to select which type of transition class to instantiate.[code]I am not using the getDefinitionByName utility correctly, what am I missing here? Is there a different way to achieve class instantiation by passing in the name of the class as a string.
View 9 Replies
Nov 7, 2008
In my FLA I have a movieclip in the Library named "ContentPanel1". I have it's Linkage properties to export on first frame - class "ContentPanel1" and base class flash.display.MovieClip.
In my code I'm trying to attach an instance of this movieclip:
Code:
var instanceClass:Class = getDefinitionByName("ContentPanel1") as Class;
Now, here's the error I get:
[Code]...
View 8 Replies
Apr 13, 2011
why i can't get a class defined by embed a .png file.like this:
[Embed(source = "../assets/level1/liquid4.png")]
public var Liquid4:Class;
then in the same class:
var str:String = "Liquid" + 4;
var disClass:Class = getDefinitionByName(str) as Class;
addChild(new disClass() as DisplayObject);
there is nothing shows up and no error report.the program seems stoped at the getDefinitionByName line.what could be the problem,and how to get a style like this when i have multiple embeded image to go over.I learned that getDefinitionByName needs the class name as its parameters.which is not Liquid4,Liquid4 is just a varialbe that hold the reference to the actual class object.Well i did get things work,but there is another problem:
-I'm using FlashDevelop as my IDE environment,the root folder "scr" which has "Main.as" and "Preloader.as" class in it.when i test my class uint which Embeded the Fluid4 Class,it works,everyone is happy.but later i decided to move it to a separate folder under the root "src" folder.things get ugly,and error shows up indicating "can't find the class",The Embed picture class.but then i moved it out the subfoler ,everyThing works again fine.
---------------------------------------
[Embed(source = "../assets/level1/liquid4.png")]
public var Liquid4:Class;
then in the same class:
//This gives us the actual class name
[code].....
This did work,but only in the "src" source file folder,not a sub folder of it.I checked this phenomenon many many times,and did use a tiny snippet program to prove it.It just doesn't work in the subfolder of "scr" root folder.
View 1 Replies
Feb 11, 2012
I'm having a new problem today- referring to arrays with getDefinitionByName. Anyways, in my map editor, I will have two layers of objects, and the user is responsible for choosing which layer of the map to write to. Because of this, I won't know the exact name of the array to write to until I piece together the string "map0Layer" and selectedLayer (chosen by the user):
Code:
var targetString: String = "map0Layer"+selectedLayer;
var mapTarget = getDefinitionByName(targetString) as Array;
trace(mapTarget);
Through this, I'd like to refer to an array, but every variation of the above code I've tried resulted in
ReferenceError: Error #1065: Variable map0Layer1 is not defined.
(This is subject to change because it could be "map0Layer2" as well, but you get the idea.)
View 8 Replies
Aug 29, 2009
I've recently inherited an AIR project, which is basically a widget that displays product images and static content (contact details etc) on the desktop.The original project was developed in CS4/AS3, and has been published and works fine. Since then, the original developer has gone overseas and I've been hired to make new versions of this widget, UI reskins, different products, etc. I work in CS3, so I've had the original Flash authoring file saved down, gotten Flash CS3 to be able to publish for the AIR runtime, and found the relevant AIR classes that I need. This has all gone smoothly.
The problem I'm having, is that there seems to be some strange way that the original developer has linked the library items to their relevant classes, and I'm trying to unravel this.I'm going to use the clip called windowApplication as my example.In the library, there is a movie clip symbol called 'windowApplication'. In its linkage settings, its class is set to 'windowApplication', and its base class 'com.aca.windows.Application'.The Application class extends the MovieClip class.However, when I test the app, I get compiler errors
'5000: The class 'com.aca.windows.Application' must subclass 'flash.display.MovieClip' since it is linked to a library symbol of that type.'
'1151: A conflict exists with definition SectionBackground in namespace internal.'
(SectionBackground is the first variable declaration in the Application class. Commenting it out makes this error change to the second variable declaration).
I can remove this error by changing the class of the 'windowApplication' symbol to 'Application' and setting the base class to 'flash.display.MovieClip', however that doesn't seem to instantiate the class properly. The symbol appears onscreen, but none of its instantiating functions are called.
The windowApplication object is instantiated using a getDefinitionByName call. I've had a google and looked around various forums, and I've seen suggestions that classes used in getDefinitionByName need to also have a fake instantiation so that they're compiled in Flash. I've tried this but it makes no difference.It seems to me that the getDefinitionByName call is working properly, as it does bring up the correct symbol - but only when the base class is flash.display.MovieClip.
I had another movie clip, called sectionMain, that also had this problem. Its original class was 'sectionMain' and its base class is 'com.aca.sections.Main'. It, too, threw a compiler error 5000. I changed the symbol's class to 'Main' and the base class to 'flash.display.MovieClip', when testing the app, this brought up the symbol. When I changed it back to the original settings, it worked fine, the object was called properly and I could interact with it. However, when the errors with the Application class are thrown, I also get the 5000 error for the Main class - without having changed anything.When I change the class of the windowApplication symbol to 'Application' instead of 'windowApplication', I get a warning that Flash can't find the class and will create one at runtime.
View 4 Replies
Jul 11, 2011
I have just bought FlashFirebug Pro, so I am able to run ActionScript at runtime.I would like to use the function getDefinitionByName, which comes with flash.utils.i get an error, when I import flash.utils.getDefinitionByName.
View 1 Replies
May 29, 2010
I'm having a problem trying to use the method getDefinitionByName, I am using an array to store the names of the classes, the problem that arises is that when I am touring the settlement to create instances of classes shows me that error variable is not set, I've already created an instance of the classes that are in the array so the problem should not be because of this issue, only allows me to create the instance of an object in the array and when you try to create the following instance shows me the error that I mentioned previously
the fix that I'm using has these variables
"PlataformaPrueba", "PlataformaPrueba2"
and code with which I'm reading it:
Code:
var className: String;
var classReference: Class;
var classReference1: Class;
[Code]....
View 1 Replies
Sep 17, 2008
Flash CS3 project. Can anyone explain this:
var ViewClass:Class = views.Login;
view = new ViewClass();
// ^works fine
[code].....
View 2 Replies
Feb 8, 2012
I recently discovered the incredible functionality of getDefinitionByName(), I'm attempting to load in pages for an interactive book.Each page has its own functions, listeners, nested animations, and timers.When loading in these pages, no stop()s are working within the nested clips, and any interactivty has been lost.It's just a mess of a bunch of animations running over and over.[code]
In addition to having the MovieClips not running code, I am running into serious garbage collection issues.I can unload the pages from display, but all sounds continue playing.Does anyone have an idea of why these loaded MovieClips are not running code, and why they will not unload properly with the destroy() method?
View 10 Replies
Mar 25, 2011
I have a ManagerClass with a Singleton implementation inside, I get the instance by calling ManagerClass.getInstance().
Can I get that same instance by just having the class name as a string? I have tried something like:
var theInstance:* = getDefinitionByName("ManagerClass").getInstance as Class;
theInstance.doTrace(); // I get a 1009 error here
View 2 Replies
Feb 4, 2010
I found a lot of tutorials that show how to use getDefinitionByName() to create an instance of a class. Something like the following:
Code:
var classRef:Class = getDefinitionByName("menus.buttons.Icons") as Class;
var iconClassInstance:Icons = new classRef() as Icons;
[code]....
View 4 Replies
Aug 3, 2011
I am using pictures for backgrounds in this game that I am making. About 10 pictures for each level. When the user starts a level all of the pictures needed for that level will be loaded into an array.
I can't use URL request because it won't always have access to the picture files at runtime.So I need to have a separate class for each picture. That is all okay. The picture class names are like so Level01_Picture01, Level08_Picture12, Level67_Picture01, ect... and are stored in the folder: theGame. To access them I user getDefinitionByName().This is the function that should return a MovieClip containing the picture specified in the parameters:
[Code]...
Firstly I'd like to ask: what does the @291d3121 mean? More importantly though, is it accessing the class theGame.Level01_Picture01? And if it is, how do I display the picture that belongs to that class?
View 4 Replies
Nov 9, 2011
the same class is passed to the mxmlc compiler in SWF library as a symbol linkage class and again in a source-path. But the compiler uses the definition from the source-path so creating new instance of that class won't create new instance of the library symbol. How do I tell the compiler to prefer the definition linked to the symbol (the one dfrom SWC)?
I have my design assets in an FLA file and they are linked to classes (e.g. [URL]. Then I export those assets to a SWC library and pass it to the compiler. Now when I create an instance of the class (new MyAsset();) it will be a new instance of the library object.
But there are other classes too in the source folder (e.g. "com.myproject.model.*" so I need to pass the source folder to the compiler too. And that is the problem, now the compiler will use the MyAsset.as definition from the source path, not from the SWC where it is assigned to the library object so if I create new instance of MyAsset now it won't duplicate the library object.
View 1 Replies
Nov 24, 2004
Here's what i'm trying to do: Hide a MC depending on the path variable as:
[Code]...
Well that doesn't work, for some reason, i can't use a string as a multiple level path..
View 5 Replies
Feb 15, 2010
I was wondering if it possible to write up some AS that will take line paths that you have drawn and convert them into a Path object? For example say you drew a jagged line from left to write, would there be a way to have AS convert that into a Path object.
View 11 Replies
Aug 31, 2011
Is it possible to draw out a path in the flash editor, set its visibility to hidden, and use this path data to animate objects in AS3?
View 1 Replies
Aug 27, 2004
i have a quick question what is the syntax if u want to use parametrs to define a path inside a path? i mean:
[CODE]...
does anyone know.... it's very important!
View 6 Replies
Jul 19, 2010
I'm doing this in Flex, but code is pure actionscript, so if it's not the right forum please let me know:)I've embedded swf symbols like this:[code]but this code throws an exeption that 'myVar0 is not defined'. However this code:[code]
View 4 Replies
Aug 22, 2010
I have two SWFs: main.swf and external.swf. main.swf needs to access some methods in external.swf, so it loads external.swf into itself and uses getDefinitionByName("package.Class") to access the class and one of its methods:
var ExternalClass = getDefinitionByName("package.Class") as Class;
var ClassInstance = new ExternalClass();
var NeededFunction:Function = ClassInstance["NeededFunction"] as Function;
var response:String = NeededFunction(param);
Now, I need to extend the functionality of NeededFunction (which is a public method)... I know it's possible to override public methods, but how would I go about this with a dynamically loaded class?
I was thinking I could do something like this, but it doesn't work:
var ClassInstance["NeededFunction"] = function(param1:uint):String {
var newString = "Your number is: "+param1.toString(); //New functionality
return newString;
}
View 2 Replies