From de1c3518ae38109f6f576072a1d5f28c3907b6af Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Mon, 8 Jun 2020 18:15:12 -0400 Subject: [PATCH] v0.8.1: Slight adjustments to Yog Dzewa: - Bright and dark fist damage down to 10-20 from 12-24 - Yog laser damage down to 20-30 from 20-35 - Burning fist now evaporates slightly more adjacent water tiles --- .../actors/mobs/YogDzewa.java | 2 +- .../actors/mobs/YogFist.java | 19 ++++++++++++------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/YogDzewa.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/YogDzewa.java index b25cc0245..3896899f8 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/YogDzewa.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/YogDzewa.java @@ -161,7 +161,7 @@ public class YogDzewa extends Mob { Dungeon.observe(); } for (Char ch : affected) { - ch.damage(Random.NormalIntRange(20, 35), new Eye.DeathGaze()); + ch.damage(Random.NormalIntRange(20, 30), new Eye.DeathGaze()); if (Dungeon.level.heroFOV[pos]) { ch.sprite.flash(); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/YogFist.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/YogFist.java index 6f0399977..40f31938e 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/YogFist.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/YogFist.java @@ -188,11 +188,16 @@ public abstract class YogFist extends Mob { CellEmitter.get( pos ).burst( Speck.factory( Speck.STEAM ), 10 ); } - int cell = pos + PathFinder.NEIGHBOURS8[Random.Int(8)]; - if (Dungeon.level.map[cell] == Terrain.WATER){ - Level.set( cell, Terrain.EMPTY); - GameScene.updateMap( cell ); - CellEmitter.get( cell ).burst( Speck.factory( Speck.STEAM ), 10 ); + //1.33 evaporated tiles on average + int evaporatedTiles = Random.chances(new float[]{0, 2, 1}); + + for (int i = 0; i < evaporatedTiles; i++) { + int cell = pos + PathFinder.NEIGHBOURS8[Random.Int(8)]; + if (Dungeon.level.map[cell] == Terrain.WATER){ + Level.set( cell, Terrain.EMPTY); + GameScene.updateMap( cell ); + CellEmitter.get( cell ).burst( Speck.factory( Speck.STEAM ), 10 ); + } } for (int i : PathFinder.NEIGHBOURS9) { @@ -440,7 +445,7 @@ public abstract class YogFist extends Mob { if (hit( this, enemy, true )) { - enemy.damage( Random.NormalIntRange(12, 24), new LightBeam() ); + enemy.damage( Random.NormalIntRange(10, 20), new LightBeam() ); Buff.prolong( enemy, Blindness.class, Blindness.DURATION/2f ); if (!enemy.isAlive() && enemy == Dungeon.hero) { @@ -503,7 +508,7 @@ public abstract class YogFist extends Mob { if (hit( this, enemy, true )) { - enemy.damage( Random.NormalIntRange(12, 24), new DarkBolt() ); + enemy.damage( Random.NormalIntRange(10, 20), new DarkBolt() ); Light l = enemy.buff(Light.class); if (l != null){