Ok, I have been messing around with a concept for a week or so now. I have read every single page in the manual and browsed the forums for a solution to this but I suspect it's my own logical failings. I am not seeing something, or a function to make these things work, as if I don't have a missing link that will make all my ideas come together.
Here is a picture of the concept;
<img src="http://i.imgur.com/r8az4S2.png" border="0" />
And this is some of what I have tried/worked with;
-I have all of the objects created and ready to work with.
-one object called "spawner" that has four different instances
-----the spawner spawns a ball from a randomized instance every five seconds
-----I want the ball that it spawns to be one of four different colors. instead of just one.
-I have four different sprites for the balls of different colors (each is a different color sprite
-----the names of the balls are as follows; blueball, greenball, redball, yellowball.
-I also have one sprite called 'ball'
-----this object has four different animations that are named as follows; blue, red, green, yellow
-----each animation is a different looking sprite in its respective color.
-I make the balls pin to the bucket when they collide with it or other colored balls; This makes them not move in the bucket.
-----when two balls of the same color collide, they are destroyed,but I want it to take three of the same.
-----most people do this through a grid, but with the nature of what I am doing a grid won't work, because the balls can end up in various random places because they are not square like in a tetris clone.
-----so i need to somehow have the balls understand when they have touched three or more of their own color in a chain and then destroy all similar colors involved in the chain. this will in turn allow the balls above them to disconnect from their current pins and drop to a new position. (i know it sounds complex)
I understand this is probably a lot to understand, either that or it is far simpler than I expect and I just seem ridiculous explaining the drawn out methods.
The game actually happens on a bigger scale and quite differently than in the example I've given, but solutions to the example will give solutions in kind to my bigger problems.
I cannot for the life of me figure it out and have read many different posts on things that are somewhat similar, but just not the same.
Any help would be greatly appreciated.