package com.hearthsim.card.blackrockmountain.spell;
import com.hearthsim.card.minion.Minion;
import com.hearthsim.card.spellcard.SpellDamageTargetableCard;
import com.hearthsim.exception.HSException;
import com.hearthsim.model.PlayerModel;
import com.hearthsim.model.PlayerSide;
import com.hearthsim.util.tree.CardDrawNode;
import com.hearthsim.util.tree.HearthTreeNode;
public class QuickShot extends SpellDamageTargetableCard {
public QuickShot() {
super();
}
@Override
protected HearthTreeNode use_core(PlayerSide side, Minion targetMinion,HearthTreeNode boardState) throws HSException {
PlayerModel currentPlayer = boardState.data_.modelForSide(PlayerSide.CURRENT_PLAYER);
HearthTreeNode toRet = super.use_core(side, targetMinion, boardState);
if (toRet != null && currentPlayer.getHand().size() == 0) {
if (toRet instanceof CardDrawNode) {
((CardDrawNode) toRet).addNumCardsToDraw(1);
} else {
toRet = new CardDrawNode(toRet, 1);
}
}
return toRet;
}
}