AS3 :: Flash - Listening For Multiple Events On Multiple Objects?
Sep 20, 2010
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 a menu movieclip and an externally loaded swf on my main stage. The menu mc needs to control the externally loaded swf. For example the swf plays and pauses, then when any of the menu buttons are clicked the swf needs to play thru and be removed. currently I am dispatching an event for each button clicked with a switch statement. In the main timeline I need to listen for each of theses events and based on what button is clicked proceed to the correct content frame. How can I listen for different events and run one function that based on which event is registered perform a task with a switch or if statement?
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.
In short: I need an event listener in a custom component so all its instances (without editing them) react at the same time, fired by a dispatched event in its parent container. In detail: I have a custom component with Tab navigator. (The tabs are intended to show different preferences for different Languages.) I have a button bar with buttons for all the languages. There are a lot of instances of the custom component.
I want to click in a button of the languages bar and get ALL the instances switched to the same tab (the custom component contains the logic to change the tab). I can do it by adding the event listener for EACH INSTANCE of the custom component, so it calls an internal function that changes the tab. But it seems to be very coupled, isn't it? I wonder if it can be done in the master CLASS of the component, so it listen for events in its parent container, whichever it is. In my mind this code shoud work, but it doesn't (obviously ill'use a custom event to pass the new language value): this.parent.addEventListener("lang_change", this.change_tab); This way I can just drop an instance of the component, and see it working for itself.
I have created an AIR application that makes use of Flash' build in capability of taking multi touch gestures (TransformGestureEvent.GESTURE_ZOOM & TransformGestureEvent.GESTURE_ROTATE)
It works fine on my Mac using the computers trackpad. It also works fine on a Windows 7 machine with a touchscreen attached.
But I can only modify one object at a time. Is that a limitation in Flash or is it possible to modify more objects at the same time and that way possible to make a multi-user multi-touch application?
I want to have a main logic class that listens for dispatched events from an assortment of other classes.
for instance: i have a parent Map class that contains X instances of a State class. When the user clicks on a State class, i want to dispatch an event CLICKED along with the name of the state.
now this Logic class will see this new event and process the name of the state and perform some other logic stuff. no matter what i try i can only get it to work where the State class listens for its own Dispatched event. Which to me seems a waste, i could have just manually called the function.
I have read so many tutorials online about custom events/ dispatching and they are being used in a basic one class example.
I want each item in a list to change to a totally unique view file. Instead of 10 items in a list all going to 1 new view but with different info being generated I want 10 different view, 1 per item in the list. I can't find any examples of how to do this and I have been tryingo to make it for for a while. This is for a mobile app.
Imagine that you have a lots and lots of the same library item on stage - movieclips - and you want each of them to be clickable. Normally, you would iterate through each of these and register an event listener on MouseEvent.CLICK for each one. It seems to me that if there are large quantities of these items this could be quite inefficient - on memory mostly - to have all these event listeners. I'm trying to figure out if there's a more "central" way to do this, where your main document class just registers once with some kind of central dispatcher using a custom event? Any time ANY of the movieclips are clicked, that fires this custom event and you can just query the event to figure out which clip was clicked.
Each movieclip that is clickable extends an AS class through its linkage, and when clicked, dispatches a custom event. If I'm using the IDE to put a lot of objects on stage, and these objects have linkages to their own custom classes, I don't want to ALSO have to go into the main document class and have it iterate through these objects to register event listeners on each one. I don't really want the document class to have that much knowledge about these objects (loose coupling). I'd rather the objects "communicate" through this mediator and not really worry about knowing more about each other than what you can access through the custom event.
I have made a jigsaw puzzle game, that can be scaled up to have lots of pieces. Now I want to implement it so it can be played by more than one person at a time on a large multi-touch screen. I'm not sure how is best to proceed.
Ive had a look at some development kits and some tutorials and they seem to go into too many gestures etc. I literally only need the capability to move more than one piece at a time. So is it possible for flash to simply deal with this as multiple mouse down events rather than going into multi-touch gestures etc. Or do I need to do it another way?
I'm planning to add a page to my site that would have sample music from a variety of artists. There would be several sentances about the musician, then a free Flash mp3 player I'm using. I'm planning at least a dozen of these on the page. I didn't anticipate any problems, but a page where I had done something similar suddenly stopped working. Nothing I've tried will fix it. I don't want to go ahead until I find out if there are details I need to know about having multiple Flash objects on a page. Here's a link to the page that broke ... supposed to be a second instance of the player below the paragraph that talks about Ramblin' Jack Elliott ... instead there's just space ...
I have to create a game in flash for school. I'm kind of stuck, however. I know an approach that might work, but I'm wondering if there isn't a way to do it all-in-one. Here goes.
I have a start screen with 4 buttons. These buttons all link to different levels, and they all have a different image. Let's call them btn1 btn2, .. btn4. I made a class called 'GameButton':
[Code]...
The other approach I see is to create four different button classes and link each of them to a different button, but then I'd have to create for files for something really simple, which seems like a lot of trouble for well.. just adding a button.
EDIT: I just realised this might be a stupid question. However, isn't there a way to like make a constructor for an empty button, then maybe add a symbol to it?
I'm working on a game right now where I'm going to have paths dynamically built by the user for multiple AI objects to "walk" along. I'll be detecting/redrawing the path only on user input but I'm still debating over the fastest possible method to update the movement of many AI objects "walking" along/up/down the given path. Think for example of pac man, but the level is dynamic. Right now I'm leaning toward building the enemies in a linked list of final classes and looping through the linked list calling a function in each of the AI objects to plot the next move along the path.
I'm trying to create a sort of tree diagram such that, if you click on one of the circles, its child circles spread outward with some degree of randomness from the original circle, connected by lines. I have this working, but now what I want to do is make sure that none of the circles collide with each other and none of the lines criss cross. You can see the screenshot for what is currently happening. My code is below. How do I change this code so that it checks for collisions and avoids them? I've read up on flash's hitTestObject command, but that only works in the context one object to another. I want to test for one object contacting any display object.
import com.greensock.TweenMax; var sw = stage.stageWidth; var sh = stage.stageHeight;
I would like to know if I can get an error or some other problems when I try to tween several objects like this and using an onComplete-property:[code]:What I want to do is fade out several objects at once and when they finished a special function gets called. Are there other possibilities when using tweenlite available or do I have to use timelinelite?
I tried something interesting recently. I had code effecting an object with the instance name : object_mc.Now I added another object and gave it the same instance name.The result was, that the code only effected the most recent added object (no error).Is there a way in flash to have multiple objects with the same instance name all being affected by one piece of code?
I'm attempting to create a graphical representation of the microphone activity in flash for a conference.
I got a movieclip called eqNotch that's just a rectangle and its linkage name is EqNotch.I also have a movieclip where I am writing my as3 on the first frame, its called dynamicBar and linkage name is DynamicBar.
I've successfully written the code for the dynamicBar to create one column of eqNotches and the number of rows is dependent on mic activity.[code]...
I am creating a program that is effectively an sprite creator. I'm very new to AS3, but I know JQuery, JS, PHP, etc. After going through multiple steps of selecting pieces to customize a character, you are supposed to be able to download the final product using fileReference(). Everything works, and I can download the image in the end, but the problem is that I cannot capture all of several movieclips on the stage, I can only capture one. Maybe this will help clarify:
[Code]...
Could it be that each of the movieclips I'm adding to the sprite have children of their own?
how flash handles multiple simultaneous objects being loaded? If I set two images loading into two empty movie clips in two consecutive lines of code, do they both load simultaneously or does the one that was called first load and then the second image load when the first has finished?
If you wanted to create a client-side Flash-based sound editor that lets you load more than 1 sound to an interface that allows you to manipulate the individual positions of the sounds, and mix/play them in real time, how would you accomplish this?
I'm looking to create a simple version that can mix 2 mp3s, allowing the user to adjust the positions of each. Sort of a dumbed down version of Aviary's Myna audio editor.
At the end of the mixing, I would also like our server to mix the 2 mp3 files with the proper positioning into 1 mp3 file...
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 have created a map (1 frame movie) at Flash MX 2004, that each area is a movieclip. Each movieclip has a unique name. I am trying to dynamically attach events to each movieclip, by reading their corresponding names from an XML file, with the following code:
Code: areas_xml = new XML(); areas_xml.onLoad = initAreaBtns; areas_xml.load("map_data.xml");
[Code]....
As you can see I am trying to create a roll over effect for each area/movieclip. The problem is that only the last movieclip is affected.
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:
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 have a flash file, and I'm making just a simple "ad" with right and left buttons..When you click the right/left arrows I want it to scroll and it basically will alternate between 3 different photos/ad's and thenloop.. I have set up motion tweens on my time lines so when you click it will switch pictures/ads and this is the action script I have and it is still not working? is this correct? what am I doing wrong, maybe something is not labeled?This is just for one button the "right" button It just scrolls through all the motion tweens.. I tired to put a stop(); on the layer the photos are on ndit stops but then when I try and click one of the buttons it will not scroll...
stop(); var buttonClicked:Boolean = false; right_btn_btn.addEventListener(MouseEvent.CLICK,
I have a flash file, and I'm making just a simple "ad" with right and left buttons..When you click the right/left arrows I want it to scroll and it basically will alternate between 3 different photos/ad's and thenloop.. I have set up motion tweens on my time lines so when you click it will switch pictures/ads... I cannot seem to get the action script rightfor this
I have a DisplayObject at the bottom, that's clickable and has a hover state, underneath a TextField. The big problem is, I need all MouseEvents to go to *both* of them, not just the TextField, not just the DisplayObject. Reason being is I have text that require tooltips to be attached to the mouse which are on top of those DisplayObjects underneath.
You can see the affect of the above example here, http:[url].... Now, what I want to force happen is when you mouse over any of the text area, the text to pick up that event, as well as any other mouse event,as well as the DisplayObject underneath. To put it one way, I want to have my cake, and eat it too. I want the text to act the way it is in this example, but also to have it work as if I had mouseEnabled equal to false on the text.
I have a DisplayObject at the bottom, that's clickable and has a hover state, underneath a TextField. The big problem is, I need all MouseEvents to go to both of them, not just the TextField, not just the DisplayObject. Reason being is I have text that require tooltips to be attached to the mouse which are on top of those DisplayObjects underneath.[code]Now, what I want to force happen is when you mouse over any of the text area, the text to pick up that event, as well as any other mouse event, as well as the DisplayObject underneath. To put it one way, I want to have my cake, and eat it too. I want the text to act the way it is in this example, but also to have it work as if I had mouseEnabled equal to false on the text.I asked a similar question previously about Bitmaps, albeit in different circumstances and eventually went with a parent.getObjectsUnderPoint solution, which was less than ideal. If that's my only option here... I'll begrudgingly go that way again, but I'd love to find a better solution and really do think there must be, insofar as I could just clone the event down the line to the next child at that point.