I'm new to as3 programming and I'm trying to communicate between two classes to get the player coordinates for a game from one class to another class. I tried using a getter and a setter and calling a class public function that returns the value.[code]...
I am still wrapping my head around AS3 classes and how to use them..i want to know how classes can communicate with each other and send information to each other? Below I have created an example of 2 classes inside of a package. When 1 class is finished it triggers the other to start.
I am trying to make a little game. In short words; you control a instance named player, and get attacked by children of the Enemy class.How can all the children of "Enemy" know the coordinates to player instance, how can the document class and the Enemy class exchange variables?
if one can't communicate between mc's external classes how can you create stuff?I have a timer inside each instance form a bomber_mc via a external class:this timer places bom_mc's on the stage from the location of bomber_mc (there are several). But I want to do a do a collisiondetection test with each bom and yet another kanon_mc.can you give me a hint in the right direction?
I've had C# lessons in class and saw some basic class functions. Now however it's been a while since I worked with AS3. And it seems I can't figure out a basic way to communicate through different classes. I'd hoped I could do something like level.backgr1.x += 5; Where backgr1 is a MC defined in the class Level. I'll explain the thing I want to accomplish. I have a 3 classes, Main, Player and Level. Player and Level are children of Main. the mc in Level needs to move when a keyboard event occurs in Player. But only Main can acces Level because it is it parent.
I have 2 different swf files with their own separate document classes. My first SWF file is main.swf and it's document class is called Main.as (its the main container that loads in external swfs). The file being loaded into main.swf is called step1.swf and it's document class is called Step1.as. I have a next button in step1.swf that when clicked needs to tell the document class controlling my main.swf (ie Main.as) to load in the next external swf. However I don't know how to call a function in one document class to from another document class. And I don't know if that fact the swf calling the function being loaded into the other makes this situation more complicated. I've looked around but I cant seem to find the answer anywhere. Basically I need these two separate document classes to communicate between one another.
Here is the code for Main.as (the doc class for the container SWF):
I've started to work with Actionscript 3.0 for a couple of weeks and I've just started my very first "top-to-bottom" AS3 project which I'll be delivering (a "demo") next Monday.However, some basic complications are arising and I just don't know what to do, this probably has been answered a lot of times but I can't seem to find a single blogpost/forum/website that addresses this issue in a way that I can understand instead of "copy/pasting" code.[code]Ok, when I press a button inside the NavBar class I want it to execute a function that tells the DocumentSetup generated MovieClip(contentLoader) to load in a different SWF based on the arguments passed on the Event.My questions are:
1 - How do I access a public function on a different class? Let's say I have my navFunction() placed on the DocumentSetup Class, do I need to create "another" instance of the DocumentSetup Class just to tell it to do something?
2 - Let's say you're able to explain to me how to solve the problem above.How can I reference a MovieClip generated by the DocumentClass through another Class? I need something to tell the contentLoader MovieClip to change contents, how do I communicate with it from another Class if the MovieClip was added to the DisplayList through code on the DocumentClass?
3 - How can I create a Variable which is identified throughout the website, let's say I have an XML file with all the text content that's going to fill in the content placeholder's. How do I make this XML data accessible from all classes instead of having to re-import the XML again and again?
My external classes all work 100% themselves but I cannot get them to communicate with each other, I keep getting compiler errors...A website in which you can't navigate to a different page is basically useless
Let me explain the situation that has been driving me crazy the last couple of hours. I have 2 different swf files with their own separate document classes. My first SWF file is main.swf and it's document class is called Main.as (its the main container that loads in external swfs). The file being loaded into main.swf is called step1.swf and it's document class is called Step1.as. I have a next button in step1.swf that when clicked needs to tell the document class controlling my main.swf (ie Main.as) to load in the next external swf. However I don't know how to call a function in one document class to from another document class. And I don't know if that fact the swf calling the function being loaded into the other makes this situation more complicated. I've looked around but I cant seem to find the answer anywhere. Basically I need these two separate document classes to communicate between one another. Here is the code for Main.as (the doc class for the container SWF):
[Code]...
if someone can show me how to get swfNavigation() to run from the other class
I have a heck of time here with an issue. I have an xml document that when a certain button on the stage is clicked it loads it's corresponding external swf into an empty movieclip on the stage. This empty movie clip is a holder for all external swfs.So what I'm trying to do is when an external swf is loaded that has buttons on it, I need those buttons to communicate with the main timeline and remove a mc that is on the Stage. I need the currently loaded swf(s) to be able to do this.So whatever the currently loaded external swf is that's loaded, I need it to talk to the main timeline. (I have quite a few external swfs that need to do this) So I imagine I need to somehow target the currently loaded external swf to get it to talk to the main timeline.The code below in summary doesn't work but it doesn't give errors either. I don't pretend to know what I'm doing and I haven't been successful in searching for a solution to this particular issue.
// main timeline object var index:Object=this; function loadComplete (e:Event) {
I want to make a flash movie with cars of different kind. Every car looks different and have their own specifications like weight, horse powers, top speed. So.. I want to create a class Car that can hold the variables weight, horsePowers, topSpeed and should be linked with a specific MovieClip (the car).
The problem is I cannot link all my MovieClips, holding the cars, to the same class Car.Should I create a container to associate with the class and then place different car MovieClips in them depending on which car object I'm creating? (so the MovieClip itself is sort of a variable)
how I would go about creating a new instance of a class that inherits from the MovieClip class. Rather, I know how to adjust linkage properties inside the library, and can create new instances that way.... but my main problem is that a good number of times I find I want to create a new instance using the Constructor function, which is chock full of parameters that I use inside the class. I currently have a class called MenuButton, and if I use Linkage properties, I can make it all work just fine... But I also have a class called Menu, which arranges those MenuButtons... by creating them using MenuButton's Constructor. According to my code, these instances are created... but they are not visible and do not show up in the debugger.
I have a main .fla file that has a movieclip with an instance name level. Within this there is another movieclip called hero.I have a main class with the following function:Quote:
public function beginLevel() { var cHero:Hero = new Hero; createFunction1();
I m new to Flash. I need to develop Flash application for mobile devices.I have created a class and using that class i created a movieclip.
I have created one more class. And whenever the enter key of the mobile device is pressed i need to create a movie clip using the second class. How to do this?
[Code]...
I dont know what's the problem? I want to remove or unload the previous movie(Which shows a piechart) and to load another movie(which shows details in a table).
In my project I have to classes that inherit the MovieClip class. Then I create a movie clip and in the library I click on linkage and I set on AS2 class field the name of the first class. Inside this movie a create another movie clip and I set his AS2 class to the second class. The problem is, when I run the file the properties of the nested movie clip are not available for the parent. What a mean is that in the constructor of the first class I cannot acces the methods of the nested movie clip. Somehow I need the nested movie clip to be initialized first and then the parent.
I'm working with an ActionScript Classes file for some MovieClip buttons to animate In and Out. Everything is working the way it should but I would like the button to stay indicated once clicked on and then animate out once a new button is selected. The way I set it up in the past isn't very efficient and the next project I'm working on is going to be a lot of buttons. Trying to learn something more efficient.
Here is the AS class code: class ButtonClass extends MovieClip { public function ButtonClass() { this.onRollOver = this.Over; this.onRollOut = this.Out; } private function Over() { this.gotoAndPlay("Over"); } private function Out() { this.gotoAndPlay("Out"); }}
And then for the MC button in the FLA: b1.btnMC.btnText.text = "PORTFOLIO"; b2.btnMC.btnText.text = "CONTACT";
I'm developing my first flash app. I'm trying to use classes because they'll be very important in my future app. I created a simple movieclip with a star. However, instead of putting it directly on the stage, I'm calling it from library, using the addChild method to place the star in the stage. To do that, I simple right click over the movieclip icon->properties->check export to action script->and I give a name to the class (for example: myMC)
Then, inside the class I wrote: package { import flash.display.*; import flash.events.*; public class myMC extends MovieClip { var star:myMC=new myMC(); public function myMC() { [Code] .....
As I am placing the two variables origin_x and origin_y inside the constructor, I'm expecting to get 250 and 200 respectively. After drop the star, I want to send it to it's original place, and that's why I need to keep this values. And here's the problem, origin_x and origin_y are both ZERO, instead of 250 and 200... The value is not relative to stage. I managed a little bit and I found this post : [URL]. Unfortunately I tried to replace by the suggested code, but both values remain zero. An interesting thing, is that if I put the star directly in the stage instead of calling it from the library as I am doing, I get correct values in origin_x and origin_y.
I have a Flash file for an xml driven menu. There is the document Class, called Main. There is also a Navigation class. In the Navigation class, I position the location of main buttons and sub menu buttons for the menu. I want to position the buttons in the Navigation class relative to the stage. Currently, they are just fixed at certain positions (like 20); To do this, I have read that because this is not happening in the document class.
I must add an event listener to the constructor that listens for the added to stage event. I am not sure how to do this, as when I try and add an event listener for added to stage in the Navigation class nothing happens, (or all menu items diaspear). How to position movie clips relative to the stage (i.e. stage.stageWidth - 50) from a class that is not document class? How to do so in the document class, too.
I've got 3 coloured balls and 3 zones which any of the balls can be dropped in. The idea is that once a ball is placed in a zone, it stays in that zone and no other ball can be added to that zone until the current ball is removed.
I've got to a point so that any ball can be placed in any zone. However, the problem is there seems to be some hierarchy with regards to the balls. ball0_mc seems to be the chief ball, and will replace any of the other two balls if there placed in a zone, instead of snapping back to it's original position because the zone is full. ball0_mc also can't be replaced by any of the other balls if its placed in a zone. ball1_mc is the next one down the line and when in a zone, can be replaced by ball0_mc if its dragged over it, but it cannot be replaced by the third and final ball2_mc. ball2_mc seems to be the runt of the pack and can be replaced by either of the two other balls when its in a zone and cannot replace any of the other balls when they're in a zone.
Hope you're still with me?! So, what I'd like to do is make it so each ball is equal, so when any ball is placed in a zone, it can't be replaced with another ball until the current ball has been removed...and they live happily ever after in the land of ballshire.
Here's my code. I've created two classes, one linked to the movie clip balls called 'Ball', and another called 'EgoGame' which is being used as the document class for the main .fla file.
I have a library symbol, exported for Action-Script and to Frame1. Now in the document Class, i write
public class Test { public function Test():void {
[Code]....
Now the code works fine but when i write my own (sealed/fixed) Box Class that surely Extends MOVIE-CLIP, statement-2 gives error , i know the Box Class is not dynamic but the Movie-Clip is Dynamic. Now what i understand that Movie-Clip Class being dynamic becomes fixed/sealed when it is extended by any Fixed/sealed Class???
can you declare multiple classes and then register each movieclip from the library to a different class? It isnt working for me.I created two different classes and created two entire different movieClips and registered each movie clips to a different class.However, I can only use on movieClip at a time, when I use the duplicateMovieClip... command to create copies of the movieclip, i find that only those movieclips, whose class i declared first, appear on stage.
The examples I'll use don't do anything - they're classes without ANY members - no variables, methods, anything.
Let's say I extends Sprite and call it MySprite.
I save it in test.core
[code]...
Now I create another custom class called MyWindow that extends MySprite.
I save it in test.windows
[code]...
Then I create another class that extends MyWindows (the example I'll use is a document class - but that doesn't matter - I've tested using an instance too).
[code]...
Notice that I'm not even trying to instantiate the helper classes - just having them there throws the error.
If there is only a single helper class, everything runs fine.
Also note that - as far as I can tell - this only happens when extending one class from another package, then extending that class with more than one helper object.I'm pretty sure there's no namespace bumps or typographical errors, as this is a very pared-down version of the original application.
EDIT: seems the problem exists even without the crossing packages - even extending MySprite in the document class with multiple internal classes generates this error.
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?
I have an actionscript project which uses visual symbols from an SWC. I have a CheckoutButton which has the following class associated with it (compiled into the SWC in Flash CS3).
I'm trying to import a class from a class that is located in another folder. How do you move up a directory? Using./ or ../ doesn't seem to work. Essentially I want to access a TweenLite Class but not from the document class. My class is at com/myName and the class I want to access is at com/TweenLite. import ../TweenLite doesn't work... I realize I could just copy and paste the entire Tweenlite folder again, but there's got to be a less duplicative way of doing this..
inheritance and building classes from other classes.
I have 3 classes: gfxRoomText - changeable colour gfxRomInter - changeable colour - interactive gfxRoomImg - interactive - only image / no colour
The first two incorporate the same text field and functions to change colour. The second and third incorporate another class to interactive with. What is the best way of creating these classes using inheritance and how?