From 25fa7f050b90233e69785fa7dba77d936e821ecb Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Fri, 4 Nov 2022 01:33:28 +0000 Subject: [PATCH] Pet level should be set properly to wanted value. --- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/model/actor/instance/Pet.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/model/actor/instance/Pet.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/model/actor/instance/Pet.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/model/actor/instance/Pet.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../gameserver/data/xml/PetDataTable.java | 10 ++++++- .../l2jmobius/gameserver/model/PetData.java | 26 ++++++++++++++++--- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/model/actor/instance/Pet.java | 5 ++-- .../model/actor/stat/PlayerStat.java | 5 ++-- .../dist/game/data/stats/experience.xml | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../gameserver/data/xml/PetDataTable.java | 10 ++++++- .../l2jmobius/gameserver/model/PetData.java | 26 ++++++++++++++++--- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/model/actor/instance/Pet.java | 5 ++-- .../model/actor/stat/PlayerStat.java | 5 ++-- .../dist/game/data/stats/experience.xml | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../gameserver/data/xml/PetDataTable.java | 10 ++++++- .../l2jmobius/gameserver/model/PetData.java | 26 ++++++++++++++++--- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/model/actor/instance/Pet.java | 5 ++-- .../model/actor/stat/PlayerStat.java | 5 ++-- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 5 ++-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 4 +-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/model/actor/instance/Pet.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 4 +-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/model/actor/instance/Pet.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 4 +-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/model/actor/instance/Pet.java | 2 +- .../gameserver/data/xml/ExperienceData.java | 4 +-- .../l2jmobius/gameserver/model/PetData.java | 4 +-- .../gameserver/model/PetLevelData.java | 2 +- .../gameserver/model/actor/instance/Pet.java | 2 +- 106 files changed, 260 insertions(+), 198 deletions(-) diff --git a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 724b48821b..d8038fc4e0 100644 --- a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = MAX_LEVEL + 1; // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java index fcb5b98d0f..94d67fd4d8 100644 --- a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java +++ b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java @@ -854,7 +854,7 @@ public class Pet extends Summon return new Pet(template, owner, control); } - pet = new Pet(template, owner, control, rset.getByte("level")); + pet = new Pet(template, owner, control, rset.getInt("level")); pet._respawned = true; pet.setName(rset.getString("name")); diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 724b48821b..d8038fc4e0 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = MAX_LEVEL + 1; // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java index fcb5b98d0f..94d67fd4d8 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java @@ -854,7 +854,7 @@ public class Pet extends Summon return new Pet(template, owner, control); } - pet = new Pet(template, owner, control, rset.getByte("level")); + pet = new Pet(template, owner, control, rset.getInt("level")); pet._respawned = true; pet.setName(rset.getString("name")); diff --git a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 724b48821b..d8038fc4e0 100644 --- a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = MAX_LEVEL + 1; // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java index c24921124c..10b0de4158 100644 --- a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java +++ b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java @@ -854,7 +854,7 @@ public class Pet extends Summon return new Pet(template, owner, control); } - pet = new Pet(template, owner, control, rset.getByte("level")); + pet = new Pet(template, owner, control, rset.getInt("level")); pet._respawned = true; pet.setName(rset.getString("name")); diff --git a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 724b48821b..d8038fc4e0 100644 --- a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = MAX_LEVEL + 1; // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java index c24921124c..10b0de4158 100644 --- a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java +++ b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java @@ -854,7 +854,7 @@ public class Pet extends Summon return new Pet(template, owner, control); } - pet = new Pet(template, owner, control, rset.getByte("level")); + pet = new Pet(template, owner, control, rset.getInt("level")); pet._respawned = true; pet.setName(rset.getString("name")); diff --git a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 201bd0f6a5..1d7e3a9ce6 100644 --- a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -70,9 +70,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java index 9a30cd0471..5f5e078938 100644 --- a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java +++ b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java @@ -174,7 +174,15 @@ public class PetDataTable implements IXmlReader public PetLevelData getPetLevelData(int petId, int petLevel) { final PetData pd = getPetData(petId); - return pd != null ? pd.getPetLevelData(petLevel) : null; + if (pd != null) + { + if (petLevel > pd.getMaxLevel()) + { + return pd.getPetLevelData(pd.getMaxLevel()); + } + return pd.getPetLevelData(petLevel); + } + return null; } /** diff --git a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/PetData.java index b2a937de45..3c827a9cee 100644 --- a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/PetData.java @@ -40,6 +40,7 @@ public class PetData private int _load = 20000; private int _hungryLimit = 1; private int _minLevel = Byte.MAX_VALUE; + private int _maxLevel = 0; private boolean _syncLevel = false; private final Set _food = new HashSet<>(); @@ -75,6 +76,10 @@ public class PetData { _minLevel = level; } + if (_maxLevel < level) + { + _maxLevel = level; + } _levelStats.put(level, data); } @@ -119,6 +124,14 @@ public class PetData return _minLevel; } + /** + * @return the pet's maximum level. + */ + public int getMaxLevel() + { + return _maxLevel; + } + /** * @return the pet's food list. */ @@ -172,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. @@ -180,17 +192,19 @@ public class PetData public int getAvailableLevel(int skillId, int petLvl) { int lvl = 0; + boolean found = false; for (PetSkillLearn temp : _skills) { if (temp.getSkillId() != skillId) { continue; } + found = true; if (temp.getSkillLevel() == 0) { if (petLvl < 70) { - lvl = petLvl / 10; + lvl = (petLvl / 10); if (lvl <= 0) { lvl = 1; @@ -198,7 +212,7 @@ public class PetData } else { - lvl = 7 + ((petLvl - 70) / 5); + lvl = (7 + ((petLvl - 70) / 5)); } // formula usable for skill that have 10 or more skill levels @@ -209,11 +223,15 @@ public class PetData } break; } - if ((temp.getMinLevel() <= petLvl) && (temp.getSkillLevel() > lvl)) + else if ((temp.getMinLevel() <= petLvl) && (temp.getSkillLevel() > lvl)) { lvl = temp.getSkillLevel(); } } + if (found && (lvl == 0)) + { + return 1; + } return lvl; } diff --git a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/PetLevelData.java index 7de89778dc..66c9aa56d0 100644 --- a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java index f8633fbd3f..597271f52a 100644 --- a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java +++ b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java @@ -246,8 +246,9 @@ public class Pet extends Summon pet.setTitle(owner.getName()); if (data.isSynchLevel() && (pet.getLevel() != owner.getLevel())) { - pet.getStat().setLevel((byte) owner.getLevel()); - pet.getStat().setExp(pet.getStat().getExpForLevel(owner.getLevel())); + final byte availableLevel = (byte) Math.min(data.getMaxLevel(), owner.getLevel()); + pet.getStat().setLevel(availableLevel); + pet.getStat().setExp(pet.getStat().getExpForLevel(availableLevel)); } World.getInstance().addPet(owner.getObjectId(), pet); } diff --git a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java index b53d343d58..1ed833a4d2 100644 --- a/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java +++ b/L2J_Mobius_CT_0_Interlude/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java @@ -267,8 +267,9 @@ public class PlayerStat extends PlayableStat final Pet pet = (Pet) getActiveChar().getSummon(); if (pet.getPetData().isSynchLevel() && (pet.getLevel() != getLevel())) { - pet.getStat().setLevel(getLevel()); - pet.getStat().getExpForLevel(getActiveChar().getLevel()); + final byte availableLevel = (byte) Math.min(pet.getPetData().getMaxLevel(), getLevel()); + pet.getStat().setLevel(availableLevel); + pet.getStat().getExpForLevel(availableLevel); pet.setCurrentHp(pet.getMaxHp()); pet.setCurrentMp(pet.getMaxMp()); pet.broadcastPacket(new SocialAction(getActiveChar().getObjectId(), SocialAction.LEVEL_UP)); diff --git a/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/stats/experience.xml b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/stats/experience.xml index c348b298a1..0606d910eb 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/stats/experience.xml +++ b/L2J_Mobius_CT_2.4_Epilogue/dist/game/data/stats/experience.xml @@ -1,5 +1,5 @@ - +
diff --git a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 201bd0f6a5..1d7e3a9ce6 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -70,9 +70,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java index 9a30cd0471..5f5e078938 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java +++ b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java @@ -174,7 +174,15 @@ public class PetDataTable implements IXmlReader public PetLevelData getPetLevelData(int petId, int petLevel) { final PetData pd = getPetData(petId); - return pd != null ? pd.getPetLevelData(petLevel) : null; + if (pd != null) + { + if (petLevel > pd.getMaxLevel()) + { + return pd.getPetLevelData(pd.getMaxLevel()); + } + return pd.getPetLevelData(petLevel); + } + return null; } /** diff --git a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/PetData.java index b2a937de45..3c827a9cee 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/PetData.java @@ -40,6 +40,7 @@ public class PetData private int _load = 20000; private int _hungryLimit = 1; private int _minLevel = Byte.MAX_VALUE; + private int _maxLevel = 0; private boolean _syncLevel = false; private final Set _food = new HashSet<>(); @@ -75,6 +76,10 @@ public class PetData { _minLevel = level; } + if (_maxLevel < level) + { + _maxLevel = level; + } _levelStats.put(level, data); } @@ -119,6 +124,14 @@ public class PetData return _minLevel; } + /** + * @return the pet's maximum level. + */ + public int getMaxLevel() + { + return _maxLevel; + } + /** * @return the pet's food list. */ @@ -172,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. @@ -180,17 +192,19 @@ public class PetData public int getAvailableLevel(int skillId, int petLvl) { int lvl = 0; + boolean found = false; for (PetSkillLearn temp : _skills) { if (temp.getSkillId() != skillId) { continue; } + found = true; if (temp.getSkillLevel() == 0) { if (petLvl < 70) { - lvl = petLvl / 10; + lvl = (petLvl / 10); if (lvl <= 0) { lvl = 1; @@ -198,7 +212,7 @@ public class PetData } else { - lvl = 7 + ((petLvl - 70) / 5); + lvl = (7 + ((petLvl - 70) / 5)); } // formula usable for skill that have 10 or more skill levels @@ -209,11 +223,15 @@ public class PetData } break; } - if ((temp.getMinLevel() <= petLvl) && (temp.getSkillLevel() > lvl)) + else if ((temp.getMinLevel() <= petLvl) && (temp.getSkillLevel() > lvl)) { lvl = temp.getSkillLevel(); } } + if (found && (lvl == 0)) + { + return 1; + } return lvl; } diff --git a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/PetLevelData.java index 7de89778dc..66c9aa56d0 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java index 52ec898a3e..69fef697d4 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java +++ b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java @@ -248,8 +248,9 @@ public class Pet extends Summon pet.setTitle(owner.getName()); if (data.isSynchLevel() && (pet.getLevel() != owner.getLevel())) { - pet.getStat().setLevel((byte) owner.getLevel()); - pet.getStat().setExp(pet.getStat().getExpForLevel(owner.getLevel())); + final byte availableLevel = (byte) Math.min(data.getMaxLevel(), owner.getLevel()); + pet.getStat().setLevel(availableLevel); + pet.getStat().setExp(pet.getStat().getExpForLevel(availableLevel)); } World.getInstance().addPet(owner.getObjectId(), pet); } diff --git a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java index 26a6e99c95..40a5914164 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java +++ b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java @@ -280,8 +280,9 @@ public class PlayerStat extends PlayableStat final Pet pet = (Pet) getActiveChar().getSummon(); if (pet.getPetData().isSynchLevel() && (pet.getLevel() != getLevel())) { - pet.getStat().setLevel(getLevel()); - pet.getStat().getExpForLevel(getActiveChar().getLevel()); + final byte availableLevel = (byte) Math.min(pet.getPetData().getMaxLevel(), getLevel()); + pet.getStat().setLevel(availableLevel); + pet.getStat().getExpForLevel(availableLevel); pet.setCurrentHp(pet.getMaxHp()); pet.setCurrentMp(pet.getMaxMp()); pet.broadcastPacket(new SocialAction(getActiveChar().getObjectId(), SocialAction.LEVEL_UP)); diff --git a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/stats/experience.xml b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/stats/experience.xml index 23c18e938f..1e557cbd09 100644 --- a/L2J_Mobius_CT_2.6_HighFive/dist/game/data/stats/experience.xml +++ b/L2J_Mobius_CT_2.6_HighFive/dist/game/data/stats/experience.xml @@ -1,5 +1,5 @@ -
+
diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 201bd0f6a5..1d7e3a9ce6 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -70,9 +70,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java index 9a30cd0471..5f5e078938 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/data/xml/PetDataTable.java @@ -174,7 +174,15 @@ public class PetDataTable implements IXmlReader public PetLevelData getPetLevelData(int petId, int petLevel) { final PetData pd = getPetData(petId); - return pd != null ? pd.getPetLevelData(petLevel) : null; + if (pd != null) + { + if (petLevel > pd.getMaxLevel()) + { + return pd.getPetLevelData(pd.getMaxLevel()); + } + return pd.getPetLevelData(petLevel); + } + return null; } /** diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/PetData.java index b2a937de45..3c827a9cee 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/PetData.java @@ -40,6 +40,7 @@ public class PetData private int _load = 20000; private int _hungryLimit = 1; private int _minLevel = Byte.MAX_VALUE; + private int _maxLevel = 0; private boolean _syncLevel = false; private final Set _food = new HashSet<>(); @@ -75,6 +76,10 @@ public class PetData { _minLevel = level; } + if (_maxLevel < level) + { + _maxLevel = level; + } _levelStats.put(level, data); } @@ -119,6 +124,14 @@ public class PetData return _minLevel; } + /** + * @return the pet's maximum level. + */ + public int getMaxLevel() + { + return _maxLevel; + } + /** * @return the pet's food list. */ @@ -172,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. @@ -180,17 +192,19 @@ public class PetData public int getAvailableLevel(int skillId, int petLvl) { int lvl = 0; + boolean found = false; for (PetSkillLearn temp : _skills) { if (temp.getSkillId() != skillId) { continue; } + found = true; if (temp.getSkillLevel() == 0) { if (petLvl < 70) { - lvl = petLvl / 10; + lvl = (petLvl / 10); if (lvl <= 0) { lvl = 1; @@ -198,7 +212,7 @@ public class PetData } else { - lvl = 7 + ((petLvl - 70) / 5); + lvl = (7 + ((petLvl - 70) / 5)); } // formula usable for skill that have 10 or more skill levels @@ -209,11 +223,15 @@ public class PetData } break; } - if ((temp.getMinLevel() <= petLvl) && (temp.getSkillLevel() > lvl)) + else if ((temp.getMinLevel() <= petLvl) && (temp.getSkillLevel() > lvl)) { lvl = temp.getSkillLevel(); } } + if (found && (lvl == 0)) + { + return 1; + } return lvl; } diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/PetLevelData.java index 7de89778dc..66c9aa56d0 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java index 52ec898a3e..69fef697d4 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java @@ -248,8 +248,9 @@ public class Pet extends Summon pet.setTitle(owner.getName()); if (data.isSynchLevel() && (pet.getLevel() != owner.getLevel())) { - pet.getStat().setLevel((byte) owner.getLevel()); - pet.getStat().setExp(pet.getStat().getExpForLevel(owner.getLevel())); + final byte availableLevel = (byte) Math.min(data.getMaxLevel(), owner.getLevel()); + pet.getStat().setLevel(availableLevel); + pet.getStat().setExp(pet.getStat().getExpForLevel(availableLevel)); } World.getInstance().addPet(owner.getObjectId(), pet); } diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java index bddbbac503..c4aebcd89a 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java @@ -313,8 +313,9 @@ public class PlayerStat extends PlayableStat final Pet pet = (Pet) getActiveChar().getSummon(); if (pet.getPetData().isSynchLevel() && (pet.getLevel() != getLevel())) { - pet.getStat().setLevel(getLevel()); - pet.getStat().getExpForLevel(getActiveChar().getLevel()); + final byte availableLevel = (byte) Math.min(pet.getPetData().getMaxLevel(), getLevel()); + pet.getStat().setLevel(availableLevel); + pet.getStat().getExpForLevel(availableLevel); pet.setCurrentHp(pet.getMaxHp()); pet.setCurrentMp(pet.getMaxMp()); pet.broadcastPacket(new SocialAction(getActiveChar().getObjectId(), SocialAction.LEVEL_UP)); diff --git a/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 0682362e72..713a3f3161 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = (byte) (MAX_LEVEL + 1); // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/PetData.java index 231b85e85f..3c827a9cee 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/PetData.java @@ -76,9 +76,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } @@ -185,7 +185,6 @@ public class PetData } /** - * TODO: Simplify this. * @param skillId the skill Id. * @param petLvl the pet level. * @return the level of the skill for the given skill Id and pet level. diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 724b48821b..d8038fc4e0 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = MAX_LEVEL + 1; // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/PetData.java index 05421daeae..a275619ac5 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/PetData.java @@ -100,9 +100,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java index 89327b3579..213db0f1b2 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java @@ -993,7 +993,7 @@ public class Pet extends Summon return new Pet(template, owner, control); } - pet = new Pet(template, owner, control, rset.getByte("level")); + pet = new Pet(template, owner, control, rset.getInt("level")); pet._respawned = true; pet.setName(rset.getString("name")); diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 724b48821b..d8038fc4e0 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = MAX_LEVEL + 1; // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/PetData.java index 05421daeae..a275619ac5 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/PetData.java @@ -100,9 +100,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java index 15b835dbfc..ce78095255 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java @@ -993,7 +993,7 @@ public class Pet extends Summon return new Pet(template, owner, control); } - pet = new Pet(template, owner, control, rset.getByte("level")); + pet = new Pet(template, owner, control, rset.getInt("level")); pet._respawned = true; pet.setName(rset.getString("name")); diff --git a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 724b48821b..d8038fc4e0 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = MAX_LEVEL + 1; // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/PetData.java index 05421daeae..a275619ac5 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/PetData.java @@ -100,9 +100,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } diff --git a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java index a8b65242de..5436affd90 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java @@ -993,7 +993,7 @@ public class Pet extends Summon return new Pet(template, owner, control); } - pet = new Pet(template, owner, control, rset.getByte("level")); + pet = new Pet(template, owner, control, rset.getInt("level")); pet._respawned = true; pet.setName(rset.getString("name")); diff --git a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java index 724b48821b..d8038fc4e0 100644 --- a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java +++ b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/data/xml/ExperienceData.java @@ -72,9 +72,9 @@ public class ExperienceData implements IXmlReader { MAX_LEVEL = Config.PLAYER_MAXIMUM_LEVEL; } - if (MAX_PET_LEVEL > MAX_LEVEL) + if (MAX_PET_LEVEL > (MAX_LEVEL + 1)) { - MAX_PET_LEVEL = MAX_LEVEL; // Pet level should not exceed owner level. + MAX_PET_LEVEL = MAX_LEVEL + 1; // Pet level should not exceed owner level. } int maxLevel = 0; diff --git a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/PetData.java b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/PetData.java index 05421daeae..a275619ac5 100644 --- a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/PetData.java +++ b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/PetData.java @@ -100,9 +100,9 @@ public class PetData { _minLevel = level; } - if (_maxLevel < (level - 1)) + if (_maxLevel < level) { - _maxLevel = level - 1; + _maxLevel = level; } _levelStats.put(level, data); } diff --git a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/PetLevelData.java b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/PetLevelData.java index 77c42b65ae..4ee385f6f9 100644 --- a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/PetLevelData.java +++ b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/PetLevelData.java @@ -49,7 +49,7 @@ public class PetLevelData public PetLevelData(StatSet set) { _ownerExpTaken = set.getInt("get_exp_type"); - _petMaxExp = set.getLong("exp"); + _petMaxExp = (long) set.getDouble("exp"); _petMaxHP = set.getFloat("org_hp"); _petMaxMP = set.getFloat("org_mp"); _petPAtk = set.getFloat("org_pattack"); diff --git a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java index a8b65242de..5436affd90 100644 --- a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java +++ b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/actor/instance/Pet.java @@ -993,7 +993,7 @@ public class Pet extends Summon return new Pet(template, owner, control); } - pet = new Pet(template, owner, control, rset.getByte("level")); + pet = new Pet(template, owner, control, rset.getInt("level")); pet._respawned = true; pet.setName(rset.getString("name"));