diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java index 7198620161..7999fad0ca 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java @@ -57,6 +57,11 @@ public final class AttackTrait extends AbstractEffect { for (Entry trait : _attackTraits.entrySet()) { + if (charStat.getAttackTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getAttackTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getAttackTraitsCount()[trait.getKey().ordinal()]--; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java index b911bd1aa3..a3430d747d 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java @@ -76,11 +76,21 @@ public final class DefenceTrait extends AbstractEffect { if (trait.getValue() < 2.0f) { + if (charStat.getDefenceTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getDefenceTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getDefenceTraitsCount()[trait.getKey().ordinal()]--; } else { + if (charStat.getTraitsInvul()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getTraitsInvul()[trait.getKey().ordinal()]--; } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java index 7198620161..7999fad0ca 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java @@ -57,6 +57,11 @@ public final class AttackTrait extends AbstractEffect { for (Entry trait : _attackTraits.entrySet()) { + if (charStat.getAttackTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getAttackTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getAttackTraitsCount()[trait.getKey().ordinal()]--; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java index b911bd1aa3..a3430d747d 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java @@ -76,11 +76,21 @@ public final class DefenceTrait extends AbstractEffect { if (trait.getValue() < 2.0f) { + if (charStat.getDefenceTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getDefenceTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getDefenceTraitsCount()[trait.getKey().ordinal()]--; } else { + if (charStat.getTraitsInvul()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getTraitsInvul()[trait.getKey().ordinal()]--; } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java index 7198620161..7999fad0ca 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java @@ -57,6 +57,11 @@ public final class AttackTrait extends AbstractEffect { for (Entry trait : _attackTraits.entrySet()) { + if (charStat.getAttackTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getAttackTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getAttackTraitsCount()[trait.getKey().ordinal()]--; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java index b911bd1aa3..a3430d747d 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java @@ -76,11 +76,21 @@ public final class DefenceTrait extends AbstractEffect { if (trait.getValue() < 2.0f) { + if (charStat.getDefenceTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getDefenceTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getDefenceTraitsCount()[trait.getKey().ordinal()]--; } else { + if (charStat.getTraitsInvul()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getTraitsInvul()[trait.getKey().ordinal()]--; } } diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java index 7198620161..7999fad0ca 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java @@ -57,6 +57,11 @@ public final class AttackTrait extends AbstractEffect { for (Entry trait : _attackTraits.entrySet()) { + if (charStat.getAttackTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getAttackTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getAttackTraitsCount()[trait.getKey().ordinal()]--; } diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java index b911bd1aa3..a3430d747d 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java @@ -76,11 +76,21 @@ public final class DefenceTrait extends AbstractEffect { if (trait.getValue() < 2.0f) { + if (charStat.getDefenceTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getDefenceTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getDefenceTraitsCount()[trait.getKey().ordinal()]--; } else { + if (charStat.getTraitsInvul()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getTraitsInvul()[trait.getKey().ordinal()]--; } } diff --git a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java index 9001efd54d..6cc626f4aa 100644 --- a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java +++ b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java @@ -59,6 +59,11 @@ public final class AttackTrait extends AbstractEffect { for (Entry trait : _attackTraits.entrySet()) { + if (charStat.getAttackTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getAttackTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getAttackTraitsCount()[trait.getKey().ordinal()]--; } diff --git a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java index fadd5dd1c8..d97318a0ff 100644 --- a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java +++ b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java @@ -78,11 +78,21 @@ public final class DefenceTrait extends AbstractEffect { if (trait.getValue() < 2.0f) { + if (charStat.getDefenceTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getDefenceTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getDefenceTraitsCount()[trait.getKey().ordinal()]--; } else { + if (charStat.getTraitsInvul()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getTraitsInvul()[trait.getKey().ordinal()]--; } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java index 7198620161..7999fad0ca 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java @@ -57,6 +57,11 @@ public final class AttackTrait extends AbstractEffect { for (Entry trait : _attackTraits.entrySet()) { + if (charStat.getAttackTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getAttackTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getAttackTraitsCount()[trait.getKey().ordinal()]--; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java index b911bd1aa3..a3430d747d 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java @@ -76,11 +76,21 @@ public final class DefenceTrait extends AbstractEffect { if (trait.getValue() < 2.0f) { + if (charStat.getDefenceTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getDefenceTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getDefenceTraitsCount()[trait.getKey().ordinal()]--; } else { + if (charStat.getTraitsInvul()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getTraitsInvul()[trait.getKey().ordinal()]--; } } diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java index 7198620161..7999fad0ca 100644 --- a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/handlers/effecthandlers/AttackTrait.java @@ -57,6 +57,11 @@ public final class AttackTrait extends AbstractEffect { for (Entry trait : _attackTraits.entrySet()) { + if (charStat.getAttackTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getAttackTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getAttackTraitsCount()[trait.getKey().ordinal()]--; } diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java index b911bd1aa3..a3430d747d 100644 --- a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/handlers/effecthandlers/DefenceTrait.java @@ -76,11 +76,21 @@ public final class DefenceTrait extends AbstractEffect { if (trait.getValue() < 2.0f) { + if (charStat.getDefenceTraitsCount()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getDefenceTraits()[trait.getKey().ordinal()] /= trait.getValue(); charStat.getDefenceTraitsCount()[trait.getKey().ordinal()]--; } else { + if (charStat.getTraitsInvul()[trait.getKey().ordinal()] == 0) + { + return; + } + charStat.getTraitsInvul()[trait.getKey().ordinal()]--; } }