v2.4.0: fixed sandals of nature incorrectly interacting with recharging

This commit is contained in:
Evan Debenham
2024-03-25 14:09:08 -04:00
parent ba3c7f590a
commit 4ec2c80e10
2 changed files with 11 additions and 4 deletions

View File

@@ -164,7 +164,15 @@ public class SandalsOfNature extends Artifact {
@Override
public void charge(Hero target, float amount) {
target.buff(Naturalism.class).charge(amount);
if (cursed || target.buff(MagicImmune.class) != null) return;
if (charge < chargeCap) {
charge += Math.round(2*amount);
if (charge >= chargeCap) {
charge = chargeCap;
partialCharge = 0;
}
updateQuickslot();
}
}
@Override
@@ -248,12 +256,11 @@ public class SandalsOfNature extends Artifact {
}
public class Naturalism extends ArtifactBuff{
public void charge(float amount) {
public void charge() {
if (cursed || target.buff(MagicImmune.class) != null) return;
if (charge < chargeCap){
//0.5 charge per grass at +0, up to 1 at +10
float chargeGain = (3f + level())/6f;
chargeGain *= amount;
chargeGain *= RingOfEnergy.artifactChargeMultiplier(target);
partialCharge += Math.max(0, chargeGain);
while (partialCharge >= 1){

View File

@@ -81,7 +81,7 @@ public class HighGrass {
if (naturalism != null) {
if (!naturalism.isCursed()) {
naturalismLevel = naturalism.itemLevel() + 1;
naturalism.charge(1);
naturalism.charge();
} else {
naturalismLevel = -1;
}