Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private synchronized void storeEffect()
- {
- if (!Config.STORE_SKILL_COOLTIME)
- return;
- Connection con = null;
- try
- {
- con = L2DatabaseFactory.getInstance().getConnection(con);
- PreparedStatement statement = con.prepareStatement(DELETE_SKILL_SAVE);
- statement.setInt(1, getObjectId());
- statement.setInt(2, getClassIndex());
- statement.execute();
- statement.close();
- int buff_index = 0;
- statement = con.prepareStatement(ADD_SKILL_SAVE);
- Set<Integer> storedSkills = new HashSet<>();
- for (L2Effect effect : getAllEffects())
- if (effect != null && !effect.isHerbEffect() && effect.getInUse() && !effect.getSkill().isToggle())
- {
- if (effect instanceof EffectFusion)
- {
- continue;
- }
- int skillId = effect.getSkill().getId();
- if (!storedSkills.add(skillId))
- {
- continue;
- }
- statement.setInt(1, getObjectId());
- statement.setInt(2, skillId);
- statement.setInt(3, effect.getSkill().getLevel());
- statement.setInt(4, effect.getCount());
- statement.setInt(5, effect.getTime());
- if (_reuseTimeStamps.containsKey(skillId))
- {
- TimeStamp t = _reuseTimeStamps.get(skillId);
- statement.setLong(6, t.hasNotPassed() ? t.getReuse() : 0);
- statement.setLong(7, t.hasNotPassed() ? t.getStamp() : 0);
- }
- else
- {
- statement.setLong(6, 0);
- statement.setLong(7, 0);
- }
- statement.setInt(8, 0);
- statement.setInt(9, getClassIndex());
- statement.setInt(10, ++buff_index);
- statement.execute();
- }
- for (TimeStamp t : _reuseTimeStamps.values())
- if (t.hasNotPassed())
- {
- int skillId = t.getSkill();
- if (!storedSkills.add(skillId))
- {
- continue;
- }
- statement.setInt(1, getObjectId());
- statement.setInt(2, skillId);
- statement.setInt(3, -1);
- statement.setInt(4, -1);
- statement.setInt(5, -1);
- statement.setLong(6, t.getReuse());
- statement.setLong(7, t.getStamp());
- statement.setInt(8, 1);
- statement.setInt(9, getClassIndex());
- statement.setInt(10, ++buff_index);
- statement.execute();
- }
- statement.close();
- }
- catch (Exception e)
- {
- _log.error("Could not store char effect data: ", e);
- }
- finally
- {
- L2DatabaseFactory.close(con);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement