Pet level should be set properly to wanted value.
This commit is contained in:
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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"));
|
||||
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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"));
|
||||
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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"));
|
||||
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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"));
|
||||
|
||||
|
@@ -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;
|
||||
|
@@ -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;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -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<Integer> _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;
|
||||
}
|
||||
|
||||
|
@@ -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");
|
||||
|
@@ -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);
|
||||
}
|
||||
|
@@ -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));
|
||||
|
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<table maxLevel="85" maxPetLevel="86" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/experience.xsd">
|
||||
<table maxLevel="85" maxPetLevel="85" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/experience.xsd">
|
||||
<experience level="1" tolevel="0" />
|
||||
<experience level="2" tolevel="68" />
|
||||
<experience level="3" tolevel="363" />
|
||||
|
@@ -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;
|
||||
|
@@ -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;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -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<Integer> _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;
|
||||
}
|
||||
|
||||
|
@@ -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");
|
||||
|
@@ -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);
|
||||
}
|
||||
|
@@ -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));
|
||||
|
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<table maxLevel="85" maxPetLevel="86" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/experience.xsd">
|
||||
<table maxLevel="85" maxPetLevel="85" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/experience.xsd">
|
||||
<experience level="1" tolevel="0" />
|
||||
<experience level="2" tolevel="68" />
|
||||
<experience level="3" tolevel="363" />
|
||||
|
@@ -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;
|
||||
|
@@ -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;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -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<Integer> _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;
|
||||
}
|
||||
|
||||
|
@@ -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");
|
||||
|
@@ -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);
|
||||
}
|
||||
|
@@ -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));
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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.
|
||||
|
@@ -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");
|
||||
|
@@ -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;
|
||||
|
@@ -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);
|
||||
}
|
||||
|
@@ -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");
|
||||
|
@@ -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"));
|
||||
|
||||
|
@@ -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;
|
||||
|
@@ -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);
|
||||
}
|
||||
|
@@ -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");
|
||||
|
@@ -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"));
|
||||
|
||||
|
@@ -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;
|
||||
|
@@ -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);
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user