If a player has no cards in hand, that player doesn't discard a card while everyone else does. If you didn't discard a card, no player can have discarded a card that shares a card type with the card you discarded, so no player loses 3 life.