v3.0.0: blast wave no longer knocks back chars that fall into pits

This commit is contained in:
Evan Debenham
2024-10-21 14:55:26 -04:00
parent 13ec86e00b
commit f153e944f1

View File

@@ -85,7 +85,9 @@ public class WandOfBlastWave extends DamageWand {
wandProc(ch, chargesPerCast());
if (ch.alignment != Char.Alignment.ALLY) ch.damage(damageRoll(), this);
if (ch.pos == bolt.collisionPos + i) {
//do not push chars that are dieing over a pit, or that move due to the damage
if ((ch.isAlive() || ch.flying || !Dungeon.level.pit[ch.pos])
&& ch.pos == bolt.collisionPos + i) {
Ballistica trajectory = new Ballistica(ch.pos, ch.pos + i, Ballistica.MAGIC_BOLT);
int strength = 1 + Math.round(buffedLvl() / 2f);
throwChar(ch, trajectory, strength, false, true, this);
@@ -100,7 +102,9 @@ public class WandOfBlastWave extends DamageWand {
wandProc(ch, chargesPerCast());
ch.damage(damageRoll(), this);
if (bolt.path.size() > bolt.dist+1 && ch.pos == bolt.collisionPos) {
//do not push chars that are dieing over a pit, or that move due to the damage
if ((ch.isAlive() || ch.flying || !Dungeon.level.pit[ch.pos])
&& bolt.path.size() > bolt.dist+1 && ch.pos == bolt.collisionPos) {
Ballistica trajectory = new Ballistica(ch.pos, bolt.path.get(bolt.dist + 1), Ballistica.MAGIC_BOLT);
int strength = buffedLvl() + 3;
throwChar(ch, trajectory, strength, false, true, this);