v0.9.2: implemented the necromancer's minions talent
This commit is contained in:
parent
470b9b9c51
commit
beb00a9a4c
|
@ -371,6 +371,8 @@ actors.hero.talent.soul_siphon.title=soul siphon
|
|||
actors.hero.talent.soul_siphon.desc=_+1:_ Melee damage dealt by other characters triggers the Warlock's soul mark at _15% effectiveness_.\n\n_+2:_ Melee damage dealt by other characters triggers the Warlock's soul mark at _30% effectiveness_.\n\n_+3:_ Melee damage dealt by other characters triggers the Warlock's soul mark at _45% effectiveness_.
|
||||
actors.hero.talent.soul_eater.title=soul eater
|
||||
actors.hero.talent.soul_eater.desc=_+1:_ Soul mark grants _0.33 turns_ of satiety for each damage dealt. Soul marked enemies have a _10% chance_ to trigger on-eat effects when they die.\n\n_+1:_ Soul mark grants _0.67 turns_ of satiety for each damage dealt. Soul marked enemies have a _20% chance_ to trigger on-eat effects when they die.\n\n_+3:_ Soul mark grants _1 turn_ of satiety for each damage dealt. Soul marked enemies have a _30% chance_ to trigger on-eat effects when they die.
|
||||
actors.hero.talent.necromancers_minions.title=necromancer's minions
|
||||
actors.hero.talent.necromancers_minions.desc=_+1:_ When a soul marked enemy dies, the Warlock has a _10% chance_ to raise them as a corrupted wraith.\n\n_+1:_ When a soul marked enemy dies, the Warlock has a _20% chance_ to raise them as a corrupted wraith.\n\n_+1:_ When a soul marked enemy dies, the Warlock has a _30% chance_ to raise them as a corrupted wraith.
|
||||
|
||||
actors.hero.talent.cached_rations.title=cached rations
|
||||
actors.hero.talent.cached_rations.desc=_+1:_ The Rogue can find _4 small rations_ placed in chests while he explores the earlier stages of the dungeon.\n\n_+2:_ The Rogue can find _6 small rations_ placed in chests while he explores the earlier stages of the the dungeon.
|
||||
|
|
|
@ -86,7 +86,7 @@ public enum Talent {
|
|||
//Battlemage T3
|
||||
EMPOWERED_STRIKE(43, 3), MYSTICAL_CHARGE(44, 3), BATTLEMAGE_T3_3(45, 3),
|
||||
//Warlock T3
|
||||
SOUL_SIPHON(46, 3), SOUL_EATER(47, 3), WARLOCK_T3_3(48, 3),
|
||||
SOUL_SIPHON(46, 3), SOUL_EATER(47, 3), NECROMANCERS_MINIONS(48, 3),
|
||||
|
||||
//Rogue T1
|
||||
CACHED_RATIONS(64), THIEFS_INTUITION(65), SUCKER_PUNCH(66), PROTECTIVE_SHADOWS(67),
|
||||
|
@ -467,7 +467,7 @@ public enum Talent {
|
|||
Collections.addAll(tierTalents, EMPOWERED_STRIKE, MYSTICAL_CHARGE, BATTLEMAGE_T3_3);
|
||||
break;
|
||||
case WARLOCK:
|
||||
Collections.addAll(tierTalents, SOUL_SIPHON, SOUL_EATER, WARLOCK_T3_3);
|
||||
Collections.addAll(tierTalents, SOUL_SIPHON, SOUL_EATER, NECROMANCERS_MINIONS);
|
||||
break;
|
||||
case ASSASSIN:
|
||||
Collections.addAll(tierTalents, ENHANCED_LETHALITY, ASSASSIN_T3_2, BOUNTY_HUNTER);
|
||||
|
|
|
@ -41,9 +41,11 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.SoulMark;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Terror;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Talent;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Surprise;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Wound;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.ShadowParticle;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Generator;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Gold;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||
|
@ -684,7 +686,20 @@ public abstract class Mob extends Char {
|
|||
GLog.i( Messages.get(this, "died") );
|
||||
}
|
||||
|
||||
boolean soulMarked = buff(SoulMark.class) != null;
|
||||
|
||||
super.die( cause );
|
||||
|
||||
if (!(this instanceof Wraith)
|
||||
&& soulMarked
|
||||
&& Random.Int(10) < Dungeon.hero.pointsInTalent(Talent.NECROMANCERS_MINIONS)){
|
||||
Wraith w = Wraith.spawnAt(pos);
|
||||
Buff.affect(w, Corruption.class);
|
||||
if (Dungeon.level.heroFOV[pos]){
|
||||
CellEmitter.get(pos).burst( ShadowParticle.CURSE, 6 );
|
||||
Sample.INSTANCE.play( Assets.Sounds.CURSED );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void rollToDropLoot(){
|
||||
|
|
Loading…
Reference in New Issue
Block a user