v2.0.0: added a final T1 talent for the Duelist
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 5.7 KiB After Width: | Height: | Size: 5.7 KiB |
@@ -808,8 +808,8 @@ actors.hero.talent.strengthening_meal.title=strengthening meal
|
|||||||
actors.hero.talent.strengthening_meal.desc=_+1:_ Eating food grants the Duelist 2 bonus damage on her next _2 physical attacks_.\n\n_+2:_ Eating food grants the Duelist 2 bonus damage on her next _3 physical attacks_.
|
actors.hero.talent.strengthening_meal.desc=_+1:_ Eating food grants the Duelist 2 bonus damage on her next _2 physical attacks_.\n\n_+2:_ Eating food grants the Duelist 2 bonus damage on her next _3 physical attacks_.
|
||||||
actors.hero.talent.adventurers_intuition.title=adventurer's intuition
|
actors.hero.talent.adventurers_intuition.title=adventurer's intuition
|
||||||
actors.hero.talent.adventurers_intuition.desc=_+1:_ The Duelist identifies weapons _2.5x faster_ and armor _1.75x faster_.\n\n_+2:_ The Duelist identifies weapons _when she equips them_ and armor _2.5x faster_.
|
actors.hero.talent.adventurers_intuition.desc=_+1:_ The Duelist identifies weapons _2.5x faster_ and armor _1.75x faster_.\n\n_+2:_ The Duelist identifies weapons _when she equips them_ and armor _2.5x faster_.
|
||||||
actors.hero.talent.aaa.title=aaa
|
actors.hero.talent.patient_strike.title=patient strike
|
||||||
actors.hero.talent.aaa.desc=
|
actors.hero.talent.patient_strike.desc=If the Duelist waits before performing a melee attack, she will deal _1-2 bonus damage_.\n\nIf the Duelist waits before performing a melee attack, she will deal _2 bonus damage_.
|
||||||
actors.hero.talent.aggressive_barrier.title=aggressive barrier
|
actors.hero.talent.aggressive_barrier.title=aggressive barrier
|
||||||
actors.hero.talent.aggressive_barrier.desc=_+1:_ The Duelist gain 2 shielding when she uses a weapon ability and is below _33% health_.\n\n_+2:_ The Duelist gain 2 shielding when she uses a weapon ability and is below _50% health_.
|
actors.hero.talent.aggressive_barrier.desc=_+1:_ The Duelist gain 2 shielding when she uses a weapon ability and is below _33% health_.\n\n_+2:_ The Duelist gain 2 shielding when she uses a weapon ability and is below _50% health_.
|
||||||
actors.hero.talent.aggressive_barrier.meta_desc=_If this talent is gained by a different hero_ it will instead grant shielding when making a melee attack at low health, with a 50 turn cooldown.
|
actors.hero.talent.aggressive_barrier.meta_desc=_If this talent is gained by a different hero_ it will instead grant shielding when making a melee attack at low health, with a 50 turn cooldown.
|
||||||
|
|||||||
@@ -1221,6 +1221,9 @@ public class Hero extends Char {
|
|||||||
if (hasTalent(Talent.HOLD_FAST)){
|
if (hasTalent(Talent.HOLD_FAST)){
|
||||||
Buff.affect(this, HoldFast.class).pos = pos;
|
Buff.affect(this, HoldFast.class).pos = pos;
|
||||||
}
|
}
|
||||||
|
if (hasTalent(Talent.PATIENT_STRIKE)){
|
||||||
|
Buff.prolong(this, Talent.PatientStrikeTracker.class, cooldown());
|
||||||
|
}
|
||||||
if (!fullRest) {
|
if (!fullRest) {
|
||||||
if (sprite != null) {
|
if (sprite != null) {
|
||||||
sprite.showStatus(CharSprite.DEFAULT, Messages.get(this, "wait"));
|
sprite.showStatus(CharSprite.DEFAULT, Messages.get(this, "wait"));
|
||||||
|
|||||||
+13
-2
@@ -148,7 +148,7 @@ public enum Talent {
|
|||||||
EAGLE_EYE(119, 4), GO_FOR_THE_EYES(120, 4), SWIFT_SPIRIT(121, 4),
|
EAGLE_EYE(119, 4), GO_FOR_THE_EYES(120, 4), SWIFT_SPIRIT(121, 4),
|
||||||
|
|
||||||
//Duelist T1
|
//Duelist T1
|
||||||
STRENGTHENING_MEAL(128), ADVENTURERS_INTUITION(129), DUELIST_T1_3(130), AGGRESSIVE_BARRIER(131),
|
STRENGTHENING_MEAL(128), ADVENTURERS_INTUITION(129), PATIENT_STRIKE(130), AGGRESSIVE_BARRIER(131),
|
||||||
//Duelist T2
|
//Duelist T2
|
||||||
FOCUSED_MEAL(132), RESTORED_AGILITY(133), WEAPON_RECHARGING(134), LETHAL_HASTE(135), SWIFT_EQUIP(136),
|
FOCUSED_MEAL(132), RESTORED_AGILITY(133), WEAPON_RECHARGING(134), LETHAL_HASTE(135), SWIFT_EQUIP(136),
|
||||||
//Duelist T3
|
//Duelist T3
|
||||||
@@ -228,6 +228,7 @@ public enum Talent {
|
|||||||
public float iconFadePercent() { return Math.max(0, visualcooldown() / 20); }
|
public float iconFadePercent() { return Math.max(0, visualcooldown() / 20); }
|
||||||
};
|
};
|
||||||
public static class SpiritBladesTracker extends FlavourBuff{};
|
public static class SpiritBladesTracker extends FlavourBuff{};
|
||||||
|
public static class PatientStrikeTracker extends FlavourBuff{};
|
||||||
public static class AggressiveBarrierCooldown extends FlavourBuff{
|
public static class AggressiveBarrierCooldown extends FlavourBuff{
|
||||||
public int icon() { return BuffIndicator.TIME; }
|
public int icon() { return BuffIndicator.TIME; }
|
||||||
public void tintIcon(Image icon) { icon.hardlight(0.35f, 0f, 0.7f); }
|
public void tintIcon(Image icon) { icon.hardlight(0.35f, 0f, 0.7f); }
|
||||||
@@ -613,6 +614,16 @@ public enum Talent {
|
|||||||
hero.buff(Talent.SpiritBladesTracker.class).detach();
|
hero.buff(Talent.SpiritBladesTracker.class).detach();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (hero.hasTalent(PATIENT_STRIKE)){
|
||||||
|
if (hero.buff(PatientStrikeTracker.class) != null){
|
||||||
|
hero.buff(PatientStrikeTracker.class).detach();
|
||||||
|
dmg += Random.IntRange(hero.pointsInTalent(Talent.PATIENT_STRIKE), 2);
|
||||||
|
if (!(enemy instanceof Mob) || !((Mob) enemy).surprisedBy(hero)){
|
||||||
|
Sample.INSTANCE.play(Assets.Sounds.HIT_STRONG, 0.75f, 1.2f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (hero.hasTalent(DEADLY_FOLLOWUP)) {
|
if (hero.hasTalent(DEADLY_FOLLOWUP)) {
|
||||||
if (hero.belongings.weapon() instanceof MissileWeapon) {
|
if (hero.belongings.weapon() instanceof MissileWeapon) {
|
||||||
Buff.prolong(enemy, DeadlyFollowupTracker.class, 5f);
|
Buff.prolong(enemy, DeadlyFollowupTracker.class, 5f);
|
||||||
@@ -662,7 +673,7 @@ public enum Talent {
|
|||||||
Collections.addAll(tierTalents, NATURES_BOUNTY, SURVIVALISTS_INTUITION, FOLLOWUP_STRIKE, NATURES_AID);
|
Collections.addAll(tierTalents, NATURES_BOUNTY, SURVIVALISTS_INTUITION, FOLLOWUP_STRIKE, NATURES_AID);
|
||||||
break;
|
break;
|
||||||
case DUELIST:
|
case DUELIST:
|
||||||
Collections.addAll(tierTalents, STRENGTHENING_MEAL, ADVENTURERS_INTUITION, DUELIST_T1_3, AGGRESSIVE_BARRIER);
|
Collections.addAll(tierTalents, STRENGTHENING_MEAL, ADVENTURERS_INTUITION, PATIENT_STRIKE, AGGRESSIVE_BARRIER);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
for (Talent talent : tierTalents){
|
for (Talent talent : tierTalents){
|
||||||
|
|||||||
@@ -254,10 +254,13 @@ public class Toolbar extends Component {
|
|||||||
Dungeon.hero.waitOrPickup = true;
|
Dungeon.hero.waitOrPickup = true;
|
||||||
if ((Dungeon.level.heaps.get(Dungeon.hero.pos) != null || Dungeon.hero.canSelfTrample())
|
if ((Dungeon.level.heaps.get(Dungeon.hero.pos) != null || Dungeon.hero.canSelfTrample())
|
||||||
&& Dungeon.hero.handle(Dungeon.hero.pos)){
|
&& Dungeon.hero.handle(Dungeon.hero.pos)){
|
||||||
//trigger hold fast here, even if the hero didn't specifically wait
|
//trigger hold fast and patient strike here, even if the hero didn't specifically wait
|
||||||
if (Dungeon.hero.hasTalent(Talent.HOLD_FAST)){
|
if (Dungeon.hero.hasTalent(Talent.HOLD_FAST)){
|
||||||
Buff.affect(Dungeon.hero, HoldFast.class).pos = Dungeon.hero.pos;
|
Buff.affect(Dungeon.hero, HoldFast.class).pos = Dungeon.hero.pos;
|
||||||
}
|
}
|
||||||
|
if (Dungeon.hero.hasTalent(Talent.PATIENT_STRIKE)){
|
||||||
|
Buff.prolong(Dungeon.hero, Talent.PatientStrikeTracker.class, Dungeon.hero.cooldown());
|
||||||
|
}
|
||||||
Dungeon.hero.next();
|
Dungeon.hero.next();
|
||||||
} else {
|
} else {
|
||||||
examining = false;
|
examining = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user