Generating new items on the go would cause datablock transmitting lag.
It would be possible to make a 'build' item - you collide with the set bricks, they delete themselves, you gain a "Build" item, when you shoot the ground with it the build appears if it can be placed there?