Support for SkillCoolTime reuse delay groups.

Thanks to Fakee.
This commit is contained in:
MobiusDevelopment
2022-12-14 22:11:24 +00:00
parent e7fb57065d
commit 6066031563
52 changed files with 182 additions and 104 deletions

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }

View File

@@ -53,7 +53,7 @@ public class TimeStamp
_id3 = skill.getSubLevel(); _id3 = skill.getSubLevel();
_reuse = reuse; _reuse = reuse;
_stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0; _stamp = systime > 0 ? systime : reuse != 0 ? System.currentTimeMillis() + reuse : 0;
_group = -1; _group = skill.getReuseDelayGroup();
} }
/** /**

View File

@@ -50,10 +50,13 @@ public class SkillCoolTime extends ServerPacket
writeInt(_reuseTimestamps.size()); writeInt(_reuseTimestamps.size());
for (TimeStamp ts : _reuseTimestamps) for (TimeStamp ts : _reuseTimestamps)
{ {
writeInt(ts.getSkillId()); final long reuse = ts.getReuse();
final long remaining = ts.getRemaining();
final int sharedReuseGroup = ts.getSharedReuseGroup();
writeInt(sharedReuseGroup > 0 ? sharedReuseGroup : ts.getSkillId());
writeInt(ts.getSkillLevel()); writeInt(ts.getSkillLevel());
writeInt((int) ts.getReuse() / 1000); writeInt((int) (reuse > 0 ? reuse : remaining) / 1000);
writeInt((int) ts.getRemaining() / 1000); writeInt((int) remaining / 1000);
} }
} }
} }