v3.0.0: buffed tome charge rate and shield of light spell
This commit is contained in:
@@ -1026,7 +1026,7 @@ actors.hero.talent.detect_curse.desc=_+1:_ The Cleric can cast _Detect Curse,_ a
|
||||
actors.hero.talent.searing_light.title=searing light
|
||||
actors.hero.talent.searing_light.desc=_+1:_ Physical attacks on enemies illuminated by _Guiding Light_ deal _+3 damage._\n\n_+2:_ Physical attacks on enemies illuminated by _Guiding Light_ deal _+5 damage._
|
||||
actors.hero.talent.shield_of_light.title=shield of light
|
||||
actors.hero.talent.shield_of_light.desc=_+1:_ The Cleric can cast _Shield of Light,_ a spell that is cast instantly and grants them 2-4 armor against a target for _3 turns_ at the cost of 1 charge.\n\n_+2:_ The Cleric can cast _Shield of Light,_ a spell that is cast instantly and grants them 2-4 armor against a target for _5 turns_ at the cost of 1 charge.
|
||||
actors.hero.talent.shield_of_light.desc=_+1:_ The Cleric can cast _Shield of Light,_ a spell that is cast instantly and grants them 2-4 armor against a target for _4 turns_ at the cost of 1 charge.\n\n_+2:_ The Cleric can cast _Shield of Light,_ a spell that is cast instantly and grants them 2-4 armor against a target for _6 turns_ at the cost of 1 charge.
|
||||
|
||||
actors.hero.talent.enlightening_meal.title=Enlightening Meal
|
||||
actors.hero.talent.enlightening_meal.desc=_+1:_ Eating food takes the Cleric 1 turn and grants them _1 charge_ on their holy tome.\n\n_+2:_ Eating food takes the Cleric 1 turn and grants them _1.5 charges_ on their holy tome.
|
||||
|
||||
@@ -656,6 +656,7 @@ public abstract class Char extends Actor {
|
||||
ShieldOfLight.ShieldOfLightTracker shield = buff( ShieldOfLight.ShieldOfLightTracker.class);
|
||||
if (shield != null && shield.object == enemy.id()){
|
||||
damage -= Random.NormalIntRange(2, 4);
|
||||
damage = Math.max(damage, 0);
|
||||
}
|
||||
|
||||
return damage;
|
||||
|
||||
@@ -63,7 +63,7 @@ public class ShieldOfLight extends TargetedClericSpell {
|
||||
hero.sprite.operate(hero.pos);
|
||||
|
||||
//1 turn less as the casting is instant
|
||||
Buff.affect( hero, ShieldOfLightTracker.class, 2f*hero.pointsInTalent(Talent.SHIELD_OF_LIGHT)).object = ch.id();
|
||||
Buff.affect( hero, ShieldOfLightTracker.class, 1f + 2f*hero.pointsInTalent(Talent.SHIELD_OF_LIGHT)).object = ch.id();
|
||||
|
||||
hero.busy();
|
||||
hero.sprite.operate(hero.pos);
|
||||
@@ -74,7 +74,7 @@ public class ShieldOfLight extends TargetedClericSpell {
|
||||
|
||||
@Override
|
||||
public String desc() {
|
||||
return Messages.get(this, "desc", 1+2*Dungeon.hero.pointsInTalent(Talent.SHIELD_OF_LIGHT)) + "\n\n" + Messages.get(this, "charge_cost", (int)chargeUse(Dungeon.hero));
|
||||
return Messages.get(this, "desc", 2+2*Dungeon.hero.pointsInTalent(Talent.SHIELD_OF_LIGHT)) + "\n\n" + Messages.get(this, "charge_cost", (int)chargeUse(Dungeon.hero));
|
||||
}
|
||||
|
||||
public static class ShieldOfLightTracker extends FlavourBuff {
|
||||
@@ -92,7 +92,7 @@ public class ShieldOfLight extends TargetedClericSpell {
|
||||
|
||||
@Override
|
||||
public float iconFadePercent() {
|
||||
float duration = 1f + 2f* Dungeon.hero.pointsInTalent(Talent.SHIELD_OF_LIGHT);
|
||||
float duration = 2f + 2f* Dungeon.hero.pointsInTalent(Talent.SHIELD_OF_LIGHT);
|
||||
return Math.max(0, (duration - visualcooldown()) / duration);
|
||||
}
|
||||
|
||||
|
||||
@@ -173,12 +173,17 @@ public class HolyTome extends Artifact {
|
||||
|
||||
if (charge < chargeCap) {
|
||||
|
||||
//gains 2.5 charges per hero level, plus 10% per missing charge, plus another 10% for every level after 7
|
||||
float chargeGain = (2.5f * levelPortion) * (1f+(chargeCap - charge)/10f);
|
||||
if (level() > 7) chargeGain *= 1f + (level()-7)/10f;
|
||||
//gains 5 charges per hero level, plus 0.25 per missing charge, plus another 0.25 for every level after 7
|
||||
float chargeGain = (5f * levelPortion) * (1f+(chargeCap - charge)/20f);
|
||||
if (level() > 7) chargeGain *= 1f + (level()-7)/20f;
|
||||
|
||||
chargeGain *= RingOfEnergy.artifactChargeMultiplier(target);
|
||||
|
||||
//floor 1 is very short with pre-spawned weak enemies, so nerf recharge speed here specifically
|
||||
if (Dungeon.depth == 1){
|
||||
chargeGain *= 0.67f;
|
||||
}
|
||||
|
||||
partialCharge += chargeGain;
|
||||
|
||||
//charge is in increments of 1/5 max hunger value.
|
||||
|
||||
Reference in New Issue
Block a user