package com.hearthsim.card.classic.minion.rare; import com.hearthsim.card.CharacterIndex; import com.hearthsim.card.minion.Minion; import com.hearthsim.exception.HSException; import com.hearthsim.model.PlayerModel; import com.hearthsim.model.PlayerSide; import com.hearthsim.util.tree.HearthTreeNode; public class YoungPriestess extends Minion { public YoungPriestess() { super(); } /** * At the end of your turn, give another random friendly minion +1 Health */ @Override public HearthTreeNode endTurn(PlayerSide thisMinionPlayerIndex, HearthTreeNode boardModel) throws HSException { HearthTreeNode toRet = super.endTurn(thisMinionPlayerIndex, boardModel); PlayerModel currentPlayer = toRet.data_.modelForSide(PlayerSide.CURRENT_PLAYER); if (thisMinionPlayerIndex == PlayerSide.CURRENT_PLAYER) { int numFriendlyMinions = currentPlayer.getNumMinions(); if (numFriendlyMinions > 1) { int minionToBuffIndex = (int)(Math.random() * numFriendlyMinions); Minion minionToBuff = currentPlayer.getCharacter(CharacterIndex.fromInteger(minionToBuffIndex + 1)); while (minionToBuff == this) { minionToBuffIndex = (int)(Math.random() * numFriendlyMinions); minionToBuff = currentPlayer.getCharacter(CharacterIndex.fromInteger(minionToBuffIndex + 1)); } minionToBuff.addHealth((byte) 1); minionToBuff.addMaxHealth((byte)1); } } return toRet; } }