ActionScript 3.0 :: Refer A Class From A Nested Movieclip?
Jun 19, 2011I have the class avanzada.as:
package
{
import flash.display.MovieClip;
[code]........
I have the class avanzada.as:
package
{
import flash.display.MovieClip;
[code]........
I have this class:
package {
import flash.display.MovieClip;
import flash.filters.BitmapFilter;
[Code]....
Appears this error message:
"1137: Incorrect number of arguments. Expected no more than 0."
I try with:
new MovieClip(this.root).cambiaBlur(gift);
but also fails.
I have navbar_mc on the main stage. Within navbar_mc is button1_btn How can i reference this button with an eventListener from the DocumentClass?I have the following in the document class:
this.navbar.button1_btn.addEventListener(MouseEvent.CLICK, clickHandler);
but get the following error when i compile: TypeError: Error #1009: Cannot access a property or method of a null object reference.also, there are many buttons within navbar_mc, how can i make an elegant switch statement function (in the DocumetnClass) for all of them. To reiterate, with an eventListener for each button, how do i reference the correct one from a single function, in this case clickHandler?
I'm trying to do a cleaning of some classes that is added into a MovieClip, but I can't seems to set the MovieClip(Class) to null. What is the proper way to do it?
private var mcHolder:MovieClip = new MovieClip()[code].................
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]....
i have recently started a project that would require writing a set of classes and a small API.i know some basics of inheritance and extending classes but i still have some questions.
1) how should sub-class refer/communicate with super class.i think that dispatching events is the way to go but i have no experience on that. i have previously done it by having a parent set up a reference to itself in a subclass e.g
ParentClass.addChild(SubClass);
SubClass.myParent = ParentClass;
//i know that there is already a "parent" keyword in flash objects if i extend one but is that a decent way to communicate with super class
e.g SubClass.myParent.removeChild(this);//sounds a bad call
//but is it better if i dispatched an event that calls the removeChild() in the parent.i have is about dispatching events in a class that is likely going to be extended.
ActionScript Code:
public class Button
{
//add event listeners[code]....
//now if i extend the Button class into another class, let say ControllerButton and want that button to dispatch different event. e.g ControllerEvent, i am forced to override and rewrite all the common stuff in the handler functions.how to avoid having to override allot of common stuff.
I have a class that places objects on stage with addChild(obj) it allowes me to position objects using pixels( say obj.x = 10; obj.y= 50; ) just fine but if
I try this: obj.x = stage.stageWidth / 2; I get a message that I Cannot access a property or method of a null object reference
I need to populate the text field tField (defined on stage) that resides inside ParentClass (MovieClip with same class name). I want to be able to set tField.text to whatever I want from AnotherClass. How do I do it?
View 2 RepliesSo I know how to target a specific instance using MovieClip(root).objectName which I think is nasty way of referring to it anyways, but right now I'm trying to make a fighting stick-figure game and I can only refer my code to one NPC right now using an "enemy" class but I would like it if I could spawn multiple NPC's at once using the enemy class and instead target the enemy class instead of the instance itself while still having the NPC instances being unique so when I hit one they don't all get hit.
View 1 RepliesIs it possible to refer to a variable in a class file separate from the one you are working in? Say Class1.as had a variable named "exampleVar", and in Class2.as you wanted to put something like "exampleVar++;". Is this possible and if so how would it be achieved?
View 1 RepliesIf one uses [Embed] to refer to external graphic assets its easy to instantiate and use them.However, I've got a png in an Fla, with the Class identifier set to "Symbols", Base class is BitmapData.I need to instantiate it like this:
var symbols:BitmapData = new Symbols(1, 1);
addChild(new Bitmap(symbols));
Of course the compiler complains about a call to a possibly undefined method Symbols.For a temporary fix I guess i'll put the graphic external to the swf, but for this project it needs to be in the library along with everything else.
I spent my holyday in studing new Flash 9, very good, powerfull but I doesn't find anymore my root, in teory is transformed in stage.root but it doesn't work.I want to understand if I make a mistake in my code or in my approach.I make a simple example with a few object containers.In the firsts lines of the constructor of the mail class I create the style class named tf and then the interface class called interf.Here is my class
Code:
package test {
import flash.display.Sprite;
import test.tf;[code]....
how to get the tf1 Object that as to be in stage.root.mytf.tf1 as some documentation say? If you doesn't comment that line you have an error. Obviously you can carry with you the object because is a small object with a few nidification but It seems to me very very bad for performance and code.
I have an array that movieclips are added into depending on the users actions. When they are added to the the array, they are also added to the display list of another movieclip on the stage.I'm trying to refer to them later so I can remove them from this movieclip's display list, but I can't work out the wording.[code]
View 2 RepliesI am using the load movie from my main file (main.swf) as:
mc_zoom.loadMovie("detail.swf");
I then have a loader as a movieclip with the detail.swf
when the movie (detail.swf) is loaded the preloader I am trying to make/set the play to go:
_root.gotoAndStop(2);
But this does not work - it works locally but when used with the main file (main.swf)
the second bit of code "mc_inst1.onRollOver..." works, but the first bit of code, which tries to loop through all movie clip instances, will not work.I think this is because myReference is a String. But can anyone suggest how else I should construct my reference to the instance name?
Code:
for (var a:Number = 1; a<myCount; a++) {
myReference="mc_inst"+a;
var myClip:MovieClip = myReference;
[code]....
how to refer the main time line or stage from inside the class.
class sample{
function sample(){
trace(root); // its displaying as null
}
}
in actionscript 2 we use _root for this... in actionscript3 if we use root...why its not working inside the class....?
How can I refer to an MC that is at a specific position (using frame label) to start playing based on a current event?
View 6 RepliesI have a movieclip on stage, but I want to move it or animate it with the use of an .as file, how do I refer to a movieclip on stage through a .as file?
Is this even possible or do I have to pass the actual movieclip as a parameter to a function of the class?
To make things more clear, here is my code:
Code on main timeline:
Code:
var myBox:Box = new Box();
myBox.x = 80;
myBox.y = 160;
[Code].....
asically I have a variable in which I store various numbers depending on other aspects of the flash movie and I have a bunch of movieclips that are on the stage all named by number. I want to use the variable value to access and run methods etc of these movieclips.
e.g.
var myVar = "10";
myVar.myFunction();
where the item on stage called '10' will react. I realise this is a confusion between a string and an object/movieclip reference but i'm almost certain ive done this before and ive got a feeling it had something to do with [] brackets on the end of something...
Is there a way to refer to an object on the main timeline from inside another movie clipThe "_root." function does not work and I am still unfamiliar with the "_parent." functions purpose.
View 2 RepliesI would like to know how to access a XMLList object in main timeline from movieclips.Can XML be accessed through 2nd level(nested movieclips)? In frame 1 of main timeline, the XML file has been loaded.
var xmlData:XML = new XML();
var data:XMLList;
xmlData.ignoreWhite = true;
[code].....
I had attach a few movieclip in the main stage by using addChild() method. If I going to refer back to them inside other movieclip, How can i do so..
For example,
//attaching at the main stage
var earth1:MovieClip = new earth()
addChild(earth1);
[Code].....
How can I refer back this Movieclip from other movieclip's timeline?
I had a movieclip which contained a button in it exported as "mc". Then I attach this movie clip onto the stage using: _root.attachMovie("mc", "link1", 1); But i couldn't find it with AS. I mean, how can i refer to the button inside the movieclip after I attach it onto the stage using attachMovie?
View 2 Repliesi am using a movieclip who has two nested movieclips, the problem i am dealing is that when i try to get the width or height of the parent movieclip it always showing the values of the small nested movieclip, when i draw the movieclip it draw perfect but when i read this values shows that error, what can i do?
View 2 RepliesI want to apply actions to a movieClip nested inside a dynamicly attached movieClip, with the attachMovie method; it doesn't works when the movieClip is attached by a button:
1.when the swf movie loads with an attachMovie method the remove_btn clears the window_mc
[Code]....
I'm trying to do somthing like this:
class Timer extends MovieClip
{
// constructor
[code].....
I use the loader class to load in an external swf, a preloader movie in my class. (not a document class)
To target the properties in the swf (specifically the text field in it), I coerce it to a movie clip after it's loaded and add the child with:
var thumbPreloaderMC:MovieClip=evt.target.content as MovieClip;
now I can use:
thumbPreloaderMC.preload_text.text "sometext";
to reach the text field. works.
But, I want to nest that clip in a container movieclip I'm placing all the thumbnails I'm loading in, thumbContainer.
So I create the movieclip thumbContainer, add the child, then add the preloader swf to this clip.
I can't name the loaded swf, it throws an error, I googled that and see I can't name an already named clip.
I get an error "TypeError: Error #1010: A term is undefined and has no properties."
First of all, I'm fairly green with as3 still, I think perhaps I should rethink how I'm structuring this. I could and would ask how to target a nested loaded swf from a class.
is nesting clips like this from a class bad practice? What are best practices when it comes to using timeline based animations like preloaders etc by a class? I'd like to make my class as reusable as possible, but one can't create all animations and graphics from code.
Ok im rather new to flash so ill do best i can to describe this. I have a HealthBar movie clip with 3 layers, bottom layer is just a red rectangle, middle layer is a green rectangle that is a movie clip, and the top layer is just a border. the green rectangle movie clip has an instance name of bar. i put my HealthBar on my stage with an instance name of healthBar and i change it when the players health goes down by calling _root.healthBar.bar._xscale = health where health is 0-100.
this works all fine and dandy. now i have a movie clip of MiniBoss with an instance name of miniBoss# where # is a number of the layer depth when it is created. in the MiniBoss movie clip i have an instance of the HealthBar with an instance name of bossHealthBar. i tried to call from within the MiniBoss class bossHealthBar.bar._xscale = health but i get an error that there is no property of bossHealthBar.bar._xscale. how do i access the bar in the HealthBar in the MiniBoss clip from the MiniBoss class in its onEnterFrame() method?
I made a movieclip (map) with nested instances (cities) in IDE and I want to access them from non-document class.
But the class can't access them until it's added at the stage too.
If I add the class at stage, class can see and access only map, but not cities inside of it.
Both class and map are children of document class...
I have run into this problem twice now, for two different reasons. Technically the more recent time it isn't a roadblock, but rather I just want to avoid memory waste by not using nested functions for my event handlers.[URL]
The reason I've come to this forum is that I always went on my merry way, defining event handler functions on movieclips within functions, until today, I read "I really didn't like the idea of defining an event handling function within a method of a class. I don't think nested functions are a really good practice." in the archives of the BIT-101 blog. So I decided to try to extract these and assign only a reference to each movieclip that needs the function. The problem is, it's in a class - and I need access to the properties of the movieclip from within the function. I figured I might be able to extend MovieClip, but I don't want anything in the library, so I run into the problem of how I would use my new movieclip-extending class - I read something about using the Linkage name of "__Packages."+[classname] - is that really proper? Either way, my final question is - if it's not good practice to use nested functions within the class, where do I create my event handler functions?