====== Heart Of Darkness Buff - Code References ======
===== Java Classes =====
Actual implementation found in:
* [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/nyrds/pixeldungeon/items/guts/HeartOfDarkness.java|HeartOfDarkness.java]] - Contains the HeartOfDarknessBuff class
===== Implementation Details =====
public static class HeartOfDarknessBuff extends ArtifactBuff {
@Override
public int icon() {
return BuffIndicator.DARKVEIL;
}
@Override
public String name() {
return StringsManager.getVar(R.string.DarkVeilBuff_Name);
}
@Override
public String desc() {
return StringsManager.getVar(R.string.DarkVeilBuff_Info);
}
@Override
public int defenceProc(Char defender, Char enemy, int damage) {
int defenderPos = defender.getPos();
int spiritPos = defender.level().getEmptyCellNextTo(defenderPos);
if (defender.level().cellValid(spiritPos)) {
SpiritOfPain spirit = new SpiritOfPain();
spirit.setPos(spiritPos);
Mob.makePet(spirit, defender.getId());
defender.level().spawnMob(spirit, 0, defenderPos);
}
return damage;
}
}
===== Notes =====
* This buff is part of the Heart of Darkness artifact
* Name in game: "Dark Veil" (not "Heart of Darkness")
* Effect: When the owner takes damage, summons a Spirit of Pain nearby
* Icon: BuffIndicator.DARKVEIL
* Implementation: defenceProc method triggers when taking damage
===== JSON Configuration =====
None found - implemented purely in Java
===== String Resources =====
Dark veil
A veil of darkness surrounds the owner, summoning a spirit every time damage is taken.
===== Lua Scripts =====
This entity is implemented in Java, no Lua script exists