v2.4.0: fixed sandals of nature incorrectly interacting with recharging
This commit is contained in:
@@ -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){
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user