I've tried to connect a box2d classpath I have to adobe pro cc via a source path in the actionscipt settings. I get a warning saying "A definition for the document class could not be found in the classpath, so one will be automatically generated in the SWF file upon export." When I do this the code still does not recognize the box2d commands. Any help is appreciated, thanks so much!
Edit: So I have now replaced the primary source folder thanks to Cadin's observation and the Box2d library commands are being recognized, however, I get several errors saying:
"Type was not found or was not a compile-time constant: b2World."
"Call to a possibly undefined method b2AABB."
and
"Definition Box2D.Collision:b2AABB could not be found."
I am extremely stuck and don't know what to do. I am fairly well versed with flashdevelop. But it has been a while since I've worked with flash pro. Thanks so much!
It sounds like the error is complaining about your Document Class, not Box2D.
When you added the source path to Box2D, did you add a new path, or replace the default one?
It's easy to accidentally replace the default path and get all kinds of class linking weirdness. Check the source path settings and make sure you still have a listing for "." That tells Flash to look in the current directory (where the FLA is) for source files. If your document class is in that directory, Flash won't find it without that source path.
Related
I develop an ActionScript 3 project using FlashDevelop 4.
I have a main SWF holding all the code.
I want to export some of the main SWF code into modules.
I created a module to hold the separated logic (by extending ModuleBase).
I don't want the module SWF to reference anything that is available in the main SWF so i ran the main SWF compilation with -link-report and got a report.xml file holding all the main SWF references.
I tried to compile the module (mxmlc) while excluding any class or library in the main SWF using the load-externs=report.xml option.
The compilation gave me an error saying that some libraries references are missing, but the error message referenced classes that are suppose to be included only in the main SWF.
I checked the report.xml file and it does show that these classes are referenced.
I tried to run the compilation in 3 different ways and always got the same result:
Using the build current file in FlashDevelope and giving the file a header of the command that should be ran.
Using command line (windows).
Using Ant build script.
Does anyone have any idea why this could happen?
I would be happy to supply more information about my problem if it helps anyone guide me to a solution.
Thanks for the help!
It turns out that it did not ignore the load-externs.
The load-externs excluded some of the libraries and therefor these libraries were not found during compile time.
I solved the problem by adding the libraries path to the compilation.
This was done by addind the flag: -l+=lib\
I am trying to just compile and run the demos from this article:
Flash talks to max msp via osc
I am using Flash Develop and Flex SDK with an up to date version of air.
When I run the demo: "as3_MaxFlashHarmony" I get an error I don't know how to fix. The source for the entire project is here:
the project
But specifically the error I am getting says:
col: 30 Error: Type was not found or was not a compile-time constant: OSCMessage.
here is the as3 file that it is specifically referencing:
//IHarmonyApp.as
package
{
import org.tuio.osc.OSCMessage;
public interface IHarmonyApp
{
function updateOSCData(msg:OSCMessage):void;
}
}
It uses the libraries Tuio, MinimalComps, and MonsterDebugger. The thing I don't get is that how can it not find OSCMessage if OSCMessage is properly imported? the IDE is making fine references to it and I can open it's declaration. OSCMessage is a public class. I don't get it.
To give some extra info for potential answers, the IDE flashdevelop can find the library org.tuio.osc.OSCMessage just fine, it gives the error regardless of if org.tuio... is a source path or not, and the overall path does not contain any special characters. I don't know if that might matter, but I feel like this is me making a stupid mistake somewhere. I can provide my project zipped if need be.
Thanks!
Edit 9:48, 8/25/12
I do have the file path org/tuio/osc/OSCMessage.as in my project, and the file OSCMessage exists. FlashDevelop can find it just fine and I can navigate to declaration at that location. This is why I got stumped.
Thanks again
In your AS3 folder apart of your de folder you would need to have org folder with relevant folders and classes.
For example to import org.tuio.osc.OSCMessage you would need a file:
../YourPackageRoot/org/tuio/osc/OSCMessage.as
The other way is including a SWC file (all folders and classes zipped into one swc file).
You can include the swc file in FlashDevelop by right clicking the swc file and selecting Add To Library
I'm using FlashDevelop4.0.0 RC1 to create AS3 library project, in which I want to import Away3D library. I follow this tutorial to set up my FD.
http://www.mclelun.com/blog/2011/08/flashdevelop-stage3d-away3d/
However, FD generate error message when I use ExportSWC4.2 plugin to compile the project, I got error message said that
at away3d\materials\methods\TerrainDiffuseMethod_NormalizeKernel.as(10): The definition of base class ByteArrayAsset was not found
Can anyone help me with that? Thanks!
p.s.
I also have issue like the following link
http://sourceforge.net/tracker/index.php?func=detail&aid=3401191&group_id=252536&atid=1127375
not sure if it's related to my problem.
Are you downloading the zip package from http://away3d.com/download/ or accessing via SVN / GIT?
http://away3d.com/images/uploads/releases/away3d_4_0_110915.zip
Not sure about their GIT, but I found the SVN repo dated.
I did not see ByteArrayAsset anywhere in the inheritance chain within my version:
away3d.materials.methods.TerrainDiffuseMethod
away3d.materials.methods.BasicDiffuseMethod
away3d.materials.methods.LightingMethodBase
away3d.materials.methods.ShadingMethodBase
mx.core.ByteArrayAsset is an Adobe class.
There's a NormalizeSplats Pixel Bender linkage, but I did not see any Normalize Kernel.
I'd recommend grabbing the Broomstick ZIP package - I had no issues building the SWC with Flash Builder targeting Flash Player 11.
I have a .fla on my Mac that I created in Flash cs5. I saved it as a cs4 file and sent it to a friend who has a Windows machine.
I have a symbol linked to an AS class which has symbols inside of it which have instance names. The constructor of the class refers to these instance names. When I compile, everything works as expected. When my friend compiles, he gets compiler errors telling him that the instances mentioned above are undefined.
I'm at a complete loss. Any ideas why this is happening?
Things we've tried:
Checked to make sure that we had the same source path
Made sure that the symbol in the Flash IDE has the correct linkage
Tried compiling the .fla with cs4 on my machine. It works, which is what makes me think it's a Mac/Windows issue.
Try going to publish settings -> flash -> [settings button next to "as3] - the same place you go to set your classpath. There is a checkbox there that says declare stage instances - it sounds like its unchecked on the cs4 windows version... it should be checked if you don't want to have to write things like :
public var myClip:MovieClip;
for every instance that you've placed using the flash ide.
I have been working on modifying an existing FLVPlayback skin. Ideally I would like to have one that uses a counter.
The problem is, all the fla's provided for the skins with counters fail to publish/compile correctly. Fla's are here: C:\Program Files\Adobe\Adobe Flash CS5\Common\Configuration\FLVPlayback Skins\FLA\ActionScript 3.0
I do end up with a swf, but it doesnt' work when applied to my FLVPlayback instance on the stage. (All skin fla's beggining with 'Minima' do not work, even the skins without the counters)
I get the following warning when publishing: Warning: unable to load SWC FLVPlaybackAS2.swc
If I go to 'File -> Publish Settings -> Flash -> Settings', FLVPlaybackAS2.swc is not in my Library Path. So, I added it... (C:\Program Files\Adobe\Adobe Flash CS5\Common\Configuration\Components\Video\FLVPlaybackAS2.swc) But I get the exact same warning.
It seems strange to me that it would throw a warning about FLVPlaybackAS2.swc... this is an AS3 fla provided by Adobe. I also tried adding FLVPlaybackAS2.swc, FLVPlaybackAS3.swc, FLVPlaybackAS3_2.5.swc etc, with no change.
Another developer here has tried also and come up with the same problem. We are both on PC's and have all Adobe updates.
Anyone have any ideas?!
Thanks,
James.
Guys... I found answer ! Just remove all from your source paths in the publish settings when you look to ActionScript 3.0 setting for your Skin FLA ! ( as default you can see here some path to video folder where is SWC files)
it's look like a bug but i did it and now my skin working.. now in this lines are empty field in my FLA..
if you want ask me and i will answer how it works.. good luck with this strange bug !