v3.2.0: augmentation now also affects durability for thrown weapons

This commit is contained in:
Evan Debenham
2025-07-22 15:41:09 -04:00
parent 45f2f36004
commit 688c2eb502
2 changed files with 14 additions and 1 deletions

View File

@@ -1333,7 +1333,7 @@ items.stones.stoneofaggression$aggression.desc=Manipulative magic is making all
items.stones.stoneofaugmentation.name=stone of augmentation
items.stones.stoneofaugmentation.inv_title=Augment an item
items.stones.stoneofaugmentation.desc=This runestone possesses potent magic which can augment equipment to enhance one property at the cost of another.\n\nUsing on a weapon will allow you to enhance either speed or damage.\n\nUsing on armor will allow you to enhance either defense or evasion.
items.stones.stoneofaugmentation.desc=This runestone possesses potent magic which can augment equipment to enhance one property at the cost of another.\n\nUsing on a weapon will allow you to enhance either speed or damage. Thrown weapons will also gain or lose durability in proportion with their speed.\n\nUsing on armor will allow you to enhance either defense or evasion.
items.stones.stoneofaugmentation.discover_hint=You can buy this item in a shop, or craft it via alchemy.
items.stones.stoneofaugmentation$wndaugment.choice=What would you like to enhance?
items.stones.stoneofaugmentation$wndaugment.speed=Speed

View File

@@ -439,6 +439,9 @@ abstract public class MissileWeapon extends Weapon {
usages *= MagicalHolster.HOLSTER_DURABILITY_FACTOR;
}
//+50% durability on speed aug, -33% durability on damage aug
usages /= augment.delayFactor(1f);
if (Dungeon.hero != null) usages *= RingOfSharpshooting.durabilityMultiplier( Dungeon.hero );
//at 100 uses, items just last forever.
@@ -627,6 +630,16 @@ abstract public class MissileWeapon extends Weapon {
if (!statsInfo.equals("")) info += statsInfo + " ";
info += Messages.get(MissileWeapon.class, "distance");
switch (augment) {
case SPEED:
info += " " + Messages.get(Weapon.class, "faster");
break;
case DAMAGE:
info += " " + Messages.get(Weapon.class, "stronger");
break;
case NONE:
}
if (levelKnown) {
if (durabilityPerUse() > 0) {
info += "\n\n" + Messages.get(this, "uses_left",