From 4b79e4f33d67dbebf6be0cece9d8b4316a733d52 Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Fri, 6 Dec 2024 16:27:57 -0500 Subject: [PATCH] v3.0.0: fixed bless spell not consuming time, and text errors with it --- core/src/main/assets/messages/actors/actors.properties | 5 +---- .../shatteredpixeldungeon/actors/hero/spells/BlessSpell.java | 5 ++--- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/core/src/main/assets/messages/actors/actors.properties b/core/src/main/assets/messages/actors/actors.properties index f444431d2..65b61b496 100644 --- a/core/src/main/assets/messages/actors/actors.properties +++ b/core/src/main/assets/messages/actors/actors.properties @@ -552,6 +552,7 @@ actors.hero.spells.cleanse.name=cleanse actors.hero.spells.cleanse.short_desc=Clears debuffs and grants shielding. actors.hero.spells.cleanse.desc=The Cleric instantly clears all harmful effects on themselves and visible allies. After the spell ends all characters affected also gain %1$d turns of debuff immunity, and %2$d barrier. +actors.hero.spells.clericspell.prompt=Choose a target actors.hero.spells.clericspell.no_target=There is no target there. actors.hero.spells.clericspell.charge_cost=Charge cost: %d @@ -569,7 +570,6 @@ actors.hero.spells.divinesense$divinesensetracker.name=divine sense actors.hero.spells.divinesense$divinesensetracker.desc=The Cleric is temporarily able to see other nearby creatures with their mind!\n\nTurns remaining: %s. actors.hero.spells.guidinglight.name=guiding light -actors.hero.spells.guidinglight.prompt=Choose a target actors.hero.spells.guidinglight.short_desc=Deals ranged magic damage and guarantees a hit. actors.hero.spells.guidinglight.desc=The Cleric fires a bolt of magical energy which strikes a target, dealing 2-6 damage and illuminating them. The next physical attack made against an illuminated enemy is guaranteed to hit them. actors.hero.spells.guidinglight.desc_priest=_This spell is more powerful when cast by the Priest._ The first cast of the spell every 100 turns costs no tome charges, and illumination can be triggered by wands and some artifacts, dealing bonus damage equal to the item's level plus five. Any artifact that directly affects an enemy will trigger this effect. @@ -577,7 +577,6 @@ actors.hero.spells.guidinglight$guidinglightpriestcooldown.name=Guiding Light actors.hero.spells.guidinglight$guidinglightpriestcooldown.desc=The Priest will be able to cast Guiding Light for free again after 100 turns elapse.\n\nTurns remaining: %s. actors.hero.spells.holylance.name=holy lance -actors.hero.spells.holylance.prompt=Choose a target actors.hero.spells.holylance.short_desc=Deals heavy ranged magic damage. actors.hero.spells.holylance.desc=The Priest concentrates a large amount of energy into a devastating thrown lance made of light. This lance deals %1$d-%2$d damage and always deals maximum damage to undead and demonic targets.\n\nThis spell is very expensive, and has a cooldown of 50 turns. actors.hero.spells.holylance$lancecooldown.name=holy lance cooldown @@ -610,14 +609,12 @@ actors.hero.spells.recallglyph$usedglyphtracker.name=recently used glyph actors.hero.spells.recallglyph$usedglyphtracker.desc=The Cleric has recently used an item that works with the recall glyph spell. The Cleric can cast the spell to repeat the item's effect.\n\nItem Used: %1$s.\n\nTurns Remaining: %2$s. actors.hero.spells.shieldoflight.name=shield of light -actors.hero.spells.shieldoflight.prompt=Choose a target actors.hero.spells.shieldoflight.short_desc=Grants temporary armor against a target. actors.hero.spells.shieldoflight.desc=The Cleric creates a thin barrier of light between themselves and an enemy, increasing their armor's block power against that enemy by 2-4 for %d turns.\n\nThis spell takes no time to cast, but cannot be used against multiple targets simultaneously. actors.hero.spells.shieldoflight$shieldoflighttracker.name=shield of light actors.hero.spells.shieldoflight$shieldoflighttracker.desc=A thin shield of light is standing between the Cleric and an enemy. It's not strong enough to outright block attacks, but will soften them.\n\nTurns Remaining: %s actors.hero.spells.sunray.name=sunray -actors.hero.spells.sunray.prompt=Choose a target actors.hero.spells.sunray.short_desc=Deals ranged magic damage and blinds a target once. actors.hero.spells.sunray.desc=The Cleric fires a ray of blinding light at a target, dealing %1$d-%2$d damage and blinding them for %3$d turns. Sunray always deals maximum damage to undead and demonic targets.\n\nAfter being struck with this spell an enemy's vision will adjust, preventing them from being blinded by it again. However, if they are struck again while blinded by this spell, then the light is overwhelming and paralyses them instead. diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/BlessSpell.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/BlessSpell.java index fac1fe130..1702c8cb6 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/BlessSpell.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/BlessSpell.java @@ -68,6 +68,7 @@ public class BlessSpell extends TargetedClericSpell { Buff.prolong(ch, Bless.class, 2f + 2*hero.pointsInTalent(Talent.BLESS)); Buff.affect(ch, Barrier.class).setShield(5 + 5*hero.pointsInTalent(Talent.BLESS)); ch.sprite.showStatusWithIcon( CharSprite.POSITIVE, Integer.toString(5 + 5*hero.pointsInTalent(Talent.BLESS)), FloatingText.SHIELDING ); + hero.busy(); hero.sprite.operate(ch.pos); } else { Buff.prolong(ch, Bless.class, 5f + 5*hero.pointsInTalent(Talent.BLESS)); @@ -87,9 +88,7 @@ public class BlessSpell extends TargetedClericSpell { hero.sprite.zap(ch.pos); } - - hero.busy(); - hero.sprite.operate(hero.pos); + hero.spend( 1f ); onSpellCast(tome, hero); }