package com.hearthsim.event.effect; import com.hearthsim.card.Card; import com.hearthsim.card.CharacterIndex; import com.hearthsim.card.minion.Minion; import com.hearthsim.model.PlayerSide; import com.hearthsim.util.tree.HearthTreeNode; public class EffectCharacterHeal<T extends Card> implements EffectCharacter<T> { private final byte amount; public EffectCharacterHeal(int amount) { this.amount = (byte) amount; } @Override public HearthTreeNode applyEffect(PlayerSide targetSide, CharacterIndex targetCharacterIndex, HearthTreeNode boardState) { Minion targetMinion = boardState.data_.modelForSide(targetSide).getCharacter(targetCharacterIndex); return targetMinion.takeHealAndNotify(this.amount, targetSide, boardState); } }