Fix for dual class skills (Exalted skills).
Thanks to nasseka.
This commit is contained in:
+3
-20
@@ -7370,12 +7370,9 @@ public class PlayerInstance extends Playable
|
|||||||
if (store)
|
if (store)
|
||||||
{
|
{
|
||||||
storeSkill(newSkill, oldSkill, -1);
|
storeSkill(newSkill, oldSkill, -1);
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
||||||
if (!dualClassSkills.contains(newSkill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
for (Skill dualSkill : dualClassSkills)
|
||||||
{
|
{
|
||||||
if (dualSkill.getId() == newSkill.getId())
|
if (dualSkill.getId() == newSkill.getId())
|
||||||
@@ -7386,7 +7383,7 @@ public class PlayerInstance extends Playable
|
|||||||
}
|
}
|
||||||
dualClassSkills.add(newSkill);
|
dualClassSkills.add(newSkill);
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return oldSkill;
|
return oldSkill;
|
||||||
@@ -7539,8 +7536,6 @@ public class PlayerInstance extends Playable
|
|||||||
*/
|
*/
|
||||||
private void restoreSkills()
|
private void restoreSkills()
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
|
||||||
|
|
||||||
try (Connection con = DatabaseFactory.getConnection();
|
try (Connection con = DatabaseFactory.getConnection();
|
||||||
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
||||||
{
|
{
|
||||||
@@ -7563,20 +7558,6 @@ public class PlayerInstance extends Playable
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, id) && !dualClassSkills.contains(skill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
|
||||||
{
|
|
||||||
if (dualSkill.getId() == skill.getId())
|
|
||||||
{
|
|
||||||
dualClassSkills.remove(dualSkill);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dualClassSkills.add(skill);
|
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
||||||
addSkill(skill);
|
addSkill(skill);
|
||||||
|
|
||||||
@@ -7599,8 +7580,10 @@ public class PlayerInstance extends Playable
|
|||||||
// Learn known dualclass skills.
|
// Learn known dualclass skills.
|
||||||
if (isDualClassActive() || !isSubClassActive())
|
if (isDualClassActive() || !isSubClassActive())
|
||||||
{
|
{
|
||||||
|
final List<Skill> dualClassSkills = new ArrayList<>(getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, Collections.emptyList()));
|
||||||
for (Skill skill : dualClassSkills)
|
for (Skill skill : dualClassSkills)
|
||||||
{
|
{
|
||||||
|
removeSkill(skill);
|
||||||
addSkill(skill, true);
|
addSkill(skill, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-20
@@ -7377,12 +7377,9 @@ public class PlayerInstance extends Playable
|
|||||||
if (store)
|
if (store)
|
||||||
{
|
{
|
||||||
storeSkill(newSkill, oldSkill, -1);
|
storeSkill(newSkill, oldSkill, -1);
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
||||||
if (!dualClassSkills.contains(newSkill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
for (Skill dualSkill : dualClassSkills)
|
||||||
{
|
{
|
||||||
if (dualSkill.getId() == newSkill.getId())
|
if (dualSkill.getId() == newSkill.getId())
|
||||||
@@ -7393,7 +7390,7 @@ public class PlayerInstance extends Playable
|
|||||||
}
|
}
|
||||||
dualClassSkills.add(newSkill);
|
dualClassSkills.add(newSkill);
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return oldSkill;
|
return oldSkill;
|
||||||
@@ -7546,8 +7543,6 @@ public class PlayerInstance extends Playable
|
|||||||
*/
|
*/
|
||||||
private void restoreSkills()
|
private void restoreSkills()
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
|
||||||
|
|
||||||
try (Connection con = DatabaseFactory.getConnection();
|
try (Connection con = DatabaseFactory.getConnection();
|
||||||
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
||||||
{
|
{
|
||||||
@@ -7570,20 +7565,6 @@ public class PlayerInstance extends Playable
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, id) && !dualClassSkills.contains(skill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
|
||||||
{
|
|
||||||
if (dualSkill.getId() == skill.getId())
|
|
||||||
{
|
|
||||||
dualClassSkills.remove(dualSkill);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dualClassSkills.add(skill);
|
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
||||||
addSkill(skill);
|
addSkill(skill);
|
||||||
|
|
||||||
@@ -7606,8 +7587,10 @@ public class PlayerInstance extends Playable
|
|||||||
// Learn known dualclass skills.
|
// Learn known dualclass skills.
|
||||||
if (isDualClassActive() || !isSubClassActive())
|
if (isDualClassActive() || !isSubClassActive())
|
||||||
{
|
{
|
||||||
|
final List<Skill> dualClassSkills = new ArrayList<>(getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, Collections.emptyList()));
|
||||||
for (Skill skill : dualClassSkills)
|
for (Skill skill : dualClassSkills)
|
||||||
{
|
{
|
||||||
|
removeSkill(skill);
|
||||||
addSkill(skill, true);
|
addSkill(skill, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-20
@@ -7379,12 +7379,9 @@ public class PlayerInstance extends Playable
|
|||||||
if (store)
|
if (store)
|
||||||
{
|
{
|
||||||
storeSkill(newSkill, oldSkill, -1);
|
storeSkill(newSkill, oldSkill, -1);
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
||||||
if (!dualClassSkills.contains(newSkill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
for (Skill dualSkill : dualClassSkills)
|
||||||
{
|
{
|
||||||
if (dualSkill.getId() == newSkill.getId())
|
if (dualSkill.getId() == newSkill.getId())
|
||||||
@@ -7395,7 +7392,7 @@ public class PlayerInstance extends Playable
|
|||||||
}
|
}
|
||||||
dualClassSkills.add(newSkill);
|
dualClassSkills.add(newSkill);
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return oldSkill;
|
return oldSkill;
|
||||||
@@ -7548,8 +7545,6 @@ public class PlayerInstance extends Playable
|
|||||||
*/
|
*/
|
||||||
private void restoreSkills()
|
private void restoreSkills()
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
|
||||||
|
|
||||||
try (Connection con = DatabaseFactory.getConnection();
|
try (Connection con = DatabaseFactory.getConnection();
|
||||||
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
||||||
{
|
{
|
||||||
@@ -7572,20 +7567,6 @@ public class PlayerInstance extends Playable
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, id) && !dualClassSkills.contains(skill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
|
||||||
{
|
|
||||||
if (dualSkill.getId() == skill.getId())
|
|
||||||
{
|
|
||||||
dualClassSkills.remove(dualSkill);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dualClassSkills.add(skill);
|
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
||||||
addSkill(skill);
|
addSkill(skill);
|
||||||
|
|
||||||
@@ -7608,8 +7589,10 @@ public class PlayerInstance extends Playable
|
|||||||
// Learn known dualclass skills.
|
// Learn known dualclass skills.
|
||||||
if (isDualClassActive() || !isSubClassActive())
|
if (isDualClassActive() || !isSubClassActive())
|
||||||
{
|
{
|
||||||
|
final List<Skill> dualClassSkills = new ArrayList<>(getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, Collections.emptyList()));
|
||||||
for (Skill skill : dualClassSkills)
|
for (Skill skill : dualClassSkills)
|
||||||
{
|
{
|
||||||
|
removeSkill(skill);
|
||||||
addSkill(skill, true);
|
addSkill(skill, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-20
@@ -7374,12 +7374,9 @@ public class PlayerInstance extends Playable
|
|||||||
if (store)
|
if (store)
|
||||||
{
|
{
|
||||||
storeSkill(newSkill, oldSkill, -1);
|
storeSkill(newSkill, oldSkill, -1);
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
||||||
if (!dualClassSkills.contains(newSkill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
for (Skill dualSkill : dualClassSkills)
|
||||||
{
|
{
|
||||||
if (dualSkill.getId() == newSkill.getId())
|
if (dualSkill.getId() == newSkill.getId())
|
||||||
@@ -7390,7 +7387,7 @@ public class PlayerInstance extends Playable
|
|||||||
}
|
}
|
||||||
dualClassSkills.add(newSkill);
|
dualClassSkills.add(newSkill);
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return oldSkill;
|
return oldSkill;
|
||||||
@@ -7543,8 +7540,6 @@ public class PlayerInstance extends Playable
|
|||||||
*/
|
*/
|
||||||
private void restoreSkills()
|
private void restoreSkills()
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
|
||||||
|
|
||||||
try (Connection con = DatabaseFactory.getConnection();
|
try (Connection con = DatabaseFactory.getConnection();
|
||||||
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
||||||
{
|
{
|
||||||
@@ -7567,20 +7562,6 @@ public class PlayerInstance extends Playable
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, id) && !dualClassSkills.contains(skill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
|
||||||
{
|
|
||||||
if (dualSkill.getId() == skill.getId())
|
|
||||||
{
|
|
||||||
dualClassSkills.remove(dualSkill);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dualClassSkills.add(skill);
|
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
||||||
addSkill(skill);
|
addSkill(skill);
|
||||||
|
|
||||||
@@ -7603,8 +7584,10 @@ public class PlayerInstance extends Playable
|
|||||||
// Learn known dualclass skills.
|
// Learn known dualclass skills.
|
||||||
if (isDualClassActive() || !isSubClassActive())
|
if (isDualClassActive() || !isSubClassActive())
|
||||||
{
|
{
|
||||||
|
final List<Skill> dualClassSkills = new ArrayList<>(getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, Collections.emptyList()));
|
||||||
for (Skill skill : dualClassSkills)
|
for (Skill skill : dualClassSkills)
|
||||||
{
|
{
|
||||||
|
removeSkill(skill);
|
||||||
addSkill(skill, true);
|
addSkill(skill, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-20
@@ -7356,12 +7356,9 @@ public class PlayerInstance extends Playable
|
|||||||
if (store)
|
if (store)
|
||||||
{
|
{
|
||||||
storeSkill(newSkill, oldSkill, -1);
|
storeSkill(newSkill, oldSkill, -1);
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
||||||
if (!dualClassSkills.contains(newSkill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
for (Skill dualSkill : dualClassSkills)
|
||||||
{
|
{
|
||||||
if (dualSkill.getId() == newSkill.getId())
|
if (dualSkill.getId() == newSkill.getId())
|
||||||
@@ -7372,7 +7369,7 @@ public class PlayerInstance extends Playable
|
|||||||
}
|
}
|
||||||
dualClassSkills.add(newSkill);
|
dualClassSkills.add(newSkill);
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return oldSkill;
|
return oldSkill;
|
||||||
@@ -7525,8 +7522,6 @@ public class PlayerInstance extends Playable
|
|||||||
*/
|
*/
|
||||||
private void restoreSkills()
|
private void restoreSkills()
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
|
||||||
|
|
||||||
try (Connection con = DatabaseFactory.getConnection();
|
try (Connection con = DatabaseFactory.getConnection();
|
||||||
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
||||||
{
|
{
|
||||||
@@ -7549,20 +7544,6 @@ public class PlayerInstance extends Playable
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, id) && !dualClassSkills.contains(skill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
|
||||||
{
|
|
||||||
if (dualSkill.getId() == skill.getId())
|
|
||||||
{
|
|
||||||
dualClassSkills.remove(dualSkill);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dualClassSkills.add(skill);
|
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
||||||
addSkill(skill);
|
addSkill(skill);
|
||||||
|
|
||||||
@@ -7585,8 +7566,10 @@ public class PlayerInstance extends Playable
|
|||||||
// Learn known dualclass skills.
|
// Learn known dualclass skills.
|
||||||
if (isDualClassActive() || !isSubClassActive())
|
if (isDualClassActive() || !isSubClassActive())
|
||||||
{
|
{
|
||||||
|
final List<Skill> dualClassSkills = new ArrayList<>(getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, Collections.emptyList()));
|
||||||
for (Skill skill : dualClassSkills)
|
for (Skill skill : dualClassSkills)
|
||||||
{
|
{
|
||||||
|
removeSkill(skill);
|
||||||
addSkill(skill, true);
|
addSkill(skill, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-20
@@ -7356,12 +7356,9 @@ public class PlayerInstance extends Playable
|
|||||||
if (store)
|
if (store)
|
||||||
{
|
{
|
||||||
storeSkill(newSkill, oldSkill, -1);
|
storeSkill(newSkill, oldSkill, -1);
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
||||||
if (!dualClassSkills.contains(newSkill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
for (Skill dualSkill : dualClassSkills)
|
||||||
{
|
{
|
||||||
if (dualSkill.getId() == newSkill.getId())
|
if (dualSkill.getId() == newSkill.getId())
|
||||||
@@ -7372,7 +7369,7 @@ public class PlayerInstance extends Playable
|
|||||||
}
|
}
|
||||||
dualClassSkills.add(newSkill);
|
dualClassSkills.add(newSkill);
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return oldSkill;
|
return oldSkill;
|
||||||
@@ -7525,8 +7522,6 @@ public class PlayerInstance extends Playable
|
|||||||
*/
|
*/
|
||||||
private void restoreSkills()
|
private void restoreSkills()
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
|
||||||
|
|
||||||
try (Connection con = DatabaseFactory.getConnection();
|
try (Connection con = DatabaseFactory.getConnection();
|
||||||
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
||||||
{
|
{
|
||||||
@@ -7549,20 +7544,6 @@ public class PlayerInstance extends Playable
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, id) && !dualClassSkills.contains(skill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
|
||||||
{
|
|
||||||
if (dualSkill.getId() == skill.getId())
|
|
||||||
{
|
|
||||||
dualClassSkills.remove(dualSkill);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dualClassSkills.add(skill);
|
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
||||||
addSkill(skill);
|
addSkill(skill);
|
||||||
|
|
||||||
@@ -7585,8 +7566,10 @@ public class PlayerInstance extends Playable
|
|||||||
// Learn known dualclass skills.
|
// Learn known dualclass skills.
|
||||||
if (isDualClassActive() || !isSubClassActive())
|
if (isDualClassActive() || !isSubClassActive())
|
||||||
{
|
{
|
||||||
|
final List<Skill> dualClassSkills = new ArrayList<>(getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, Collections.emptyList()));
|
||||||
for (Skill skill : dualClassSkills)
|
for (Skill skill : dualClassSkills)
|
||||||
{
|
{
|
||||||
|
removeSkill(skill);
|
||||||
addSkill(skill, true);
|
addSkill(skill, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-20
@@ -7357,12 +7357,9 @@ public class PlayerInstance extends Playable
|
|||||||
if (store)
|
if (store)
|
||||||
{
|
{
|
||||||
storeSkill(newSkill, oldSkill, -1);
|
storeSkill(newSkill, oldSkill, -1);
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
||||||
if (!dualClassSkills.contains(newSkill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
for (Skill dualSkill : dualClassSkills)
|
||||||
{
|
{
|
||||||
if (dualSkill.getId() == newSkill.getId())
|
if (dualSkill.getId() == newSkill.getId())
|
||||||
@@ -7373,7 +7370,7 @@ public class PlayerInstance extends Playable
|
|||||||
}
|
}
|
||||||
dualClassSkills.add(newSkill);
|
dualClassSkills.add(newSkill);
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return oldSkill;
|
return oldSkill;
|
||||||
@@ -7526,8 +7523,6 @@ public class PlayerInstance extends Playable
|
|||||||
*/
|
*/
|
||||||
private void restoreSkills()
|
private void restoreSkills()
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
|
||||||
|
|
||||||
try (Connection con = DatabaseFactory.getConnection();
|
try (Connection con = DatabaseFactory.getConnection();
|
||||||
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
||||||
{
|
{
|
||||||
@@ -7550,20 +7545,6 @@ public class PlayerInstance extends Playable
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, id) && !dualClassSkills.contains(skill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
|
||||||
{
|
|
||||||
if (dualSkill.getId() == skill.getId())
|
|
||||||
{
|
|
||||||
dualClassSkills.remove(dualSkill);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dualClassSkills.add(skill);
|
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
||||||
addSkill(skill);
|
addSkill(skill);
|
||||||
|
|
||||||
@@ -7586,8 +7567,10 @@ public class PlayerInstance extends Playable
|
|||||||
// Learn known dualclass skills.
|
// Learn known dualclass skills.
|
||||||
if (isDualClassActive() || !isSubClassActive())
|
if (isDualClassActive() || !isSubClassActive())
|
||||||
{
|
{
|
||||||
|
final List<Skill> dualClassSkills = new ArrayList<>(getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, Collections.emptyList()));
|
||||||
for (Skill skill : dualClassSkills)
|
for (Skill skill : dualClassSkills)
|
||||||
{
|
{
|
||||||
|
removeSkill(skill);
|
||||||
addSkill(skill, true);
|
addSkill(skill, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-20
@@ -7371,12 +7371,9 @@ public class PlayerInstance extends Playable
|
|||||||
if (store)
|
if (store)
|
||||||
{
|
{
|
||||||
storeSkill(newSkill, oldSkill, -1);
|
storeSkill(newSkill, oldSkill, -1);
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
||||||
if (!dualClassSkills.contains(newSkill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
for (Skill dualSkill : dualClassSkills)
|
||||||
{
|
{
|
||||||
if (dualSkill.getId() == newSkill.getId())
|
if (dualSkill.getId() == newSkill.getId())
|
||||||
@@ -7387,7 +7384,7 @@ public class PlayerInstance extends Playable
|
|||||||
}
|
}
|
||||||
dualClassSkills.add(newSkill);
|
dualClassSkills.add(newSkill);
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return oldSkill;
|
return oldSkill;
|
||||||
@@ -7540,8 +7537,6 @@ public class PlayerInstance extends Playable
|
|||||||
*/
|
*/
|
||||||
private void restoreSkills()
|
private void restoreSkills()
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
|
||||||
|
|
||||||
try (Connection con = DatabaseFactory.getConnection();
|
try (Connection con = DatabaseFactory.getConnection();
|
||||||
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
||||||
{
|
{
|
||||||
@@ -7564,20 +7559,6 @@ public class PlayerInstance extends Playable
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, id) && !dualClassSkills.contains(skill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
|
||||||
{
|
|
||||||
if (dualSkill.getId() == skill.getId())
|
|
||||||
{
|
|
||||||
dualClassSkills.remove(dualSkill);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dualClassSkills.add(skill);
|
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
||||||
addSkill(skill);
|
addSkill(skill);
|
||||||
|
|
||||||
@@ -7600,8 +7581,10 @@ public class PlayerInstance extends Playable
|
|||||||
// Learn known dualclass skills.
|
// Learn known dualclass skills.
|
||||||
if (isDualClassActive() || !isSubClassActive())
|
if (isDualClassActive() || !isSubClassActive())
|
||||||
{
|
{
|
||||||
|
final List<Skill> dualClassSkills = new ArrayList<>(getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, Collections.emptyList()));
|
||||||
for (Skill skill : dualClassSkills)
|
for (Skill skill : dualClassSkills)
|
||||||
{
|
{
|
||||||
|
removeSkill(skill);
|
||||||
addSkill(skill, true);
|
addSkill(skill, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-20
@@ -7473,12 +7473,9 @@ public class PlayerInstance extends Playable
|
|||||||
if (store)
|
if (store)
|
||||||
{
|
{
|
||||||
storeSkill(newSkill, oldSkill, -1);
|
storeSkill(newSkill, oldSkill, -1);
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
||||||
if (!dualClassSkills.contains(newSkill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
for (Skill dualSkill : dualClassSkills)
|
||||||
{
|
{
|
||||||
if (dualSkill.getId() == newSkill.getId())
|
if (dualSkill.getId() == newSkill.getId())
|
||||||
@@ -7489,7 +7486,7 @@ public class PlayerInstance extends Playable
|
|||||||
}
|
}
|
||||||
dualClassSkills.add(newSkill);
|
dualClassSkills.add(newSkill);
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return oldSkill;
|
return oldSkill;
|
||||||
@@ -7642,8 +7639,6 @@ public class PlayerInstance extends Playable
|
|||||||
*/
|
*/
|
||||||
private void restoreSkills()
|
private void restoreSkills()
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
|
||||||
|
|
||||||
try (Connection con = DatabaseFactory.getConnection();
|
try (Connection con = DatabaseFactory.getConnection();
|
||||||
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
||||||
{
|
{
|
||||||
@@ -7666,20 +7661,6 @@ public class PlayerInstance extends Playable
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, id) && !dualClassSkills.contains(skill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
|
||||||
{
|
|
||||||
if (dualSkill.getId() == skill.getId())
|
|
||||||
{
|
|
||||||
dualClassSkills.remove(dualSkill);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dualClassSkills.add(skill);
|
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
||||||
addSkill(skill);
|
addSkill(skill);
|
||||||
|
|
||||||
@@ -7702,8 +7683,10 @@ public class PlayerInstance extends Playable
|
|||||||
// Learn known dualclass skills.
|
// Learn known dualclass skills.
|
||||||
if (isDualClassActive() || !isSubClassActive())
|
if (isDualClassActive() || !isSubClassActive())
|
||||||
{
|
{
|
||||||
|
final List<Skill> dualClassSkills = new ArrayList<>(getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, Collections.emptyList()));
|
||||||
for (Skill skill : dualClassSkills)
|
for (Skill skill : dualClassSkills)
|
||||||
{
|
{
|
||||||
|
removeSkill(skill);
|
||||||
addSkill(skill, true);
|
addSkill(skill, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-20
@@ -7499,12 +7499,9 @@ public class PlayerInstance extends Playable
|
|||||||
if (store)
|
if (store)
|
||||||
{
|
{
|
||||||
storeSkill(newSkill, oldSkill, -1);
|
storeSkill(newSkill, oldSkill, -1);
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
if (CommonUtil.contains(DUAL_CLASS_SKILLS, newSkill.getId()))
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
||||||
if (!dualClassSkills.contains(newSkill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
for (Skill dualSkill : dualClassSkills)
|
||||||
{
|
{
|
||||||
if (dualSkill.getId() == newSkill.getId())
|
if (dualSkill.getId() == newSkill.getId())
|
||||||
@@ -7515,7 +7512,7 @@ public class PlayerInstance extends Playable
|
|||||||
}
|
}
|
||||||
dualClassSkills.add(newSkill);
|
dualClassSkills.add(newSkill);
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return oldSkill;
|
return oldSkill;
|
||||||
@@ -7668,8 +7665,6 @@ public class PlayerInstance extends Playable
|
|||||||
*/
|
*/
|
||||||
private void restoreSkills()
|
private void restoreSkills()
|
||||||
{
|
{
|
||||||
final List<Skill> dualClassSkills = getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, new ArrayList<>());
|
|
||||||
|
|
||||||
try (Connection con = DatabaseFactory.getConnection();
|
try (Connection con = DatabaseFactory.getConnection();
|
||||||
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
PreparedStatement statement = con.prepareStatement(RESTORE_SKILLS_FOR_CHAR))
|
||||||
{
|
{
|
||||||
@@ -7692,20 +7687,6 @@ public class PlayerInstance extends Playable
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CommonUtil.contains(DUAL_CLASS_SKILLS, id) && !dualClassSkills.contains(skill))
|
|
||||||
{
|
|
||||||
for (Skill dualSkill : dualClassSkills)
|
|
||||||
{
|
|
||||||
if (dualSkill.getId() == skill.getId())
|
|
||||||
{
|
|
||||||
dualClassSkills.remove(dualSkill);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dualClassSkills.add(skill);
|
|
||||||
getVariables().set(KNOWN_DUAL_SKILLS_VAR, dualClassSkills);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
// Add the Skill object to the Creature _skills and its Func objects to the calculator set of the Creature
|
||||||
addSkill(skill);
|
addSkill(skill);
|
||||||
|
|
||||||
@@ -7728,8 +7709,10 @@ public class PlayerInstance extends Playable
|
|||||||
// Learn known dualclass skills.
|
// Learn known dualclass skills.
|
||||||
if (isDualClassActive() || !isSubClassActive())
|
if (isDualClassActive() || !isSubClassActive())
|
||||||
{
|
{
|
||||||
|
final List<Skill> dualClassSkills = new ArrayList<>(getVariables().getList(KNOWN_DUAL_SKILLS_VAR, Skill.class, Collections.emptyList()));
|
||||||
for (Skill skill : dualClassSkills)
|
for (Skill skill : dualClassSkills)
|
||||||
{
|
{
|
||||||
|
removeSkill(skill);
|
||||||
addSkill(skill, true);
|
addSkill(skill, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user