picking multiple objects

hey, I have a quention again. I´m trying to build a tower using blocks. the way that i´m doing this is with picking objects, and i´m trying to do something like this:
*load a new model with handlerEvent
*move the new object over the other pieces.
but the question is: how I have to name the objects in the handlerEvent to discern them? do I have to use a vector? can you show me an example please?
tell me if my question is hard to understand to I reformulate it.
thanks for the help for this and for the other questions

Basically there would be at least two ways to handle the case

Way 1: your block objects are true OOP objects.
Then collision traverser send message like "Enter in %in "
where %in is replaced by “into Object” by panda3D at collision time.
And you block listen to message like “Enter in”+ block.name so each block know when he is (and only him) entered in.
It’s up to the block to react accordingly.

Way2: your blockMover is responsible of moving the Blocks
Then collision traverser send message “Enter in”.
The blockMover object accept message “Enter in” and give it to a method
processCollision(self,CollEntry).
The CollEntry is generated by Panda at collision time and tell you which nodes collided and severa other information about the collision.

At load time, your block node have been tagged via the setTagMethod with a unique ID for each block. You also keep this unique Id in a dictionnary to be able to lookup the block by this Id.

Then the processCollision function will use a “getTag” to know the unique Id of intoNode and FromNode of the collision and then loockup the block in the dictionnary to perform whatever action you want.

Way 2 allows you to attach any number of additionnal properties to a a Node via it’s unique ID and an additonnal dictionnary lookup.
You need the dicitionnary because in current panda version setTag allow you to store only string, not instance or “pointer” to custom data.
This restriction may be removed in next Panda3d version , someone can confirm?

PS: for syntax of Event sent by EventHandler, please cross check with Manual because i wrote it out of memory…

ok, I understand now. thanks…