v0.2.4: fixed(or is it intentional? in that case buffed) huntress, now uses excess strength for melee weapons. Reduced reclaiming ammo chance to compensate a bit, clarified the accuracy reduction from using missile weapons in melee range.

This commit is contained in:
Evan Debenham 2015-02-13 15:50:18 -05:00
parent 5fcc1a612a
commit 043e966129
2 changed files with 8 additions and 5 deletions

View File

@ -27,6 +27,7 @@ import com.shatteredpixel.shatteredpixeldungeon.items.KindOfWeapon;
import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfFuror; import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfFuror;
import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfSharpshooting; import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfSharpshooting;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.*; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.*;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MeleeWeapon;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.MissileWeapon; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.MissileWeapon;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog; import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
@ -149,7 +150,7 @@ public class Weapon extends KindOfWeapon {
int damage = super.damageRoll( hero ); int damage = super.damageRoll( hero );
if ((hero.rangedWeapon != null) == (hero.heroClass == HeroClass.HUNTRESS)) { if (this instanceof MeleeWeapon || (this instanceof MissileWeapon && hero.heroClass == HeroClass.HUNTRESS)) {
int exStr = hero.STR() - STR; int exStr = hero.STR() - STR;
if (exStr > 0) { if (exStr > 0) {
damage += Random.IntRange( 0, exStr ); damage += Random.IntRange( 0, exStr );

View File

@ -75,7 +75,7 @@ public class MissileWeapon extends Weapon {
bonus += ((RingOfSharpshooting.Aim)buff).level; bonus += ((RingOfSharpshooting.Aim)buff).level;
if (curUser.heroClass == HeroClass.HUNTRESS && enemy.buff(PinCushion.class) == null) if (curUser.heroClass == HeroClass.HUNTRESS && enemy.buff(PinCushion.class) == null)
bonus += 4; bonus += 3;
if (Random.Float() > Math.pow(0.7, bonus)) if (Random.Float() > Math.pow(0.7, bonus))
Buff.affect(enemy, PinCushion.class).stick(this); Buff.affect(enemy, PinCushion.class).stick(this);
@ -150,15 +150,17 @@ public class MissileWeapon extends Weapon {
if (Dungeon.hero.belongings.backpack.items.contains( this )) { if (Dungeon.hero.belongings.backpack.items.contains( this )) {
if (STR > Dungeon.hero.STR()) { if (STR > Dungeon.hero.STR()) {
info.append( info.append(
"Because of your inadequate strength the accuracy and speed " + "\n\nBecause of your inadequate strength the accuracy and speed " +
"of your attack with this " + name + " is decreased." ); "of your attack with this " + name + " is decreased." );
} }
if (STR < Dungeon.hero.STR()) { if (STR < Dungeon.hero.STR() && Dungeon.hero.heroClass == HeroClass.HUNTRESS) {
info.append( info.append(
"Because of your excess strength the damage " + "\n\nBecause of your excess strength the damage " +
"of your attack with this " + name + " is increased." ); "of your attack with this " + name + " is increased." );
} }
} }
info.append( "\n\nAs this weapon designed to be used at a distance, it is much less accurate if used at melee range.");
if (isEquipped( Dungeon.hero )) { if (isEquipped( Dungeon.hero )) {
info.append( "\n\nYou hold the " + name + " at the ready." ); info.append( "\n\nYou hold the " + name + " at the ready." );