package com.evacipated.cardcrawl.mod.stslib.powers; import com.megacrit.cardcrawl.actions.common.ReducePowerAction; import com.megacrit.cardcrawl.actions.common.RemoveSpecificPowerAction; import com.megacrit.cardcrawl.core.AbstractCreature; import com.megacrit.cardcrawl.core.CardCrawlGame; import com.megacrit.cardcrawl.dungeons.AbstractDungeon; import com.megacrit.cardcrawl.localization.PowerStrings; import com.megacrit.cardcrawl.powers.AbstractPower; public class ExhaustiveNegationPower extends AbstractPower { public static final String POWER_ID = "stslib:ExhaustiveNegationPower"; private static final PowerStrings powerStrings = CardCrawlGame.languagePack.getPowerStrings(POWER_ID); public static final String NAME = ExhaustiveNegationPower.powerStrings.NAME; public static final String[] DESCRIPTIONS = ExhaustiveNegationPower.powerStrings.DESCRIPTIONS; public ExhaustiveNegationPower(AbstractCreature owner, int amount) { name = ExhaustiveNegationPower.NAME; ID = POWER_ID; this.owner = owner; this.amount = amount; isTurnBased = false; updateDescription(); loadRegion("artifact"); } public void onSpecificTrigger() { flash(); if (amount <= 0) { AbstractDungeon.actionManager.addToTop(new RemoveSpecificPowerAction(owner, owner, ID)); } else { AbstractDungeon.actionManager.addToTop(new ReducePowerAction(owner, owner, ID, 1)); } } public void updateDescription() { description = ExhaustiveNegationPower.DESCRIPTIONS[0] + amount + ExhaustiveNegationPower.DESCRIPTIONS[1]; } }