I did this in an abandoned project of mine, when you planted a certain brick it would plant another next to it, and when you destroy one the other would get destroyed.
Something like this
function brickDatablockName::onPlant(%this)
{
Parent::onPlant(%this);
%this.otherSide = new brick stuff, other stuff for planting, etc
%this.otherSide.otherSide = %this;
}
function brickDatablockName::onDeath(%this)
{
Parent::onDeath(%this);
if(isObject(%this.otherSide))
%this.otherSide.killBrick();
}
Packaged of course