package com.hearthsim.card.classic.minion.rare;
import com.hearthsim.card.classic.minion.common.Imp;
import com.hearthsim.card.minion.Minion;
import com.hearthsim.exception.HSException;
import com.hearthsim.model.PlayerSide;
import com.hearthsim.util.tree.HearthTreeNode;
public class ImpMaster extends Minion {
public ImpMaster() {
super();
}
@Override
public HearthTreeNode endTurn(PlayerSide thisMinionPlayerIndex, HearthTreeNode boardModel) throws HSException {
HearthTreeNode tmpState = super.endTurn(thisMinionPlayerIndex, boardModel);
if (isWaitingPlayer(thisMinionPlayerIndex))
return tmpState;
tmpState = this.takeDamageAndNotify((byte) 1, thisMinionPlayerIndex, thisMinionPlayerIndex, tmpState, false, false);
if (!tmpState.data_.getCurrentPlayer().isBoardFull()) {
tmpState = new Imp().summonMinion(thisMinionPlayerIndex, this, tmpState, false);
}
return tmpState;
}
}