diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/clan/Clan.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/clan/Clan.java index 1ba6b570f3..e3e1dfe4d4 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/clan/Clan.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/clan/Clan.java @@ -3087,10 +3087,14 @@ public class Clan implements IIdentifiable, INamable public void addExp(int objId, int value) { - _exp += value; - broadcastToOnlineMembers(new ExPledgeV3Info(_exp, getRank(), getNotice(), isNoticeEnabled())); + if ((_exp + value) < EXP_TABLE[EXP_TABLE.length - 1]) + { + _exp += value; + broadcastToOnlineMembers(new ExPledgeV3Info(_exp, getRank(), getNotice(), isNoticeEnabled())); + } - if (((EXP_TABLE[Math.max(0, getLevel() + 1)]) <= _exp)) + final int nextLevel = getLevel() + 1; + if ((nextLevel < EXP_TABLE.length) && ((EXP_TABLE[Math.max(0, nextLevel)]) <= _exp)) { changeLevel(_level + 1); } diff --git a/L2J_Mobius_Essence_6.1_BattleChronicle/java/org/l2jmobius/gameserver/model/clan/Clan.java b/L2J_Mobius_Essence_6.1_BattleChronicle/java/org/l2jmobius/gameserver/model/clan/Clan.java index 1ba6b570f3..e3e1dfe4d4 100644 --- a/L2J_Mobius_Essence_6.1_BattleChronicle/java/org/l2jmobius/gameserver/model/clan/Clan.java +++ b/L2J_Mobius_Essence_6.1_BattleChronicle/java/org/l2jmobius/gameserver/model/clan/Clan.java @@ -3087,10 +3087,14 @@ public class Clan implements IIdentifiable, INamable public void addExp(int objId, int value) { - _exp += value; - broadcastToOnlineMembers(new ExPledgeV3Info(_exp, getRank(), getNotice(), isNoticeEnabled())); + if ((_exp + value) < EXP_TABLE[EXP_TABLE.length - 1]) + { + _exp += value; + broadcastToOnlineMembers(new ExPledgeV3Info(_exp, getRank(), getNotice(), isNoticeEnabled())); + } - if (((EXP_TABLE[Math.max(0, getLevel() + 1)]) <= _exp)) + final int nextLevel = getLevel() + 1; + if ((nextLevel < EXP_TABLE.length) && ((EXP_TABLE[Math.max(0, nextLevel)]) <= _exp)) { changeLevel(_level + 1); } diff --git a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/clan/Clan.java b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/clan/Clan.java index 1ba6b570f3..e3e1dfe4d4 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/clan/Clan.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/clan/Clan.java @@ -3087,10 +3087,14 @@ public class Clan implements IIdentifiable, INamable public void addExp(int objId, int value) { - _exp += value; - broadcastToOnlineMembers(new ExPledgeV3Info(_exp, getRank(), getNotice(), isNoticeEnabled())); + if ((_exp + value) < EXP_TABLE[EXP_TABLE.length - 1]) + { + _exp += value; + broadcastToOnlineMembers(new ExPledgeV3Info(_exp, getRank(), getNotice(), isNoticeEnabled())); + } - if (((EXP_TABLE[Math.max(0, getLevel() + 1)]) <= _exp)) + final int nextLevel = getLevel() + 1; + if ((nextLevel < EXP_TABLE.length) && ((EXP_TABLE[Math.max(0, nextLevel)]) <= _exp)) { changeLevel(_level + 1); }