diff --git a/core/src/main/assets/messages/items/items.properties b/core/src/main/assets/messages/items/items.properties index c68858eb6..e7f6524c0 100644 --- a/core/src/main/assets/messages/items/items.properties +++ b/core/src/main/assets/messages/items/items.properties @@ -483,7 +483,7 @@ items.bombs.bomb.ac_lightthrow=LIGHT & THROW items.bombs.bomb.snuff_fuse=You quickly snuff the bomb's fuse. items.bombs.bomb.ondeath=The explosion kills you... items.bombs.bomb.rankings_desc=Killed by an explosion -items.bombs.bomb.desc=A fairly hefty black powder bomb. An explosion from this would certainly do damage to anything nearby. +items.bombs.bomb.desc=A fairly hefty black powder bomb. An explosion from this bomb deals _%1$d-%2$d damage_ to anything adjacent to it, and will destroy some adjacent terrain or items. items.bombs.bomb.desc_fuse=It looks like the fuse will take a couple rounds to burn down once it is lit. items.bombs.bomb.desc_burning=The bomb's fuse is burning away, keep your distance or put it out! items.bombs.bomb$doublebomb.name=two bombs diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/bombs/Bomb.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/bombs/Bomb.java index d70b44dc9..69be36798 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/bombs/Bomb.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/bombs/Bomb.java @@ -117,15 +117,7 @@ public class Bomb extends Item { if (!Dungeon.level.pit[ cell ] && lightingFuse) { Actor.addDelayed(fuse = createFuse().ignite(this), 2); } - if (Actor.findChar( cell ) != null && !(Actor.findChar( cell ) instanceof Hero) ){ - ArrayList candidates = new ArrayList<>(); - for (int i : PathFinder.NEIGHBOURS8) - if (Dungeon.level.passable[cell + i]) - candidates.add(cell + i); - int newCell = candidates.isEmpty() ? cell : Random.element(candidates); - Dungeon.level.drop( this, newCell ).sprite.drop( cell ); - } else - super.onThrow( cell ); + super.onThrow( cell ); } @Override @@ -184,13 +176,7 @@ public class Bomb extends Item { continue; } - int dmg = Random.NormalIntRange(5 + Dungeon.scalingDepth(), 10 + Dungeon.scalingDepth()*2); - - //those not at the center of the blast take less damage - if (ch.pos != cell){ - dmg = Math.round(dmg*0.67f); - } - + int dmg = Random.NormalIntRange(4 + Dungeon.scalingDepth(), 12 + 3*Dungeon.scalingDepth()); dmg -= ch.drRoll(); if (dmg > 0) { @@ -239,15 +225,17 @@ public class Bomb extends Item { @Override public int value() { - return 20 * quantity; + return 15 * quantity; } @Override public String desc() { + int depth = Dungeon.depth == -1 ? 1 : Dungeon.depth; + String desc = Messages.get(this, "desc", 4+depth, 12+3*depth); if (fuse == null) - return super.desc()+ "\n\n" + Messages.get(this, "desc_fuse"); + return desc + "\n\n" + Messages.get(this, "desc_fuse"); else - return super.desc() + "\n\n" + Messages.get(this, "desc_burning"); + return desc + "\n\n" + Messages.get(this, "desc_burning"); } private static final String FUSE = "fuse";