Flash :: MovieClips Don't Keep Their Base Class If Childed To A Movieclip That's Added Dynamically
Dec 19, 2010
I have a holder movieclip, its base class is foo.[code]I put a trace in the constructor of bar so I can tell if it's being loaded properly, and when I drag out foo onto the scene and run the clip, all the little bars within it fire off correctly. However, when I add it to the scene dynamically, such as like this in the Main class:[code]Suddenly, all the little bar movieclips within foo revert to regular old movieclips and don't fire. What's interesting is if you typecast one them as Bar at some point, and their normal class is set to Bar (within the movieclip itself, rather than base class), it works and the constructors all fire, like this:[code]However, if you want multiple different types of Bar clips, and give each a base class of Bar, this won't work. They all spawn as generic movieclips. It DOES work if you go through and typecast them as either Bar1 or Bar2, but that means in practice you would have to try to typecast every child as every top-level object type every time you added the clip to the stage. You also can't have a bunch of movieclips of the same type since Flash doesn't allow it, so each one needs to be a new class, and have that class typecasted when the parent is placed on stage. Kind of defeats the purpose of OOP.
This seems to be a bug in Flash itself, but is there any way to fix it?You can download an example file here with a couple extra traces to show off what's going on: url... It still has its children, they're added and displayed, but their type changes to MovieClip, ignoring the base class.
View 1 Replies
Similar Posts:
Dec 19, 2010
I have a holder movieclip, its base class is foo.
package {
import flash.display.MovieClip;
public class Foo extends MovieClip {
public function Foo() {
[code]....
Suddenly, all the little bar movieclips within foo revert to regular old movieclips and don't fire.[URL]It still has its children, they're added and displayed, but their type changes to MovieClip, ignoring the base class.
View 1 Replies
Aug 12, 2010
I have this base class
package sevengames.miranda.front.res {
import flash.display.MovieClip;
import flash.text.TextField;
[Code].....
I then, in the Flash document, create a movie clip which has this class set as the "Base class" in the properties. However, if I then do this.updateText(); in the movie clip's frame script, it complains
TypeError: Error #1006: updateText is not a function.
at miranda_fla::MenuButton_3/frame1()
Why doesn't it work? I know the class is read and compiled, because I had an error there which was reported.
View 4 Replies
Mar 25, 2011
I'm more of a Flex than Flash developer so I'm hopeful this is something easy. Short story, I have a scrollpane in a flash-created swf. In my pure AS3 project I dynamically create menuitems within a new movieclip.
[Code]...
View 5 Replies
Jul 20, 2011
I have a question about Tweening for dynamically added movie clips: In Main.as constructor file I added a movie clip:
addChild (new Arrow());
in Arrow.as I want the new arrow to tween as soon as it is added by Main.as file.
To do so, in Arrow.as I put this code:
import fl.transitions.Tween;
mport fl.transitions.easing.*;
...
private function onAddedToStage(event:Event):void {
tween= new Tween (this, "x", Regular.easeInOut, x, 400, 60, false);
}
But "this" seems not to work because the file simply adds my movie clip to the stage without tweening or error messages. What I should put instead of "this" in the Arrow.as? Or any other options to tween this movie clip?
View 1 Replies
Apr 15, 2010
1) I want to count the number of movieclips(in different class) added. That is, may be I have 10 clicks, how many bigfish and smallfish are created. What function is suitable to call for doing this.
2) I have a problem on the hittest, it comes out "no hit" only but I still can see the movieclips overlap. And if I want to modify that only check whether smallfish is overlap with bigfish, what should I do? Also, there are functions inside the movieclip itself to give motion.[code]
View 1 Replies
Jul 6, 2010
I have a Actionscript base class already created but when i type in the location for it i get back the file cant be found error.This is the url for my code
gamegamesmygameutilitykeybinderChanger
Now i have tried it without the as3 format but it just seem to find this file.
View 1 Replies
Oct 13, 2011
I'm working on a iPad game in Flash Pro CS5.5 and it was compiling correctly. Now I have marked a lot of MovieClip classes for Export for Actionscript so they use a custom MovieClip subclass as base class.
When publishing the movie I get a SWF without any actionscript in it (publishing takes also a lot less time then before). Now I have a suspicion this is because there seems to be a limit on the number of Export for Actionscript you can have?
The problem is that for iPad I can not split my .fla to create multiple swfs; since swfs that you load via the main document can not have any ActionScript in it (I tried already to put all the sounds in a seperate SWF with export for actionscript turned on, that didn't work).
View 7 Replies
Feb 23, 2009
I need to work in as2 and I would like to add a blank movieclip to the stage, then the user can draw in it, but but only within certain confines. So I tried to set a mask but its just not working. :-(
Code:
this.createEmptyMovieClip("draw_mc", 1);
_root.attachMovie("mask_mc", "instance1", this.getNextHighestDepth());
draw_mc.setMask(instance1);
View 0 Replies
Jan 14, 2010
Im adding a mc from the library using.
Code:
menuInGame = new inGameMenu();
menuInGame.x = 700 ;
menuInGame.y = 0 ;
[Code]....
Im trying to switch the height of an mc that is inside an object ive dynamically loaded from the library
the mc has the name barHP.
How do i access it, or must i add this dynamically as well?
View 3 Replies
Jan 8, 2011
Code:
function saveAction(evt:MouseEvent):void{
var choice=evt.target.name;
var inputText:String = saveName.text;
}
I have this and I am trying to make a variable from the contents of the input box. Simple ya? The issue is that it is a child of another clip that is being added dynamically, so it doesn't think the input exists. How do I declare the input? How can I target it's contents? Also I have a remove function that is meant to remove this same parent clip.
Code:
function closeSaveWindow(evt:MouseEvent):void{
removeChild(saver);
}
'saver' is a variable created in another function, so I think there is a scope issue there. To try to fix that I declared 'saver' as a movie clip as a global var.
View 1 Replies
May 20, 2010
i have a problem, here's the error code:
Code:
Warning: 1072: Migration issue: int is not a dynamic class. Instances cannot have members added to them dynamically.
and the source:
Code:
public function getStartUpData(param1:MovieClip, param2:MovieClip):void {
(null | null <= this)._111d = param1;
this._111f = param2;
_111e = new MainInterval(param1);
[code]...
View 2 Replies
Jun 10, 2010
I've got this simple code here:
this["recipe"+i] = new recipelistname();
this["recipe"+i].buttonMode = true;
this["recipe"+i].recipeid = i;
[Code]....
The problem is that the movieclip rotates around the center. The textfield inside the movieclip is starting at 0,0. But it still rotates around the center, how can I make it rotate at 0,0?
View 5 Replies
Jun 22, 2010
I have this Fla which contains a symbol that is linkaged to a certain class that is in my project. That class inherites a base class named CMovieClip which resides in one of the libraries that is in the class path (and inherites from MovieClip).Of some reason, every change that I do in the base class doesn't seem to influence the resulting linkaged class, much as if this library is cached somewhere that I can't feagure out.I tried to create the same conditions in a separate Fla but it does not repeat the issue.I tried to duplicate the symbol but the issue isn't solved that way.
View 4 Replies
Sep 17, 2010
I have two SWF files which I shall call container and slave. The slave file contains a movieclip that extends from a class I shall call base. base extends MovieClip and is compiled into an SWC. slave includes this SWC as a runtime library, while container includes it as merged (and does reference it so it should be compiled into the container SWF).
The container loads the slave like so:
bgURLRequest = new URLRequest(slaveUrl);
var context:LoaderContext = new LoaderContext(false, new ApplicationDomain( null ), SecurityDomain.currentDomain);
bgLoader.load(bgURLRequest, context);
When this loading happens, I get the error that class base was not found. I suspect this has something to do with the presence of the ApplicationDomain in there. I'm not sure what it does exactly, since I didn't write this loading code myself (but I do know that it's there for a reason so it can't be simply removed).
View 2 Replies
Apr 20, 2009
I have a 20 frame MovieClip in the library with a Class attached to it. There is nothing in the Class except the usual stuff pertaining to MovieClips with a Class (import display.movieClip and so on). The first frame in the movieClip timeline is a stop() command. I only want the clip to play sometimes. So in the main document timeline, I add the clip from the library as such:
Code:
var testClip:SampleClass = new SampleClass();
addChild(testClip);
But with this instance, I also want it to begin playing. However the following is not working:
Code:
MovieClip(testClip).play();// doesn't work?
testClip.play();// also doesn't work?
But, if I delay things a bit it DOES work - like this:
Code:
Tweener.addTween(testClip, {y:0, time:.5, onComplete:function() {testClip.play()}});
// works fine, clip begins playing
Why delaying the play command works, but telling it to play on instantiating doesn't?
View 3 Replies
Dec 23, 2011
I have a movieclip in my library named mcLeaderboarditem. I've generated a class for it to manage the textfields.
The easiest way is to make a child of the class and manage the contents properties with the dot-syntax like this (documentclass):
var leaderItem:mcLeaderboardItem = new mcLeaderboardItem();
leaderItem.lblRank.text = "2nd";
addChild(leaderItem);
[Code]....
Probably it will be something stupid because of tiredness. Or is there an other way to do what i'm trying to do?
View 2 Replies
Apr 14, 2011
I have a program where I have multiple classes derived from a base class. I want to take all instances of the different subclasses and put them into an array. Is there a way I can search for anything derived from the base class?For example, right now a get the number of children, then see what they are, so:
for (var i = 0; i < this.getNumChildren(); i++)
{
if (i is "type")
[code].....
View 3 Replies
Feb 16, 2011
I have a MovieClip, that I'm going to add to the display list with my document class at runtime beacuase there will be many instances of it. The MoviClip "box" has 3 more MovieClip instances inside it,and each of those three have two more.It looks like this:
box
circle 0
oval0
oval1
[code]....
View 2 Replies
Aug 15, 2009
ok. so here's the thing..i have a class from where i created an array with the time, name, and position of each movieclip data.. and wanted it to go through each one and execute at a certain time.. So i tried something like this:
[Code]...
the first part works well.. but its when i try and add it to the stage that i get confused.. i tried something but i think its wrong.. can anyone help me? Basicly i want flash to get the array.. use index 1 for the name.. index 2 for the x position and index 3 for the y position.. but all this name referencing in as3 really confuses me.
View 7 Replies
Aug 15, 2009
i have a class from where i created an array with the time, name, and position of each movieclip data.. and wanted it to go through each one and execute at a certain time.. So i tried something like this:[code]the first part works well.. but its when i try and add it to the stage. Basicly i want flash to get the array.. use index 1 for the name.. index 2 for the x position and index 3 for the y position.i have already linked the movieclips on the stage
View 1 Replies
May 7, 2010
I am working on a tile based game in which you will be able to slide the tiles back and forth, up and down along a grid.
I have created a Class called Tile and have dynamically added the movieclips to the stage in a grid like so:
Code:
for(i=0;i<7;i++){
for(j=0;j<7;j++){
var t = _root["gameboard"].attachMovie("Tile", "tile_" + i + "_" + j,
[Code].....
View 2 Replies
Mar 10, 2011
If I've already specified in the symbol's package which class the symbol's class extends, do I still need to specify the base class in the symbol properties dialog?
View 2 Replies
Mar 24, 2009
when I create a new flash project, I would like to put the source files in /src/ folder.When I try to add the base class to my project, flash can't find it.I've added the folder "src/" to source paths, in flash preferences.
View 2 Replies
Nov 2, 2010
I have a class "BaseMenu", which, needless to say, is a base class to menus that have eventlisteners. When I trigger the function to remove the menu itself, I don't know how to remove these eventlisteners, since their respective functions are in the extended classes, not in "BaseMenu".
Code:
//...
public function BaseMenu() {
this.cacheAsBitmap = true;
alpha = 0;
y = 400;
[Code] .....
View 1 Replies
Aug 26, 2011
So I know you can assign a base class to a library definition within the Movieclips library information field but If I have 30 items in the library and I change the Base class this becomes a pain in the ass, can this be done programmatically when I instantiate the library definition?
var new_shiz:MyItem1 = new MyItem1(); // Needs to have a generic base class of MyItem
View 2 Replies
Dec 28, 2010
For some reason Adobe doesn't allow us to change the size of the handle in the default slider component. This handle is small and hard to click on quickly. If you try to increase the size of it graphically it just gets resized back down to 13x13 pixels. I've looked into the Slider.as code found in:
Program Files(x86)/Adobe/Adobe Flash CS4/Common/Configuration/Component Source/ActionScript3.0/User Interface/fl/controls/Slider.as
And found that on line 803 there is the code thumb.setSize(13,13). I tried changing that to 60,60 but it doesn't change the size of the handle. I don't know much about classes and I didn't think you had to compile these. I thought that in Flash when you clicked on the Components button that it loaded these classes in at that point but I must be wrong.
ActionScript Code:
override protected function configUI():void {
super.configUI();
thumb = new BaseButton();
thumb.setSize(60, 60);
[Code] .....
View 5 Replies
Jan 21, 2010
im getting an error message that flash cant find the base class. i put the as file and the fla file in the same folder, isnt that the first place in the classpath?
View 1 Replies
Mar 24, 2009
I have a symbol in the Library with a Base Class that extends the MovieClip Class and adds some additional functionality. I want to be able to export this from the Library by right clicking on the symbol and selecting Export SWF. I was hopping this would essentially give me the same results as if the symbol contents was on the main timeline and I had declared the Base Class as the Document Class. When I import this SWF using the Loader Class it seems to loose all of Base Class functionality and think of itself as a MovieClip.
Looking at the below sample code, the alpha property is correctly set but the param1 getter is unaccessible. What the hell is going on?
[Code]...
View 1 Replies
Dec 10, 2011
here is a very simple code
for ( var i = 0 ; i < 10000 ; i++)
{
var mc:MovieClip = new MovieClip()
addChild(mc)
}
What is the memory accumulated by this code ? Any flash util's keyword i may use ?
View 1 Replies