Flash :: ActionScript-3 Cannot Have Multiple Constructors
Aug 24, 2010I have [code]...
So, ActionScript-3 cannot have multiple constructors?
I have [code]...
So, ActionScript-3 cannot have multiple constructors?
currently i am setting up a class to handle a movie clip, tweening from one spot to another. I want to be able create an instance of this class, pass in 2 arrays (an array of x pos's, and an array of y pos's), and also pass in the mc to be attached and thecontainer to attach it to.I currently have this
Code:
import mx.transitions.Tween;
import mx.transitions.easing.*;
[code]......
I've been rewriting a code from AS3, to AS2. I got stuck when i tried to make a constructor have default parameters. The default parameters are determined by variables.In AS3, it would simply be:
function myFunction(param1:int = CONST_INT)
{
}
where CONST_INT is a constant.
It's not clear to me, where I have to define Classes and Constructor methods. In AS2 it was possible, to define a class "light" by defining a constructor method. In AS3, I read, a class can only be defined in an external AS-file. Is it still possible to use the constructor method inside the Flash-File or do I have to source out all my constructor methods and implement them into real classes into an external AS-File?
View 4 RepliesWhy doesn't the Flex framework's mxml language support a constructor for components or accept constructor arguments for components? It's as far as I know not possible to declare an ActionScript object in mxml if it takes constructor arguments. I'm curious about the reason. Is it a design choice by Adobe or related to how declarative languages work? For example, why not allow:
<myNameSpace:MyComponent constructor="{argArray}"/>
Not sure if this is possible but it has been annoying me for the least few days. Basically im aware i can do this to instantiate a class
[Code]...
However, if i pass in a string for the SOME_VARIABLE , is there anyway i can get the above to work? If i pass a string in i either get no error, or the fact that the datatype is incorrect. Im using an xml file to build up an interface. but the value of SOME_VARIABLE is passed in from the xml file as a string. I want to be able to detrmine which class to create from this string.
Is my understanding that there are no Abstract classes and you can't override or overload constructors of derived classes correct? Abstract classes aren't important for me but if it's possible I'd like to know how. But is there a way to overload default constructors and I'm just doing something wrong? Can we only override methods or can we overload them also.For a simple game I'm making, I'm not using FlexBuilder and don't want to for this project for specific reasons, so I'm using Flash and instead of using sprites and bitmaps I want to draw shapes in Flash and covert them into MovieClip symbols which I "link" for export as AS to use in my code. I want to make it a little modular so I can just change certain aspects of the code for different approaches.If I create a class Actor which extends MovieClip the default constructor has to be Actor() with no arguments. But I'd like my class to be able to have arguments like initial x and y coordinates. I know you can just create methods to initialize each part but I'd like to try and have a default constructor to do so.
In Flash I notice that if you derive a written class or built in class it requires the standard default constructor, "which I may be wrong about and I hope I am and someone could show me what I'm doing wrong", I found if you derive a class based on a symbol you linked for export as AS I can create a new constructor with whatever argument(s) I want (so this is why I'm making this post,if I can do this couldn't there be a way to override
constructors?).
1) So I create a base class called Actor which extends MovieClip save it as Actor.as and default constructor of Actor() add whatever properties I want.
2) Then I create an object in my library, let's call it mcShip, then I link that symbol for export as ActionScript and have it's base class as Actor and name the class ShipMC.
3) I then create a new .as file and call this one ShipActor.as, this class ShipActor extends ShipMC and then I create a default constructor ShipActor(gs:GameScreen, xA:Number,
yA:Number) and this works fine (also I create a method in Actor class called ActorSuper and call it from ShipActor with passed in arguments, since I don't know of a way to overload the parent class' constructor)
If I were to just have my mcShip with a base class of flash.display.MovieClip and I try to create ShipActor with the constructor above it says missing default constructor. The above 3 steps is the only way I can get it to work for now. Is there a way to overload the constructor? If not are there any other work arounds?
I have a problem when making flash applications with more than one frame that has symbols placed on it in that I can't declare all of the event listeners for the objects at the same time and I have found that even if I put them all on the first frame, add the event listeners, then click through to the next frame then the buttons won't work on that frame.
Does anyone have any idea how I could solve this? I did consider myself a fairly competent AS3 programmer until I realised I had no idea how to handle this sort of thing. Solved: I initialised the clips from my external class and then addChild'd and removeChild'd them as I needed to and placed their x and y on addChilding.
i use loadmovie() to load youtube videos inside my flash website but when i load another video the old one doesn't stop, so i tried unloadmovie to destroy it but it seems that i did a mistake in my code
This is how the code looks to stop the old one an load the new:
vloader.unloadMovie();
vloader.loadMovie("http://www.youtube.com/v/Alw5hs0chj0&hl=fr&fs=1hJ-mPcGtC");
How to do that? use other objects or classes, i only want to edit that code.
Note: I have an empty MOVIE CLIP called "vloader" where i load the video player.
[Code].....
I have a group of 16 images that I would like to load 1 of each into each movieclip. I want image1 to be inside of visual1, image 2 inside of visual2, and so on. the images are named like, 1960s_(1).png where the 1960 (year) part is coming from the rangeNum variable. The above gives me this error: 1061: Call to a possibly undefined method addChild through a reference with static type int.
I currently have an over, out and click event for 8 different objects. The over and out events are identical for each (tween expands object and then shrinks it back for the out state).I have previously asked for an easy way to declare those events, and now I was looking for an easier way to handle them.
Here's my code:
//-----------GARAGE
function growGarage(e:MouseEvent):void{
scaleTweenX = new Tween(map_garage, "scaleX", Elastic.easeOut, 0.648, 1, 0.5, true);
[code]....
I've tried using a single function and then using "this" as the object of the tween but that expanded the entire stage.
i have an if statement, an object will go to a new frame if multiple buttons are pressed
PHP Code:[code].....
now i want it so that if one condition is met the mc will goto frame 2, if 2 conditions are met, frame 3 and if 3 conditions are met, frame 4.i know i could do this with a lot of if statements but i have a lot of movie clips to use this code on, so is there any way to write an if statement that will trigger different options if multiple conditions are met?
This is more of a database design issue but almost everybody here uses database integration with their apps so I feel it is important. I am integrating AS3 + mysql + php and need to clear up the database design for multiple students results in various activities. Developing an online e-learning course with a "dashboard" or teacher control panel with all kids results in each activity. I have read the database design rules by Codd etc... understand the need for parent and child tables so information is relational and not duplicated etc... BUT I am not sure how to design the results part. Various students do various lessons with 10 activities which each give a mark out of ten. The table would be updating every few seconds as 10,000 users would be online at the same time
1. Would I create a results table with all the students results going in the same table ie: Tom would be the first row
[Code]....
I'm Trying to develop a small game where the user chooses from a range of boxes of the left of screen and can drag 3 of them separatley to 3 holding boxes on ther right. each box can be dragged to any location and the order is not important. Once the 3 holding boxes are all full I want a new button to appear. I completed a tutorial and I've got one box working perfectly but no matter what i try I can't get it working with multiple boxes and locations. Below is a list of the instance names of the movie clips plus my actionscript. I've attached a link to the flash file.
[URL]
INSTANCE NAMES
box 1 = "circle_mc"
box 2 = "circle_mc2"
both the grey boxes are called = "targetCircle"
[Code].....
I want a chart that has several separate series running in rows across. They are largely separate charts and should not overlap, but all share the same horizontal datetimeaxis. They don't share the same y-axis, however and that's where I'm getting stuck.I have tried having a linechart series and then a plotchart series, but it will only allow a single <mx:series> per chart without having them inside the same series which as far as I can tell will place the charts on top of each other in the z-axis. I can stack them and have them completely separate charts, but it was proving to be somewhat irritating having them align correctly.
Is there any reasonable way of combining multiple charts into one like this? Basically having rows in a table where each row is a different chart but the columns are consistent. or am I going to be best served just by stacking separate ones? an illustration of what i'm going for is here: http:[url]........
im creating a small drag and drop game in AS3-
I have 4 objects and 4 targets,
I want to be able to drag any of the 4 objects onto any of the targets, right now all I can manage is to allow each object drop onto one specific target only.
I thought by calling all my target names by the same instance name eg target_mc that would work but only one target will ever work.
i have been building a library that has thumbnails which you click to view the full image. i have built the application it works but i want to change the way the image on the actual thumbnail loads using code instead of manually adding the value to the url loader component.
var myX;var instanceN:String;trace(instanceN);var currentLoad:uint = 0;// current loader and image loadingvar thumbnailURL:String;//Thumbnail URLvar thumbReq:URLRequest;// Thumbnail url requestfor(var k:uint = 0;k < iL_btn.length; k++)[code].....
the loop runs fine without the last line of code which i've commented out.the make up of these thumbnails are a uiLoader component which are each inside there own movieClip.what i wanted this to do was every time the loop runs it currentLoad adds 1 to its value then that value is subbed into instanceN:String and thumbnailURL address that bit works the trace statements read correctly.but my issue is using the instanceN value as the instance name path which then loads the current thumbnailURL value which is the URL address for the thumbnail picture.when i try to load the url address using the commented out code above i got the error .TypeError: Error #1010: A term is undefined and has no properties.the trace statements correct values below
the first value is the currentLoad value.
the second value is the instance name path.
the third is is the URL address for the thumbnail.[code].....
I have a flash movie with 3 buttons I am trying to link relativley to pages within my site, I have one working fine but can't get the others to link and when I try it makes the one that is working, work no more..
Below's the code I am using for the one that is working;
import flash.events.MouseEvent;var getIndex:URLRequest = new URLRequest("../index.html");
//---Enter Button---\
[Code]....
Ok so here is my XML slideshow Actionscript:
ActionScript Code:
stop();
var xmlRequest:URLRequest= new URLRequest("graphicImages.xml");
var xmlLoader:URLLoader = new URLLoader(xmlRequest);
[Code]....
So I figured that the coding of separate scenes would work independently of one another, but I guess I was dead wrong, because when I apply this to a different scene and change the XML path for a different set of images, I get all sorts of conflict errors when I test the entire movie. I have my flash film set up so that each link send the user to a different scene, which plays a unique intro for each, and then the slideshow appears on screen and the viewer can navigate the images.
Is there a work around for this? Or am I going to have to break my flash movie into separate movies? Or should I just add a suffix to all my vars and functions so that they are unique for each scene?
In one of our project we are using flex for front end, blazeds/java in the backend. Its an existing code where services are prewritten. I have to make calls to 3 services in the backend (basically 3 remote objects) and get their result and store the result in an object and show the data of this object in a view.
Now in front end we are using Flex and Parsley Framework. I was thinking of the following approaches.
1) Making commands for each service call and storing the result in a shared object (model) and then displaying this model in the view. In this approach the problem is some services are needed in some other web pages, but they donot need the same model. How should i handle this scenario ? Should i make a asynchronous remote call and fetch the result and then again dispatch and event with the event object storing the result.
2) Making a service call , wait for the result then make another call and wait for the result and then make other call, not sure if this is the right way ?
Here's the setup:
-I have a music score that will be streamed in via actionscript
-I also have multiple short sounds (SFX) in multiple nested MCs
-these SFX sounds are customized using the ide edit interface, so it would be a pain to use actionscript to play each sound
What I need: To have 1 mute button for the music, and 1 mute button for the SFX, both on the root timeline.[code]...
I have 50 images that need to be on stage, which will be embedded into 50 different movie clips. I named the movie clips image1-image50 and the images are in an external folder named 1-50. Every freaking article or tutorial I have found clearly explains how to upload one image, or just one at a time. I can do that, and spend 2 days renaming all the functions, but I do not want to do that. Is there a better way to just load all 50 images, place them accordingly?
View 3 RepliesI have a map with a list of items to the side. I want the list to work as buttons and highlight both the button and the particular image on the map... and when you click you link to a certain location.I also want to be able to MouseOver the map, have both the image on the map and the corresponding 'button' from the list highlight - but when you click, you go to a different location than if you would have clicked from the list.I have it set up - but something is conflicting. Here is how I have my code set:
Code:
BUTTON_ONE.onEnterFrame = function(){
if (this.hitTest(_root._xmouse, _root._ymouse, true)) {
this.nextFrame();[code].......
I am creating a stand alone DVD to be used with Flash player. I am wanting to add different videos that play with different buttons. The following is the code I have for the video to play when the corresponding button is clicked..... My problem is how do I get that video to "leave" and stop playing when another button is pushed to play a different video.
Educators_btn.addEventListener(MouseEvent.CLICK,clickEducators);
function clickEducators(evtObj:MouseEvent)
{
gotoAndStop("OE")
[code]....
In version before flash CS5, we could copy multiple objects from multiple layer by just click and drag + ALT, that was really usefull and it becames vital for me. Now in the CS5... the click and drag + ALT on multiple objects from multiple layer is copying all objects to only one layer !
View 3 RepliesI have 260 images that I need to place on different frame. Instead of dragging them one by one the image on the stage, is there a way to drop all of them in one shot but each images is on a different frame?
View 3 RepliesI'm making a Multiple Drag and Drop in Multiple Targets educational puzzle for 6-7 y/o kids that tries to teach them a bit about which plants grow in which environments in the country. So, I have a map of Mexico divided in 3 diferent zones: desert, forest and tropic, and 6 different plants (of 3 different groups: cacti, pines and tropical flowers, 2 of each) scattered across the stage and around the map. The goal is for the kids to drop the plants in the right zone and then to click a "verify" button that triggers a validation process. Each of the plant's movie clip has 2 frames with a stop(); action on each: the plant graphic spans across both frames and the second frame has a red error sign over the graphic that indicates an error has occured (if that's the case). Then the validation process triggered by the "verify" button is supposed to move the playhead of each wrongly placed plant move clip to the second frame to show which plants are misplaced and move the main timeline's playhead to a frame that contains a "Please try again" text and a "Restart Puzzle" button. If all the answers are right, an animation plays saying that it was VERY WELL DONE! .
I searched the internet for some tutorials and found a file that is pretty close to what I need. I've tried to adapt the code to my puzzle but have failed miserably. The file is here if you want to check it out (scroll to the bottom of the page, it's called Soldier.fla). I'm not pasting the code here because it's VERY long, but I will if required. If you want me to upload the files somewhere else and link them here, I will. If you need me to send them to you I'll be glad.
There is a serious issue I am facing with flash builder charts.
When I load the chart the first time I get this -
But if I refresh the page immediately in the same browser, I get this -
The second one is the expected one. This issue just repeats if I close the browser window and open it in a new browser window. For explaining properly, I am attaching the source code here -
[Code]...
I have this code to use to pause animations in different areas of a .fla, for each pause I have been copying this and changing the "var timelinePause" and other items as shown after the original code, is repeating this code for each pause just junk code? is there something else from this that I can use to pause?
[Code]...
I have 24 movie clips on the stage: my_menu.image_holder_mc1 thru my_menu.image_holder_mc24. I want to load an image in each one. How do I identify the holder which to add a child.
The Code I have so far is....
Code:
for (var i:Number=1; i<=24;i++){
var myLoader:Loader = new Loader();
myLoader.name = "image_"+i;
[Code].....