ActionScript 3.0 :: How To HitTestObject Using Arrays
Nov 13, 2009
I have a project with four circles moving randomly on stage (ball_mc1..ball_mc4). There are four walls making a box (wall1..wall4).I've created arrays for both myCircles and walls.When myCircles hit walls, I would like to change the direction of myCircles depending on which wall they hit.
stop();// walls or limits and their arrayvar walls:Array = new Array (wall1, wall2, wall3, wall4);for (var j:Number=0; j<walls.length; j++);
// circles in arrayvar myCircles:Array = new Array (ball_mc1, ball_mc2, ball_mc3,
[code].....
View 11 Replies
Similar Posts:
Aug 23, 2011
I have been making a game and have run into some problems I want to make a hitTestObject between multiple arrays, i have tried something like this:
for(var i:Number = 0; i < array1.length; i++)
{
array1[i].y -= 10; //Moves object up
for(var a:Number = 0; i < array2.length; a++)
[Code]....
When i run it, some object will detect the collision and will output "hit", but some will ignore that. I have also noticed that some object in the array1 stop running the move code (array1[i].y -= 10) after i have added another array.
View 4 Replies
Jan 21, 2011
I am running into some trouble adding an array into another array to create a multi-dimensional array.The code appears as below:
var slideDataArray:Array = new Array();
var slideShowDataArray:Array = new Array();
slideDataArray[0] = xmlData.SlideShowParameters.SlideShowImagesDirectory;[code]........
I am looking for a means of placing the slideDataArray into a 'slot' or value of slideShowDataArray so that I can in the end pass the slideShowDataArray as a parameter to another function.As of now, the last slideDataArray appears 11 times (the loop runs 11 times) in slideShowDataArray and the way the code is written the slideDataArray is unique every iteration of the loop.
View 1 Replies
Aug 26, 2009
I've got a bit that loads a big chunk of xml data about products.I push product info into an array(e.g. productArray), then add that array to another array (e.g. allProductsArray)How do I sort those arrays? For instance, if I want to sort the allProductsArray based on the info in productArray[0]?Alternatively, would something other tha an array of arrays be a better route?This loader loads the same sort of info for many different clients, so the bit to sort on will change.
View 5 Replies
Sep 26, 2011
I'm trying to write a function where I can specify any amount of array, and the return value will be an array containing the contents of all of the specified arrays.I've done this, but it seems like a really slow and ugly way of doing it:
var ar1:Array = [1,2,3,4,5,6,7,8,9];
var ar2:Array = ['a','b','c','d','e','f','g','h'];
function merge(...multi):Array[code].....
Is there an inbuilt and more efficient / nice way of achieving this? The result does not need to be in the same order as the input - completely unsorted is fine.
View 3 Replies
Feb 17, 2009
A little explanation: Im making a random arranging number Array. So instead of using a loop and assigning 0 to first array element, 1 to second, etc.I need to make it totally random but without repeating any numbers. To do that I made a second Array that will have the same number of children to serve as a reference.Each of them will be an Object with a property "num" , wich will be its actual number, and a property "called" wich defaults to false.Like this:
ActionScript Code:
for(var i:int=0;i<vQuantity;i++){
ranArray.push( new Object() );
[code].......
View 8 Replies
Dec 27, 2009
I've had a problem for awhile that was really odd. After some intense debugging, I realized the problem lied in setting an array equal to another array.[code] When setting one array equal to another, the values aren't copied over, but a reference to that memory is stored. So no matter which variable you change, they are both references to the same memory and thus both will reflect the changes.With other data types, this doesn't happen.I could fix it by looping through t1 and using push() to add each index from t1 into t2, but that seems a little messy.
View 7 Replies
Jun 25, 2004
correct syntax for pushing variables to arrays within arrays? I have searched many threads but found nothing that exactly answers my query.I have a class (Brigade) which amongst other variables contains an array (BrigadeUnits) This is the third element.. My Brigades are stored in an array called AllBrigades. I now need to fill the BrigadeUnits array with objects of my Units class.The hierarchy I want to create is as follows:
AllBrigades (array of Brigades)
Brigade (object)
BrigadeUnits (array within Brigade object)
Unit (Object to be stored in BrigadeUnits array)
I have tried various approaches including the following, assuming that I am addressing the first Brigade in the array:
AllBrigades [0] [2].push (MyUnit);
But when I trace this I just get undefined.
View 14 Replies
Apr 8, 2010
In my program, the movieclips are randomly added on the stage, If I want to check whether two movieclips from different classes is colllided.As far as all the moveclips are of the different classes which are randomly added on the stage in my program,for the use of hitTestObject(), I find that I need to have two movieclips identified so that the command will be:
mc1.hitTestObject(mc2)
maybe I may ask, before I add a mc on the stage "addChild(mc)",I will call a function to do the hitTestObject command "mc.addEventListener(Event.ENTER_FRAME, hitTest)"so that I can call evt.target to be mc1, is that true or not?
View 14 Replies
Jan 5, 2012
Im've created a timer that starts every 1 second. This is the code what's happening every 1 second.
var Random_Value_X:Number = Math.ceil(Math.random() * 1500);
var Random_Value_Y:Number = Math.ceil(Math.random() * 2000);
var enemy:MovieClip = new AI(stage);
addChild(hero);
enemy.x = Random_Value_X;
enemy.y = Random_Value_Y;
Ok. Then I got the class called AI where I've made it so the AI follows my player. The thing is, I need to make a hitTest that testes if an AI hitting another AI? Is there a way I can give every new AI a ID? Like the first gets called "AI1" and second AI2" and then I can make a code that says like If(AT1.hitTestObject(AT2 || AT3))
View 1 Replies
Sep 12, 2009
I am trying to develop a basic game engine for a slime soccer style game where a player can move around and jump. I am still fairly new at AS3 but managed to put together this working bit of code that the game currently runs on:
Code:
stop();
//vardefs
var runSpeed:Number = 10;
var blueGoals:Number = 0;
var redGoals:Number = 0;
[Code]...
View 4 Replies
Jan 9, 2012
I have children being added to the stage, and they all have the same name:
[Code].....
and then inside them I have them looking for a hit test of any movieclip with the name art_crab, but I keep getting a null response...
[Code]....
how i can make sure that they collide and i dont get this response?
View 7 Replies
Feb 7, 2011
I have section of code which works for bouncing some fish movie clips off of the 'ceiling':[code].....
However, I would like to find a more succinct way to program this using a 'for loop'. I tried the following, which did not work and gave me an error (posted at the bottom). [code].....
TypeError: Error #1010: A term is undefined and has no properties.at Function/<anonymous>()
View 3 Replies
May 12, 2011
Im trying to get Flash to rember if the logo_mc has been hitTested with the holder, and if it has when the movie is played again it appears in the box and not the original spot
var mySO:SharedObject = SharedObject.getLocal("ObjectPlace");
var logo_mc:Sticker = new Sticker ;
addChild(logo_mc);
[code]....
View 1 Replies
Nov 30, 2011
How do I get the x,y position of hitTestObject? Since I want to obtain the x,y position where the hit test occurs and add a movieclip on that specific point....
View 2 Replies
Jan 16, 2011
I have a MC called 'playerP" and inside of it with 7 different MC. I can't seems to hit test on the children MC, it always show [object position_2]
private function cMove(e:MouseEvent):void
{
trace(MovieClip(playerP.RR), playerP.PT)
[Code]....
View 1 Replies
Feb 8, 2012
I am building a pacman style game, and I am looking to shorten my code.The stage contains 92 instances with instance names of food1, food2, etc.When the player(pacman) hits one of the instances Im wanting to call a funcion.I started writing it out like this... it works but I don't want to duplicate this 92 times!
if( player.hitTestObject(food1) ) {
updateScore();
}
if( player.hitTestObject(food2) ) {
updateScore();
}
Now I'm trying something along these lines, but with no success yet.
function collectFood() {
var i:Number;
var pGroup:String
[code]....
View 1 Replies
Mar 14, 2012
I would like to make a button that allows you to go to the next frame. I would like to do this with hitTestObject. When the charecter walks over the button, you should go to the next frame.
View 1 Replies
Sep 30, 2010
I'm hoping someone can help me. I'm trying to add sound to the hitTestObject script below so that a short sound plays everytime "bolt" hits the ralphie_mc.
[Code]...
View 0 Replies
Dec 15, 2011
I'm working on a scene where the user can drag sugar, honey and syrup flavour to a cup of coffee and each time they collide, the coffee's happiness is increased by 1. I added a TweenLite so that sending any of the objects to their original positions is much more fluid. The problem is that the hitTestObject is now firing more than once (which makes sense and now happiness is increasing at more than one increment at a time) but how can I make it so happiness is increased just once?
Code:
public function hitsDecaf(e:Event):void{
if (myCounter.myHoney.hitTestObject(myCounter.decafSweetened)){
ifStartTimer = true;
stopDrag();
myCounter.steamHappy.gotoAndPlay(2);
[Code] .....
View 4 Replies
Sep 25, 2009
I'm trying to make a simple maze game. I have movement working, and now I'm trying to implement collision. Here's what I have:
An 8x8 grid, with walls of length 1 to break the grid up into a maze. the walls are instances of a movieclip I've named "mc_wall" a guitar-pick-shaped chip I'll control the movement of a cross-hair called "arms" that will check if there are walls immediately surrounding my chip by way of collision. "arms" is a movieclip made up of four individual movieclips: "uparm", "leftarm", "rightarm", and "downarm"
I have currently named each instance of "mc_wall" to be "wall" this is the code I have now (using only right as an example):
function moveRobot(event:KeyboardEvent):void
{
doslide = true;
if (event.keyCode == Keyboard.RIGHT)
[Code]....
this will work, causing the chip to remain in place if the rightarm detects "wall", and move if the rightarm does not detect "wall". My problem is that, although I have named every instance of "mc_wall" to be "wall", the only "wall" flash will recognize is the last one.
Is there a way to adjust this code to look at all 70-or-so instances of "mc_wall" instead of only the last one?
View 1 Replies
May 16, 2011
Ok I am building a DnD, I have a hitTest setup, and I know when it hits it. But I can't get out of the for statement if I drop it on the second object. It says it hit it, and then anims back to org. place.
Code:
public function onStopDrag(evt:MouseEvent):void {
stopDrag();
[code]....
View 5 Replies
May 26, 2011
Press the picture to get it larger. That's what i really need for my project. I can't get it to work.please explain it for me to, im learning flash so I can need that to understand sometimes
View 1 Replies
Sep 4, 2011
I dont think that will work. I need to have it as individual blocks.I did a quick demo file to show what I need. You will se in the file that the map is randomized and I need it to be like that to! READ THIS: I want the green cube to fall down (gravity) and than "land" on the gray cubes. This is a small demo, of my full version flash file, so i need it to be blocks.
View 4 Replies
Sep 14, 2009
I'm creating randomly moving boxes. And when one box touches another one something happends. The code below is something i've done but the problem is that when the for loop goes trought the array the box hits itself.[code]
View 1 Replies
Apr 8, 2010
I'm getting the following error when trying to do collision
[Code]....
View 4 Replies
Jan 6, 2009
I have a project I am working on in Flash CS3 using AS3.I have a drag and drop quiz that contains 8 boxes. 4 of the boxes contain dynamic text boxes with the vocabulary words. 4 of the boxes contain the definitions to the vocab words. The students drag and drop the vocab words onto the definitions. My issue is that hitTestObject is only working on the first box everytime. I have a for loop in my endDrag code that should loop through each object and test against it to see if there is a hit. Can anyone see anything wrong with my loop?
View 2 Replies
Jul 15, 2010
Im using hitTestObject to start a mc playing, but it continues to loop even though there is a stop(); on its last frame.
]Code]...
The mc "rolly" is the one being looped. Its animation is within itself (hope that makes sense) it is not looping the main timeline.
View 6 Replies
Oct 28, 2010
HitTestObject seems to check collision of bounddaries of shapes, it seems to consider everything rectangular. Also if one object jumps two pixel and other five pixels on EnterFrame it seems like there won't be any hit detection. Seriously guys what else method do you use, if you use hitTestObject how do you use?
View 1 Replies
Feb 2, 2011
Before i ask what im sure will be a very silly question, let me say that i am a total beginner at Action Script. I am trying my best to make a simple game for University, and i have tried, but cant figure it out.
Anyway, the game is basically Breakout, where you control a Paddle, and try to hit a ball towards blocks.I cant figure out how to remove the blocks when the ball hits them.[code]...
View 8 Replies