09-22-2017, 12:42 AM
Собрался сделать так, чтобы можно было брать один и тот же саб класс сколько угодно раз. Получилось так, что он берется бесконечно, так же отображается в окне смене сабкласса, но при перезаходе игры все повторяющиеся имеющиеся сабы исчезают. При взятии саба в гс ошибка:.
268480662 - ид персонажа/объекта
3 - ид класса(ClassId(саб класса)), вроде Warlord
В итоге, нужно сделать так, чтобы при взятии одинакового саба не вылезало этой ошибки, соответственно, скорее всего, менять ид ClassID каким-то образом.
При добавлении в базу MySQL идет запрос для заполнения данных, вот полный код:В итоге, он ругается, как я понял, только из-за повторяющегося getClassID в базе. Кто поможет решить проблему?
Код:
WARNING: Could not add character sub class for jjj: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '268480662-3' for key 'PRIMARY'
268480662 - ид персонажа/объекта
3 - ид класса(ClassId(саб класса)), вроде Warlord
В итоге, нужно сделать так, чтобы при взятии одинакового саба не вылезало этой ошибки, соответственно, скорее всего, менять ид ClassID каким-то образом.
При добавлении в базу MySQL идет запрос для заполнения данных, вот полный код:
Код:
try (Connection con = L2DatabaseFactory.getInstance().getConnection())
{
PreparedStatement statement = con.prepareStatement(ADD_CHAR_SUBCLASS);
statement.setInt(1, getObjectId());
statement.setInt(2, newClass.getClassId());
statement.setLong(3, newClass.getExp());
statement.setInt(4, newClass.getSp())
statement.setInt(5, newClass.getLevel());
statement.setInt(6, newClass.getClassIndex()); // <-- Added
statement.execute();
statement.close();
}
catch (Exception e)
{
_log.warning("WARNING: Could not add character sub class for " + getName() + ": " + e);
return true;
}