T = solid block (over observer) P = piston face (invisible under block? No – pistons push the block they are attached to) Better design: Place the piston a movable block.
The floor should look like this from above:
P = Sticky Piston (faces center) X = pit P P P P X P P P P
(Note: one side will have a gap for the player entry – see step 4)
Mobs will walk onto the solid blocks above the observers. When they step there, the observer sees them and activates the piston.