v3.1.0: adjusted lethal defence talent to instead affect shield CD
This commit is contained in:
@@ -935,7 +935,7 @@ actors.hero.talent.enraged_catalyst.desc=_+1:_ Enchantments and curses on the Be
|
|||||||
actors.hero.talent.cleave.title=cleave
|
actors.hero.talent.cleave.title=cleave
|
||||||
actors.hero.talent.cleave.desc=_+1:_ When the Gladiator kills an enemy, the combo cooldown for his next hit is increased to _15 turns_.\n\n_+2:_ When the Gladiator kills an enemy, the combo cooldown for his next hit is increased to _30 turns_.\n\n_+3:_ When the Gladiator kills an enemy, the combo cooldown for his next hit is increased to _45 turns_.
|
actors.hero.talent.cleave.desc=_+1:_ When the Gladiator kills an enemy, the combo cooldown for his next hit is increased to _15 turns_.\n\n_+2:_ When the Gladiator kills an enemy, the combo cooldown for his next hit is increased to _30 turns_.\n\n_+3:_ When the Gladiator kills an enemy, the combo cooldown for his next hit is increased to _45 turns_.
|
||||||
actors.hero.talent.lethal_defense.title=lethal defense
|
actors.hero.talent.lethal_defense.title=lethal defense
|
||||||
actors.hero.talent.lethal_defense.desc=_+1:_ When the Gladiator kills an enemy with a combo move, he gains _7 shielding_.\n\n_+2:_ When the Gladiator kills an enemy with a combo move, he gains _13 shielding_.\n\n_+3:_ When the Gladiator kills an enemy with a combo move, he gains _20 shielding_.
|
actors.hero.talent.lethal_defense.desc=_+1:_ When the Gladiator kills an enemy with a combo move, the cooldown on his broken seal shielding is _reduced by 33%_.\n\n_+2:_ When the Gladiator kills an enemy with a combo move, the cooldown on his broken seal shielding is _reduced by 67%_.\n\n_+3:_ When the Gladiator kills an enemy with a combo move, the cooldown on his broken seal shielding is _reduced by 100%_.\n\nThe shield cooldown can be reduced to at low as -100% this way, which means it will immediately be available again once it is activated.
|
||||||
actors.hero.talent.enhanced_combo.title=enhanced combo
|
actors.hero.talent.enhanced_combo.title=enhanced combo
|
||||||
actors.hero.talent.enhanced_combo.desc=_+1:_ When the Gladiator's combo is 7 or higher, Clobber's knockback range increases to 3, it inflicts vertigo, and it can knock enemies into pits.\n\n_+2:_ In addition to the benefits of +1, when the Gladiator's combo is 9 or higher Parry works on multiple attacks.\n\n_+3:_ In addition to the benefits of +1 and +2, the Gladiator can leap up to combo/3 tiles when using Slam, Crush, or Fury.
|
actors.hero.talent.enhanced_combo.desc=_+1:_ When the Gladiator's combo is 7 or higher, Clobber's knockback range increases to 3, it inflicts vertigo, and it can knock enemies into pits.\n\n_+2:_ In addition to the benefits of +1, when the Gladiator's combo is 9 or higher Parry works on multiple attacks.\n\n_+3:_ In addition to the benefits of +1 and +2, the Gladiator can leap up to combo/3 tiles when using Slam, Crush, or Fury.
|
||||||
|
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
|
|||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Talent;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Talent;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.DwarfKing;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.DwarfKing;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.FloatingText;
|
import com.shatteredpixel.shatteredpixeldungeon.items.BrokenSeal;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfBlastWave;
|
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfBlastWave;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica;
|
import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
@@ -410,10 +410,10 @@ public class Combo extends Buff implements ActionIndicator.Action {
|
|||||||
ch.sprite.bloodBurstA(target.sprite.center(), aoeHit);
|
ch.sprite.bloodBurstA(target.sprite.center(), aoeHit);
|
||||||
ch.sprite.flash();
|
ch.sprite.flash();
|
||||||
|
|
||||||
if (!ch.isAlive() && hero.hasTalent(Talent.LETHAL_DEFENSE)) {
|
if (!ch.isAlive()
|
||||||
int shieldToGive = Math.round(6.67f*hero.pointsInTalent(Talent.LETHAL_DEFENSE));
|
&& hero.hasTalent(Talent.LETHAL_DEFENSE)
|
||||||
hero.sprite.showStatusWithIcon(CharSprite.POSITIVE, Integer.toString(shieldToGive), FloatingText.SHIELDING);
|
&& hero.buff(BrokenSeal.WarriorShield.class) != null) {
|
||||||
Buff.affect(hero, Barrier.class).setShield(shieldToGive);
|
hero.buff(BrokenSeal.WarriorShield.class).reduceCooldown(hero.pointsInTalent(Talent.LETHAL_DEFENSE)/3f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -466,9 +466,7 @@ public class Combo extends Buff implements ActionIndicator.Action {
|
|||||||
|
|
||||||
if (!enemy.isAlive() || (!wasAlly && enemy.alignment == target.alignment)) {
|
if (!enemy.isAlive() || (!wasAlly && enemy.alignment == target.alignment)) {
|
||||||
if (hero.hasTalent(Talent.LETHAL_DEFENSE)){
|
if (hero.hasTalent(Talent.LETHAL_DEFENSE)){
|
||||||
int shieldToGive = Math.round(6.67f * hero.pointsInTalent(Talent.LETHAL_DEFENSE));
|
hero.buff(BrokenSeal.WarriorShield.class).reduceCooldown(hero.pointsInTalent(Talent.LETHAL_DEFENSE)/3f);
|
||||||
hero.sprite.showStatusWithIcon(CharSprite.POSITIVE, Integer.toString(shieldToGive), FloatingText.SHIELDING);
|
|
||||||
Buff.affect(hero, Barrier.class).setShield(shieldToGive);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -325,7 +325,6 @@ public class BrokenSeal extends Item {
|
|||||||
if (shielding() > 0){
|
if (shielding() > 0){
|
||||||
if (Dungeon.hero.visibleEnemies() == 0){
|
if (Dungeon.hero.visibleEnemies() == 0){
|
||||||
turnsSinceEnemies++;
|
turnsSinceEnemies++;
|
||||||
//TODO
|
|
||||||
if (turnsSinceEnemies >= 5){
|
if (turnsSinceEnemies >= 5){
|
||||||
float percentLeft = shielding() / (float)maxShield();
|
float percentLeft = shielding() / (float)maxShield();
|
||||||
cooldown -= COOLDOWN_START*(percentLeft/2f); //max of 50% cooldown refund
|
cooldown -= COOLDOWN_START*(percentLeft/2f); //max of 50% cooldown refund
|
||||||
@@ -345,8 +344,8 @@ public class BrokenSeal extends Item {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public synchronized void activate() {
|
public synchronized void activate() {
|
||||||
setShield(maxShield());
|
incShield(maxShield());
|
||||||
cooldown = COOLDOWN_START;
|
cooldown += COOLDOWN_START;
|
||||||
turnsSinceEnemies = 0;
|
turnsSinceEnemies = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -354,12 +353,9 @@ public class BrokenSeal extends Item {
|
|||||||
return cooldown > 0;
|
return cooldown > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public synchronized void supercharge(int maxShield){
|
public void reduceCooldown(float percentage){
|
||||||
if (maxShield > shielding()){
|
cooldown -= Math.round(COOLDOWN_START*percentage);
|
||||||
setShield(maxShield);
|
cooldown = Math.max(cooldown, -COOLDOWN_START);
|
||||||
}
|
|
||||||
cooldown = COOLDOWN_START;
|
|
||||||
turnsSinceEnemies = 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public synchronized void setArmor(Armor arm){
|
public synchronized void setArmor(Armor arm){
|
||||||
|
|||||||
Reference in New Issue
Block a user