ActionScript 2.0 :: Test Collisions Than HitTest?
Mar 15, 2007Is there any faster way to test collisions than hitTest? I remember an example here on kirupa, but I can't find it.
View 1 RepliesIs there any faster way to test collisions than hitTest? I remember an example here on kirupa, but I can't find it.
View 1 RepliesI know you use the HitTest function to check for collisions, but how would I do that the moment a movie clip is dynamically created. So the moment the clip is created it would check if it is overlapping another clip. Also, does it matter if the clips are at different depths?
View 1 RepliesI've been using flash for a long time. I know some stuff, but not enough for what I am trying to do. Basically, I am making a little car minigame of a car in a city. This is my engine on the car:
onClipEvent(load){
speed =0 ;
} onClipEvent (enterFrame) {
if (Key.isDown(Key.UP)) {
speed += 0.4;
} if (Key.isDown(Key.DOWN)) {
speed -= 0.1;
[Code] .....
I am fine with all of it but the collisions, as the car will only bounce when the registration point of the car collides with 'wall', so it looks all funny and that and the car goes into any thing collable half way then bounces back, and occasionally gets stuck in the wall. Reall annoying. Ive tried fixing it but whenever I remove the hittest parts the car wont even move or turn. How to get the wall collides with the car (27.7 x 13) and not the registration. I need a strong engine which works with curves as well, and requires me just putting the code into the car, but if I have to put it into the walls/frame i suppose its okay, but theres no way im going through every single building and that.
Also, it would be cool if:
-An engine where when reversing the steering is reversed (like irl)
-The car doesnt bounce backwards when driving at a wall at an angle, but slides against it (like irl).
How do I detect collisions between movie clips and a line created through actionscript (with the lineStyle, lineTo, etc. commands). I tried making the line inside a movie clip and doing a hitTest with that movie clip, but it did nto work.
View 1 RepliesI have two png files. I import them using loaders. The images in the png files each have opaque (solid) and transparent parts. I want to use the bitmapdata.hittest method to detect when their opaque parts have collided.
[Code]...
I've been working on this for a couple of days now and nobody seems to know how to do this. Please don't post the examples on google, I've looked through at least the first five pages of results on google and haven't gotten any of them to work. The problem is that none of them provide an example of using this method with loaders, so I'm guessing the reason I can't get it to work is some gimmick associated with them.
I'm working on a game (my first) where objects touching is A-Ok, but I want to detect overlapping collisions ahead of time, prevent them, and react. This seems like a pretty basic and common thing, such as a character walking along a platform (even though by touching it it's 'colliding'), but of all the many many collision detection tutorials I've looked at, none of them have covered this case--they all assume that objects touching should be indistinguishable from overlapping. I've been using a workaround of a slightly smaller hitbox to use for collisions, but it has issues of it's own that make it not so good. So basically I'm looking to redo my CD from scratch.
So, like I said, I'd like to know how to differentiate between 'touching' collisions and overlapping collisions, but even a way to keep touching collisions from triggering entirely would work.
how do i test if a hittest is false
View 1 RepliesHow do i get the hitTest() function to test if a certain symbol is hitting another symbol, but, only if drawn parts of the symbol are touching, not thier outer bounds.
View 1 RepliesHow do i get the hitTest() function to test if a certain symbol is hitting another symbol, but, only if drawn parts of the symbol are touching, not thier outer bounds.
View 2 RepliesI'm trying to test a custom Flex 4 skinnable component, using the FlexUnit UIImpersonator class. If I run my tests from a FlashBuilder Spark only project everything works fine. If I try to test from a project with the mx component set on the classpath I get a "getElementIndex not available in non Flex 4 projects" error.Can I unit test spark components in FlexUnits visual test environment while still having the mx component set on the classpath?
UIImpersonator delegates it's method calls to a "testEnvironment".The implementation used for this "testEnvironment" is decided by the VisualTest EnvironmentBuilder class and the FlexEnvironmentBuilder class. If the FlexEnvironmentBuilder class can find the "mx.core.Container" on the classpath it returns a MX environment, else a Spark environment. Only the spark environment has valid implementations for Flex 4 relevant method calls on the UIImpersonator - like the addElement method.
My buttons only work when I click on them on the stage while having the "enable simple buttons" option on. They do not work if I try to "test movie," "test scene" and publish it to a SWF. Nothing responds whenever I am in these modes. I am using Adobe Flash Professional CS5 Actionscript 2.0.
This is the code that I put in for the buttons:
[Code].....
i have a movie that has worked fine in past during Html test but ive been doing some dubugging using the flash test latly and it runs fine here but when i go back and try to test in Html mode no errors come just the movie never fully starts (starts up about as much as if there was an error).
View 5 RepliesI have two scenes in my flash file and in scene 1, first button takes you to frame 2 where movie clip is -works
on (release) {
gotoAndStop("scene1",2);
}
second button takes you to frame 3
but on scene 2 that performs same function as scene 1, the first button
on(press){
gotoAndStop("scene2",2);
}
instead of going to frame 2 goes to frame 3. and the second button goes correctly to frame 3.that happens when i test scene! when i test movie all buttons work properly.
i just would like to know how to create an "hitTest" script inside a movieclip that is actually part of that hitTest code?I mean... I have mc A, and mc B. and the current hitTest code im using (that is on the timeline) makes mc A, destroy mc B when collide with it... but there are many mc B on the stage (with the same instance name) so, when mc A collide with one mc B, it destroys ALL mc's B... but i want it to destroy only the mc B that he collides, not all the others... maybe an hitTest script inside a movieclip B would work (somethig like "if MC A hitTest ME = i die" (not all the others)).
View 1 RepliesIn FlexUnit 1 it is possible to access the name of the currently-running test using the TestCase.getName() method because all tests subclass TestCase. In FlexUnit 4, however, there's no base class for tests; the tests are identified by annotations. So, how can I replicate the getName() functionality in FlexUnit 4?
View 2 RepliesI am making a game and I cant get my collisions to work. I will give a link to the files because I use external .as files.
View 1 RepliesI am trying to apply code to all instances of the enemy that appear randomly but I've run into problems. Firstly the enemies appear when you press space and the collision doesn't seem to work. I kind of thought you have to push the enemies into an array and hitTest that array right?
Actionscript Code:
stop();
var ship_speed:Number = 10;var lazer_speed:Number = 20;
var enemy_speed:Number = 8;var lazertimer:Number = 0;
var basicenemy:Number = 0;var enemytime:Number = 0; var enID:Number = 0;
var enemies:Array =[]onEnterFrame = function() {
[Code] .....
I'm trying to create a air-hockey game, in flash using AS3.At the moment, I am using an enter frame function to check the positioning of the 3 objects, 2 paddles and a ball, then it checks to see if they are in contact, if they are it then initiates a detect collision function.However it's checking every time the frame is loaded, and at 25 fps, this is quite a lot and the app lags.
View 3 RepliesI'm having a bit of trouble with psuedo 3d collisions using spheres. I'm using _xscale and _yscale to emulate the z-axis (no horizon point), and am having trouble determining the distance between the objects on the z-axis based upon their relative scales.I'm not concerned at this moment with creating new vectors based upon hit angles, just getting the z-index collision detection working. (I also need to tweak the code to prevent trapping, so much todo)Here's the code, the issue is how do I determine the correct value for the z-axis in the hittest?note-this only works when I publish in flash6 when using mx2004, the collision detection doesn't work at all when published for flash7?[code]
View 7 RepliesI can sorted Vertical and Horizontal collision. But I'm having trouble with collisions at an angle, e.g. a 45 degree ramp. My cousin says I have to work out the trajectory angle from the Xv and Yv but the closest I can get is:PHP Code:
[Code]...
I've been experimenting with circle vs. circle collisons. Ive been using the code below to check for collisions and seperate the objects.It works just fine, except in conditions where more than two circles are touching at the same time. For example, if three circles or more are colliding at the same time, they can sometimes overlap and then struggle to separate.
I think I know why this is happening. The code loops through the object array and checks for a collision between each object one at a time and alters their positions and velocities. The problem is that if it finds a collision between objects at the end of the array, the positions of the objects could be changed in such a way that they cause an overlap with an object that was checked earlier, for which no collision was detected. This new collision then goes undetected and this flaw is amplified when the loop runs again.
Code:
function circleCollision(circleOne:MovieClip, circleTwo:MovieClip):void
{
//Find radius, x and y positions of circleOne
var circleOne_Radius = circleOne.width/2;
var circleOne_X = circleOne.x;
[code]....
Im trying to make a breakout clone which I have working however I cant figure out how to test which side of the blocks the ball hits. I woul like to have a different reaction if it collides with the right side than if it hit the bottom etc.
View 2 RepliesI would like to avoid the tags overlapping each other in this small Flex project: I've this small FLEX project: [URL]..
The items are LinkButtons. How can I check if they are colliding or not ?
I'm new to flash and programming in general but am learning it to make games. I'm currently messing around with hit detection and its not to hard to test in the game tick ( fired from onEnterFrame). What I'm wondering is if it would be possible / useful to create a custom event that i can listen for. And make the eventListener hear when a collision happens. Also would this be better or worse for the cpu than testing the collisions of lots of enemies on a screen?
View 2 RepliesI'm writing a game and it has enemies and bullets. When a bullet hits an enemy, I want to destroy the enemy and the bullet. I'm using the hitTestPoint() method to test if a bullet has hit an enemy. Here's the code in my game loop:
[Code]...
The problem is, hitTestPoint only returns true if both the x and y values of bullet and enemy are the same, rather than if the two movie clips overlap. This leads to bullets going right through enemies but it not registering as a hit. Perhaps I'm missing a bounding box?
Is there a way I can make hitTestPoint return true if the bullet hits the enemy at all rather than only if the bullet and enemy co-ordinates are the same?
I'm working with AS2 and running into a problem when loading a bunch of SWFs that share classes. I have a main SWF that loads several child swfs. The main and the children often share some core classes. The issue is that these SWFs were not all created at the same time, and some of the core classes have changed between SWF compilations. It appears that the first instance of any class to load gets used for all following references to that class - regardless of which version of that class was used in compiling the following SWFs.In AS3, the ApplicationDomain can be set to circumvent this issue, is there any that can be done in AS2 to avoid this collision/overwriting?
View 9 RepliesI have a movie clip 'Player'.I want to divide the mc into two equal halves p1 and p2 for collision detection (p1 and p2 are joined together physically).i.e. if ball collides with p1, i do something and if ball collides with p2, i do something else.But i dont want to create 2 different players p1 and p2 for that.i want to have something like p1 and p2 are a single movie clip 'Player', but still can be accessed separately.
View 6 RepliesI'm writing a general physics engine and I've come across the problem I've always had with flash. So far all my hittests in my physics engine have been calculated by using x/y coordinates and the 2 objects dimensions. This has worked fine for the objects so far because they have been very square-ish and do not rotated. How ever now I am trying to detect if 2 rotated objects are hitting. How can I do this ? I would really like to avoid using any .hitTest() functions.
View 5 RepliesI am looking to create a drawing component on a site. that should be straight forward.the issue lies with the fact that I would want to detect any collisions say (4) and then attach MC's to the collision points.in a nut shell.can I get a trace of the drawn path on the stage?????from there I guess I can detect any positional similarities?
View 8 RepliesI know how to do various types of collisions and also know how to scroll a background. I'm sort of having trouble putting two and two together for how a game like stunt pilot knows if a plane has gone through a ring vs hitting it... It's for an iphone game (objective c w/ sparrow framework) just I figured it would be easier to figure out in flash then I can bring that knowledge over to my iPhone
View 1 Replies