I think you just need a single enterframe function that will update the array/animate the balls as required. There's no need to add a separate enterframe function to make a particular ball start falling, just control the falling ball in the single function, just as you would in a separate enterframe function.

Good luck,

Paul
----- Original Message ----- From: "Paul Steven" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Wednesday, March 14, 2007 12:32 PM
Subject: RE: [Flashcoders] Order of events for function call


Thanks Paul

Basically it is a collapse style game - where when the user clicks on a ball
that has 2 similar balls adjacent, all 3 balls disappear and the other
surrounding balls will move to fill any spaces created from the removed
balls.

Here is the basic approach I am taking:

I have a 2 dimensional array storing the game grid, each array element
stores the contents of the grid square. So the content of each square will
be either a ball object or have the value "none".

After a cluster of balls are removed, I first loop through each of the
columns, and within this column loop through all the balls in this column
and check if there is a ball below it.

If there is no ball, then I attach an onEnterFrame function to make this
ball start falling. I also set the value of this grid square to "none". The
onEnterFrame function will adjust the y position of the ball. It will also
check if the ball is at a node - if so then it checks the contents of the
square below it to see if it can fall further or if it needs to stop. If it
stops then I set the value of this grid square in the grid array to this
ball object.

Once all the columns have been checked for falling balls, I then loop
through all the columns again and check if any columns can move horizontally
to fill any gaps that may have appeared.

Due to this problem of the onEnterFrame not being called in the order I
assigned it, I am getting the problem where a grid square is not being
recorded as full until too late so a ball is able to move into a square that
another ball has just moved into.

I think as you suggest, I need to first create a list of all objects that
are going to move and then iterate through this loop so that the balls move
in the correct order.

Any advice much appreciated!

Paul





-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Paul Andrews
Sent: 14 March 2007 11:42
To: [email protected]
Subject: Re: [Flashcoders] Order of events for function call

It doesn't really matter which you assign first, it's all determined by the order in which flash decides to call the functions which has no relationship

to the assignment order. I suspect you would be better advised to use an
independent enterframe function that is not attached to the objects for any
processing that requires a specific order.

Perhaps you can elaborate on what you are trying to do?

Paul

----- Original Message ----- From: "Paul Steven" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Wednesday, March 14, 2007 10:53 AM
Subject: [Flashcoders] Order of events for function call


This may be really basic but I can't understand.

The following is a simplified version of what I am trying to achieve.

Basically I am attaching an onEnterFrame function to 2 objects, say
object1
and object2.

I am attaching it to object1 first however it is calling the onEnterFrame
function for object2 first.

I would appreciate any advice on why this is happening.

When I test the movie, the "Object2 enter frame" trace is displaying
first.

Here is the code for my simplified test file:

object1 = attachMovie("ball_mc","ball_mc",1);
object2 = attachMovie("ball_mc","ball_mc2",2);

object1.onEnterFrame = function() {

trace ("Object1 enter frame");

}

object2.onEnterFrame = function() {

trace ("Object2 enter frame");

}

Many thanks

Paul

_______________________________________________
[email protected]
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


_______________________________________________
[email protected]
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com

_______________________________________________
[email protected]
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


_______________________________________________
[email protected]
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com

Reply via email to