ActionScript :: Adding Multiple Instances Of The Same Swf File To The Stage
Jun 6, 2011
I'm creating a game in ActionScript 3.0 using the FlashPunk game engine and the FlashDevelop SDK. I've created my own MovieClip class that takes a preloaded movie clip file.
public function MyMovieClip(file:MovieClip, posX:int, posY:int, frameRate:int)
{
movieClip = file;
[Code]....
The problem that I'm having is that when I have multiple instances of the MyMovieClip class using the same swf file, only the last instance is rendered and is updated for each instance of the class that I have.(e.g 3 instances of MyMovieClip, the last instance is updates at 3 times the speed.)
I understand how to import a swf and add it to the stage. Is it possible (using code) to add the one imported swf to the stage multiple times, each with different instance names? So the same as adding a library item to the stage multiple times, each time with a different instance name, with code, but using an imported swf?
add multiple instances of an object to the stage at different but not random points.
For example - I have a box that is linked to a class file. In the class file I have an "ADDED_TO_STAGE" event listener. The function that is called places the box at a certain position on the stage say.... x=100, y= 200.
In the document class I create an instance of it like so -
_box:box = new box(); addChild(_box);
Now what I want is to create multiple instances of box on the stage every 5 seconds. But I don't want them all to spawn at (100,200) on the stage. But here's the catch, I don't want them to be random spawns either.
for ex- I want the first instance of box to spawn on (100,200), then 5 seconds later, the second instance to spawn at (200, 800), the third at (100, 500) and so on.
Would it be possible for me to create objects on the stage to serve as reference points for where i want the instances to spawn instead of writing the exact co-ordinates?
what I want is for the text area box to be added the same amount of times as there are nodes in my xml file (currently 5)So, I'm trying to add 5 textboxes to the stage.Whenever my loop fires this
Code: //make titles var songTitle:TextField = new TextField;
I have this library with more than 80 objects that i want to bind to my keyboard. My idea is use the "keyCode" to call the object to the stage, constructing the object's name inside a variable.This is the code that I'm trying to use, but the bold text line always give me an error (constructor, syntax and others) depending how i write that line.[code]I'm not very experienced with AS3 so i don't know if this is the right approach to solve my problem. Any help is well received.
var sp:Sprite = new Sprite(); sp.graphics.beginFill(0xFF88CC); sp.graphics.drawCircle(0, 0, 50);
[Code].....
however, I realize even tho im looping that addChild method, its still adding sp, so do I add a new naming convention in the loop, or should I be adding these instances to another display object.... this seems like such a simple thing to do yet I cant figure it out, I also want to randomize the x and y, but this first seems to be the issue I need to address.
After a little break in AS3 I'm back... and facing a problem. For a school project I'm trying to make a side scroller game in which the player automatically moves right and has to avoid branches.Basically, depending on how well you do your speed (var) gets updated. After certain 'distance' (fake of course, as the player stays centered) I would like a n instance of Branch_MC to appear. Also, when that instance's x property reaches -20 I would like it removed.I'd need approximately 135 branches so creating variables isn't really an option.
I have a movieclip that gave a class name and set everything to export into action script. Now, I would like to put multiple instances of that same movieclip on the stage. I would also like to be able to keep track of them individually. Would I need to do something like create a for loop and have it run however many times i want that movieclip onstage? If I did that, how would I be able to manage them? Would I also give them names in the for loop and have a var that goes ++ every time it loops, then attach that var to the end of the name I give it.
I'd like to create a chain of objects (either movie clips or sprites) that move left to right across the stage continuously. I know I can create two movie clips that contain a series of several 'chain links' and are each a little wider than the stage width. Then I can move both clips across the stage and when the first movie clip is completely off stage reset its x position back to 0. Likewise, when the second clip is completely off the stage on the right, reset it's position off the stage to the left.
This works and gives me the basic effect that I want by creating this uninterrupted moving chain, but it doesn't seem like its the most efficient way to achieve this. What I thought would be more efficient would be to create each link in the chain separately from an individual mc in my library by programmatically adding new instances to the stage.So, I created a single chain link mc and set its export linkage to 'Link' and left the base class to flash.display.MovieClip. Next, I placed the following snippet of the code on the first frame of my movie:
i have 4 flvplayback components on stage loading 4 different videos. How do i sync them?
I have ensured they are all fully buffered i.e fully loaded and then play them all at once. But they keep getting out of sync. I.e i am checking the sync with the playheadtime. I had written an timer/enterframe event to check for out of sync at and pause and seek times to the fastest playing player . But this happens for every second. i keep gettting a very jittery video with breaking sounds due to the constant pause /seek / play cycle.
How can we sync multiple flvplayback videos properly.
I'm having issues with something wanted to accomplish involving qued amations that i can reuse in various situations throughout an application...
Basically, what I'm trying to get is a prototype or function that will allows for multiple instances on that stage that start at a specific x/y and size, animate to a specific x/y size and end at a specific x/y and size... the x/y and size information is defined for each of the instances in the function.
A good place for this would be with buttons... check the sloppy diagram attached.
I have an arbitrary number of object instances on the stage. At any one given time the number of objects may be between 10 and 50. Each object instance can move, but the movement is gradual, the current coordinates are not predictable and at any given moment I may need to retrieve the coordinates of a specific object instance. Is there a common best-practice method to use in this case to track object instance coordinates? I can think of two approaches:
I write a function within the object class that, upon arbitrary event execution, is called on an object instance and returns that object instances coordinates. Within the object class I declare global static variables that represent x and y values and, upon arbitrary event execution, the variables are updated with the latest values for that object instance.
I'm using this AS to load multiple external images into mc instances on a stage, using different loaders.[code] The external images always load from the upper left corner down, how can you make the image load from the center of the instance on stage?I found this code below and doubt it will work for me since I have 5 mc instances on different parts of the stage, so the stage wouldnt be a good reference point.[code]
private var currentItem:uint; for(var i:uint = 0;i<10;i+){ addChild(arr[currentItem]);
[Code]....
So the problem is that the array only contains 6 items. So when it comes to the 6th item the currentItem resets and the next 4 items that are getting added are the 4 first from the array again. Now when i trace the items, the last 4 trace "null". how can i add items from the array multiple times without losing its properties etc?
I have a series of images I'm adding to stage from the library. I need them in separate movie clips for tweening. If I create a new layer... add a shape to the layer... mask the layer... finally, add a layer below that layer (with nothing on it) then all of the images I've added from the library are masked. No matter what I try with code however, I can only get one image to be masked. must you create a new mask for each image you would like to mask? I thought maybe if I could do it all in one go on a layer, there must be some code that allows one shape/mc/object to mask several clips.
I want to move my multiple externally loaded images a little each time they are added to the stage along the x axis via the Loader class. It all works - But HOW do I access the added graphic synatically, so i can change its x pos?! Ive tried picLoader.x ... but that's the Loader - NOT the image...??
Code: private function setPics():void { for(var i:int = 0; i < xItems; i++)
i've been all afternoon trying to figure out a solution to my problem, and I can't seem to find it, or cannot implement it. Let me lay it out for you: I have an actionscript file linked to a movieclip. (movieclip:skate class linked: generic_skate).I have it set up that way so I can create an array of skates easily (i'm using a for loop to create them), and each skate has its own attributes (name, description, price and the image that is supposed to go on the deck)In the stage, i have three text boxes, one for the price, other for the name, and another one for the description.In the generic_skate class, I'm handling all the mouse events (in this case mouseOver and mouseOut.
What i want to accomplish is: when the user hovers over a skate, the info shows up in the text fields and when he hovers out, the info goes away. My problem: Since I'm doing all the mouse interaction in the class file, my guess is that I have to access the stage to get to the text boxes that are placed there to change its info or somehow create a "middle" man to do all the handling.
I am trying to make a "Achtung! die kurve" - like game in Actionscript 3.0. So far I've done the movement of one of the 'worms', and it works alright. I wanna divide it into different class files, but I can't seem to get it to work. I have a .fla file and 4 .as files. So far I only have code in two of these. When I put all my code directly into the fla file, it works perfectly fine, but when I put it into my player class, it won't 'add the child' to the stage. Here is my player .as file: [URL].
The reason why I commented the addChild, is because I wanna do this in my mainFile.as. This is from the main file: [URL]. I'm not quite sure how to call it in the main file, so I'm guessing that this would be the issue. All the files are named and placed correctly in the same folder, and flash says that each of my .as files are targeting the .fla file, so this doesn't seem to be the issue. How I can change the speed of my sprite.
Does flash have an equivalent to Flex'sApplication.application.[insert application method or propertyI want to get access from an as3 class file to the mainstage. a call to this.root from the stage to the class will notwork because I need the root object stage to execute an addChild
im trying to create a separate class so i can create a custom mouse. But i need to make it so that every time the mouse moves then something happens. as in it dissapers and after 5 seconds the timer resets. I have the code and it works in my .fla file, but im not sure its possible to put it in a class file and have it be the class of the .fla.
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?
I've attached the FLA.I'm trying to make a game where the guy kills rats that appear randomly as the scenery moves down, however every time I shoot the rat and remove the rat child, it throws an error that my actionscript is pointing to an inexistent rat. Hence my problem... is there a way to add many instances of the same class with AS3 at random intervals and remove them when it's shot with the bullet???
I am trying to add a single MovieClip in two different spots on my stage. I've added the first by using addChild but I have no idea about how I would also add the second. Basically, it's a button that the user interacts with using a keypress, but in two different spots.
Let's say I have 5 instances of a movie clip on the stage, which are going to be manipulated by Actionscript. Is there a way I can add attributes/parameters/variables to each one, inside flash? Like "hitpoints" and "attack," for example. If I could set all those values inside the Flash IDE, for later access in the game code, it would make my workflow a lot cleaner. (I'm making game levels)
I have a MC called Enemy. It contains a monster that pops out at a random time (a timer with animation inside the MC). It stays on the stage for a few seconds and then hides again. If it hides, I want it to be removed and another enemy be added instead. All the monsters are instances of Enemy MC that are inside enemies[] array.[code]