package com.hearthsim.card.basic.minion; import com.hearthsim.card.Card; import com.hearthsim.card.minion.Minion; import com.hearthsim.event.effect.EffectCharacter; import com.hearthsim.event.effect.EffectCharacterHeal; import com.hearthsim.event.effect.EffectOnResolveAoe; import com.hearthsim.event.filter.FilterCharacter; import com.hearthsim.exception.HSException; import com.hearthsim.model.PlayerSide; import com.hearthsim.util.tree.HearthTreeNode; public class HealingTotem extends Minion implements EffectOnResolveAoe<Card> { private static final EffectCharacter<Card> effect = new EffectCharacterHeal<>(1); public HealingTotem() { super(); } /** * Called at the end of a turn * * At the end of your turn, restore 1 Health to all friendly minions * */ @Override public HearthTreeNode endTurn(PlayerSide thisMinionPlayerIndex, HearthTreeNode boardModel) throws HSException { HearthTreeNode tmpState = super.endTurn(thisMinionPlayerIndex, boardModel); return this.effectAllUsingFilter(this.getAoeEffect(), this.getAoeFilter(), tmpState); } @Override public EffectCharacter<Card> getAoeEffect() { return HealingTotem.effect; } @Override public FilterCharacter getAoeFilter() { return FilterCharacter.ALL_FRIENDLIES; } }