PixelPower, dude, you would find this so dang interresting. Because, this will pontential grow to a very nice game.
This is gonna evoluate in a hell of job to pick the right instances. You have problems allready.
Let me (to my best knowledge) show you the problems in 2 events.
https://drive.google.com/open?id=0B1SSu ... EdFOFJVMk0
Instance variable Animal is the UID of the cell array.
Every instance pinned to a certain animal has that variable. Wich is great. You planned picking.
I feel that Cell > (action) > pick by UID ... UID = Eater.animal is easyer , but that is taste, i guess.
I am not sure if the conditions you used has to be true to make the event true. I never used it that way.
The conditions pick (when there is only 1 collision happening, and that is a very risky assuming)
& the Cell that goes with the Eater.
Destroy the picked food (perfecty)
Then Add 30 to the instance variable of a unreferenced AnimalContainer.
Unreferenced ? Well it has no pick condition, so it is unreferenced.
When you run an action on an unreferenced object, that action runs on all instances of that object.
There will be 30 added to the instance variable of ALL AnimalContainer.
Add the condition >> AnimalContainer >> pick by UID >> UID = Eater.Animal, to include/pick the right AnimalContainer.
I am not sure why you picked the Cell. No actions adress the Cell. Did you forget something to do in that Array ?
Or did you start with using a Container to pick all those instances and keep them togheter.
Wich is a great way to do this stuff.
But, you had to change your mind because each animal can have more Eaters and more Brains. In that case Containers indeed not gonna work out fine.
But your code still seems to be acounting for containers.
https://drive.google.com/open?id=0B1SSu ... GtEek5uS0U
Pick all sensors, picks them all.
The pick by evaluate picks from those sensors the one who's UID = a certain Brain.UID.
But, again, Brain is unreferenced. Therefor you feed it all Brains. Yet you forced it to chose 1.
So, it compares to the Brain with IID=the first on in the list.
Result: It picks the first created Sensor that goes with the first created Brain. 1 Sensor.
Again. Brainsignals is unreferenced. So it sets the locations for every Brainsignals to zero.
Event 29, the subevent.
Subevents pick from the objects that are picked in its top event.
So it checks if that 1 sensors is overlapping Food. Food is unreferenced, so in this case that is fine.
It checks if that 1previous picked sensor overlaps with any of the Food.
If there is a overlap, that sensor (still the wrong sensor, anywayz) stays in the picklist. Else the picklist for sensors wil be empty. (that does not make them unreferenced)
Brain is unreferenced. So it compares all Brain to find one with the UID of the picked sensor.
I dont think you have a Brain with UID = 0, luckely.
So if that 1 (weird picked) sensor overlaps food AND if it finds a brain that goes with it, then it will (action) set location 0 of all BrainSignals to 1.