Fixed negative healing when player has limiting effects.

Contributed by Sahar.
This commit is contained in:
MobiusDevelopment
2020-06-28 00:14:49 +00:00
parent a3a76a85a0
commit 727fca9827
90 changed files with 135 additions and 135 deletions

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -130,7 +130,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -75,7 +75,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -71,12 +71,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}

View File

@@ -66,12 +66,12 @@ public class Cp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, effected.getMaxRecoverableCp() - effected.getCurrentCp());
amount = Math.min((effected.getMaxCp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableCp() - effected.getCurrentCp()));
break;
}
}

View File

@@ -125,7 +125,7 @@ public class Heal extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount != 0)
{
final double newHp = amount + effected.getCurrentHp();

View File

@@ -70,7 +70,7 @@ public class HealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
if (amount >= 0)
{
if (amount != 0)

View File

@@ -66,12 +66,12 @@ public class Hp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, effected.getMaxRecoverableHp() - effected.getCurrentHp());
amount = Math.min((effected.getMaxHp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableHp() - effected.getCurrentHp()));
break;
}
}

View File

@@ -70,7 +70,7 @@ public class ManaHealPercent extends AbstractEffect
}
// Prevents overheal
amount = Math.min(amount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(amount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
if (amount != 0)
{
final double newMp = amount + effected.getCurrentMp();

View File

@@ -66,12 +66,12 @@ public class Mp extends AbstractEffect
{
case DIFF:
{
amount = Math.min(basicAmount, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min(basicAmount, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
case PER:
{
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, effected.getMaxRecoverableMp() - effected.getCurrentMp());
amount = Math.min((effected.getMaxMp() * basicAmount) / 100.0, Math.max(0, effected.getMaxRecoverableMp() - effected.getCurrentMp()));
break;
}
}