diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/AssassinsBlade.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/AssassinsBlade.java index c0dc43c32..5cd0dac41 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/AssassinsBlade.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/AssassinsBlade.java @@ -43,10 +43,15 @@ public class AssassinsBlade extends MeleeWeapon { @Override public int damageRoll(Hero hero) { Char enemy = hero.enemy(); - if (enemy instanceof Mob && ((Mob) enemy).surprisedBy(hero)) + if (enemy instanceof Mob && ((Mob) enemy).surprisedBy(hero)) { //deals avg damage to max on surprise, instead of min to max. - return imbue.damageFactor(Random.NormalIntRange((min() + max())/2, max())); - else + int damage = imbue.damageFactor(Random.NormalIntRange((min() + max()) / 2, max())); + int exStr = hero.STR() - STRReq(); + if (exStr > 0) { + damage += Random.IntRange( 0, exStr ); + } + return damage; + } else return super.damageRoll(hero); } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Dagger.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Dagger.java index 46db858f9..4efeef5a4 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Dagger.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Dagger.java @@ -43,10 +43,15 @@ public class Dagger extends MeleeWeapon { @Override public int damageRoll(Hero hero) { Char enemy = hero.enemy(); - if (enemy instanceof Mob && ((Mob) enemy).surprisedBy(hero)) + if (enemy instanceof Mob && ((Mob) enemy).surprisedBy(hero)) { //deals avg damage to max on surprise, instead of min to max. - return imbue.damageFactor(Random.NormalIntRange((min() + max())/2, max())); - else + int damage = imbue.damageFactor(Random.NormalIntRange((min() + max()) / 2, max())); + int exStr = hero.STR() - STRReq(); + if (exStr > 0) { + damage += Random.IntRange( 0, exStr ); + } + return damage; + } else return super.damageRoll(hero); } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Dirk.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Dirk.java index 3266c1043..aa7e37a51 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Dirk.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Dirk.java @@ -43,10 +43,15 @@ public class Dirk extends MeleeWeapon { @Override public int damageRoll(Hero hero) { Char enemy = hero.enemy(); - if (enemy instanceof Mob && ((Mob) enemy).surprisedBy(hero)) + if (enemy instanceof Mob && ((Mob) enemy).surprisedBy(hero)) { //deals avg damage to max on surprise, instead of min to max. - return imbue.damageFactor(Random.NormalIntRange((min() + max())/2, max())); - else + int damage = imbue.damageFactor(Random.NormalIntRange((min() + max()) / 2, max())); + int exStr = hero.STR() - STRReq(); + if (exStr > 0) { + damage += Random.IntRange( 0, exStr ); + } + return damage; + } else return super.damageRoll(hero); } }