ActionScript 3.0 :: Apply Hittest Object Between Two Array?
Dec 5, 2009
adding multiple childs to an array these childs are added using timer after a time interval.actually there two classes and child of both classes are added to stage one through timer as i described and other through keyboard event. now is it possible to do this if yes than how?? and is it possible to apply hittest object between these two array.
i'm breaking my head over something, and will be very grateful to any creative ideas:
I created kind of drag and drop game: i have cards that should be placed on squares.
in case the card touches any square, the square changes it's color. the problem occurs when the card touches 2 squares at their middle: they both change their color.
in fact, I need that only one of the square will change it's color, and it should be the square that the card touches it with "the most of him". i thought of using the hitpoint but i know it won't work, because in case the card touches both square in the middle it won't work..
I have a function that checks if 2 objects are touching OB1 and OB2, if they do touch it runs the rest of the collision code where OB1 is the character and OB2 is a tile that the player cannot pass through.
I came across an issue where i wanted sprites to be separate from the hitboxes but my collision code works by checking the height and width of an object (you guys know the drill).
So i have a Tile class with 2 parts to it, a bitmap and a movieClip.
So i have this setup(pseudocode):
Code: loop { function collision (ob1 , ob2[loop].movieclip) }
This should work right? But it ONLY works for the first object in the loop!
I have 3 balls and i want them to turn around a center point.The physics is right but I'm finding confusing how to apply the equation to any object of my array.
Here it goes the code:
Code: var movies = ["ball_mc", "ball2_mc", "ball3_mc"]; var angle:Number = 0; var centerX:Number = center_mc._x;
I have 3 balls and I want them to turn around a center point. The physics is right but I'm finding confusing how to apply the equation to any object of my array.
Here it goes the code: var movies = ["ball_mc", "ball2_mc", "ball3_mc"]; var angle:Number = 0; var centerX:Number = center_mc._x; var centerY:Number = center_mc._y; var radius:Number = 100; [Code] .....
I was using hitTest to see when sunny (mc) would hit one of five objects I have in an array. But I had to use removeEventListener otherwise it would keep occurring. But now I can't "hit" the next object. Why doesn't the addeventListener work again?
stage.addEventListener(MouseEvent.CLICK, myClickReaction); // speeds ALONG NYPOTENUSEvar v:Number=5; var varObject:String; var i:Number; var arrayObjects:Array; [Code] .....
I've attached a zip with a few custom classes and a .FLA. Ignore the custom classes. I'm getting repeated "Error #1009: Cannot access a property or method of a null object reference. at Environment_fla::MainTimeline/hitTest()".
I understand that this error means I'm asking it to reference something that's no longer there. How better to hitTest many objects in an array. My game involves creating a bunch of balls that will fall into buckets. I need to keep track of how many touched the buckets, how many fell off the screen, and remove each accordingly.
Here is the code from my main FLA ActionScript Code: var ballTimer:Timer = new Timer(200); var changeTimer:Timer = new Timer(50000); ballTimer.addEventListener(TimerEvent.TIMER, throwBall, false, 0, true); ballTimer.start(); changeTimer.addEventListener(TimerEvent.TIMER, changeColor); changeTimer.start(); [Code] .....
For days now I have been trying to get this hit test to work and which ever way I try it, it always comes back to the same result. I get a hit on the last item I pushed into my array but none on the previous items I pushed in. Also if I put a .sort() on the array it only gives a hit on the last item of the array, no matter which one I push in.
The idea is that I want to drag and drop objects onto the stage, they may not overlap so I need a hit test on the objects so I can make them undroppable when the hit test is true.
This is the part I have for dragging the objects to the stage, and adding them to arrays for the hit test.
Code: private function onClickDragBuilding1ToGameField(e:MouseEvent):void{ building1Placeholder.x = mouseX-25; building1Placeholder.y = mouseY-25;
[Code]...
Now if I run this I can add the object to the stage just fine no errors or other issues but the hit test only works on the last object I added to the stage/array and not the previous object I added to the stage/array.
Sso I drag the first object to the stage. (no other object are available yet so nothing happens, this is as it should be) Then I drag a second object to the stage, this reacts to the first object and returns the hit test as true. (Also great and working as it should.) Then I drag a 3th object to the stage, this reacts to the 2nd object I dragged just fine and return a true value, but it does not react to the 1 object I dragged onto the stage. Then when I drag a 4th object to the stage it will react to the 3th object I added, but not the 1st ad 2nd object.
regarding adding multiple childs to an array these childs are added using timer after a time interval.actually there two classes and child of both classes are added to stage one through timer as i described and other through keyboard event. now is it possible to do this if yes than how?? and is it possible to apply hittest object between these two array.
say I have a clip with an onEnterFrame running on it with a hit test to check if the user has rolled off the clip . . . Then i create an empty clip within that clip and attach clips to it. Will my .onEnterFrame and hitTest now apply to the clips i have attached to the original clip?
The Setup: For each movieclip the hittests a set of "target" movieclips an array is given a value. If mcIcon1 is dropped onto mcTarget1 the first number in the vacant array is given the value of one. The Issue: If I remove mcIcon1, for example, from the mcTarget1 movieclip I can't find a way of just removing the 1 from that array without the rest of the array numbers being reset.
ok so if i have an obect called square1 and an object called square2 and inside square2 i have hitArea... i want to use shapeflag to detect an absolute true hitTest on just the area of square1 not the bounding box.... i tried this code and it didnt work...
actionscript 2.0
ActionScript Code: if (_root.square1.hitTest(square2.hitArea._x, square2.hitArea._y, true)) {
I have this thing where orbs are supposed to stick together, so I put them all in an arrayand told them to stick together when they encounter another member of that array.However, they only stick in groups of up to four, and then the orbs begin to overlap and such.
I'm making a game were parts of the level are randomly generated and move across the screen and while I have made it so all that works correctly I am having trouble running a hittest on them to allow for gravity. Below is the piece of code attached to the player movieclip that I think is causing the issue (shortened for sake of space)
I am trying to use the following code to simplify multiple Hittests using an Array, but the code won't work. Can anyone tell me why?
var blockArray:Array = new Array("block1", "block2", "block3"); player.addEventListener(Event.ENTER_FRAME, blockTest); function blockTest(evt:Event):void {
I'm trying to figure out how to apply a colorTransform to certain indecies of an array. So far, I've had no success. I think the issue I'm having is with using the proper syntax... I've tried
PHP Code:
nArray[0].transform.colorTransform = 0x000000; b0.transform.colorTransform = 0x000000; etc.
Code: var spring:Number=.1; var frizione:Number=.98; var gravita:int=1; var limite:Number=stage.stageHeight; stage.frameRate=31; var colorsArray:Array = new Array(); [Code] .....
I am working on an application where an image serves as cursor. Now i would like to know at any time over which object the cursor is hovering. Sort of like a HitTestObject(*) where i can then see what object the * represents. how i could accomplish this? (and using the mouse is not an option)
I've built an array of movieclips - all of them sitting static on the stage. I'm trying to trigger the clips to play as they are hit by an invisible/alpha 0 bar which sweeps across the stage... kind of like a mexican wave? I'm still a bit crappy with arrays - here's my code:
I haven't used as2 in a very long time. I found this code for rotating an object based on the mouse position. How do you actually apply this to the object?
ActionScript Code: onClipEvent (enterFrame) { // find x and y differences disx = _root._xmouse-_x;
I have this function that I want to apply to 10 different MovieClips that are on the stage by using an array. I wrote the array, I just need to know how I can apply the array to the function. [code]...
I've an empty array and some global variables, and I have two movie clips in my library: one is a trigger, second is the movie clip that is placed on the stage when the trigger is activated (a testdummy, if you want).
var dummies:Array = []; var i:int = 300; var j:int = 500; var k:int = 0;
[Code].....
...I get an obvious error : Scene 1, Layer 'actions', Frame 1, Line 66 1120: Access of undefined property dummy. Because dummies are created within a function. I don't have any trouble addressing items in the 'dummies' array though.
Though dummies are crated by the same pattern, data stored in them is the whole point of creating the application.
how can I apply a function to each of those dummies, which is executed on click and affects only one dummy?
I would like to know if there's the way to do collision check on every object on the stage,
[Code]...
I want to make the object such that it falls on a rotated platform and land according to it's angle. I've success fully make it landed according to it's angle before it lands. but the problem here is that, after the landing when I trigger the rotating platform, the object falls when the platform is out of it's hit area. Is there a way such that it will work like a car wiper and wipe the object towards it's direction?
I'm coding a really simple 2D platforming game in Flash using AS3. I'd like to define two different types of terrain surfaces that the player can walk on based on classic platforming elements. Type1: the player can walk on, and if the player jumps, they will hit their head on it and bounce back to the ground. Type2: the player can also walk on, but if the player jumps and hits their head, they will simply pass through the surface and not bounce back to the ground.
I am using hitTestPoint to resolve collisions for this. My question is: What would be the best method to test for what TYPE of ground I am colliding with? Each ground type has it's own Class associated with it in my Flash IDE and all the different terrain surface types are in the same movie clip on the stage.
Currently I'm testing to see if it hit one type of ground surface, then i'm testing if it hit the other, and then based on those results, I process what I want to happen. This seems to work okay right now, but I'm imagining that I may want to create more than 2 types of ground to collide with. For example, moving platforms. It seems like the code will start to get complex
I should mention that the reason for me taking this approach is that I have a PNG, with transparent areas, I need to test for collisions in the non-transparent areas, which is why I was using this approach
I have a PNG, i import that and convert to bitmap, then convert to bitmapData
I have a simple FOR loop which runs through an array of MC names, which runs fine, but I'm trying to use these names inside this array as hittest values. So, I have one MC, and the code in this MC runs through an array and checks for any collisions between it and the mc in the array.