This whole thing is several kinds of wrong.

First - that's NOT how you typecheck things.
Second - just do that in take_damage of respective organs.