private boolean damageChooseRequiredTargets(SpellAbility saMe, Target tgt, int dmg, boolean mandatory) {
        // this is for Triggered targets that are mandatory
        boolean noPrevention = AF.getMapParams().containsKey("NoPrevention");

        while (tgt.getNumTargeted() < tgt.getMinTargets(saMe.getSourceCard(), saMe)) {
            // TODO: Consider targeting the planeswalker
            if (tgt.canTgtCreature()) {
                Card c = chooseTgtC(dmg, noPrevention, AllZone.getComputerPlayer(), mandatory);
                if (c != null) {
                    tgt.addTarget(c);
                    continue;
                }
            }

            if (tgt.canTgtPlayer()) {
                if (tgt.addTarget(AllZone.getComputerPlayer()))
                    continue;
            }

            // if we get here then there isn't enough targets, this is the only time we can return false
            return false;
        }
        return true;
    }