If your enemy is using civilians as human shields you still cannot attack the civilians being used. You find better tactics that limit that tactic. Refusing to do so makes you no better than your enemy. Both should be condemned.
For another example this is like a shooter hiding behind a hostage and the cops just shooting the hostage. That's murder.
So you expect people not to shoot back when their friends are getting shot at? That's not how people work.
Hamas has engineered a situation to cause as much suffering to their own people as possible - it's great propaganda but truly one of the most horrific betrayals in history.
No one should be surprised by this. It's been well known for a long time that Hamas uses civilian infrastructure to shield their operations, and civilians themselves as human shields.