diff --git a/src/dao/mysql5/com/l2jserver/db/dao/DAOModuleMySQL5.java b/src/dao/mysql5/com/l2jserver/db/dao/MySQL5DAOModule.java similarity index 96% rename from src/dao/mysql5/com/l2jserver/db/dao/DAOModuleMySQL5.java rename to src/dao/mysql5/com/l2jserver/db/dao/MySQL5DAOModule.java index 7c2c564a4..b1bde4229 100644 --- a/src/dao/mysql5/com/l2jserver/db/dao/DAOModuleMySQL5.java +++ b/src/dao/mysql5/com/l2jserver/db/dao/MySQL5DAOModule.java @@ -29,7 +29,7 @@ import com.l2jserver.db.dao.mysql5.MySQL5ItemDAO; * * @author Rogiel */ -public class DAOModuleMySQL5 extends AbstractModule { +public class MySQL5DAOModule extends AbstractModule { @Override protected void configure() { bind(CharacterDAO.class).to(MySQL5CharacterDAO.class).in( diff --git a/src/main/java/com/l2jserver/GameServerModule.java b/src/main/java/com/l2jserver/GameServerModule.java index bd16d4ac8..2c2249338 100644 --- a/src/main/java/com/l2jserver/GameServerModule.java +++ b/src/main/java/com/l2jserver/GameServerModule.java @@ -18,7 +18,7 @@ package com.l2jserver; import com.google.inject.AbstractModule; import com.google.inject.Module; -import com.l2jserver.db.dao.DAOModuleMySQL5; +import com.l2jserver.db.dao.MySQL5DAOModule; import com.l2jserver.model.id.factory.IDFactoryModule; import com.l2jserver.service.ServiceModule; @@ -32,6 +32,6 @@ public class GameServerModule extends AbstractModule { protected void configure() { install(new ServiceModule()); install(new IDFactoryModule()); - install(new DAOModuleMySQL5()); + install(new MySQL5DAOModule()); } } diff --git a/src/main/java/com/l2jserver/game/net/Lineage2CryptographyKey.java b/src/main/java/com/l2jserver/game/net/Lineage2CryptographyKey.java index 7bb7eeb61..20fb7cb34 100644 --- a/src/main/java/com/l2jserver/game/net/Lineage2CryptographyKey.java +++ b/src/main/java/com/l2jserver/game/net/Lineage2CryptographyKey.java @@ -16,6 +16,8 @@ */ package com.l2jserver.game.net; +import java.util.Arrays; + /** * Manages the cryptography key used to write/read packets. This class also * updates the key once data has been sent/received. @@ -77,6 +79,6 @@ public class Lineage2CryptographyKey { } public Lineage2CryptographyKey copy() { - return new Lineage2CryptographyKey(key); + return new Lineage2CryptographyKey(Arrays.copyOf(key, key.length)); } } diff --git a/src/main/java/com/l2jserver/game/net/codec/Lineage2Encrypter.java b/src/main/java/com/l2jserver/game/net/codec/Lineage2Encrypter.java index 02450cbfe..0c3b260e7 100644 --- a/src/main/java/com/l2jserver/game/net/codec/Lineage2Encrypter.java +++ b/src/main/java/com/l2jserver/game/net/codec/Lineage2Encrypter.java @@ -54,12 +54,12 @@ public class Lineage2Encrypter extends OneToOneEncoder { final int offset = buffer.readerIndex() + 2; // skip header final int size = buffer.readableBytes() - 2; - int temp = 0; + int temp = 0, temp2 = 0; synchronized (key) { for (int i = 0; i < size; i++) { - int temp2 = buffer.getByte(offset + i) & 0xFF; - buffer.setByte(offset + i, (byte) (temp2 ^ key.get(i) ^ temp)); - temp = temp2; + temp2 = buffer.getByte(offset + i) & 0xFF; + temp = temp2 ^ key.get(i) ^ temp; + buffer.setByte(offset + i, (byte) temp); } key.update(size); } diff --git a/src/main/java/com/l2jserver/game/net/codec/Lineage2PacketWriter.java b/src/main/java/com/l2jserver/game/net/codec/Lineage2PacketWriter.java index dbd6f5c38..ac1bf2546 100644 --- a/src/main/java/com/l2jserver/game/net/codec/Lineage2PacketWriter.java +++ b/src/main/java/com/l2jserver/game/net/codec/Lineage2PacketWriter.java @@ -61,10 +61,10 @@ public class Lineage2PacketWriter extends OneToOneEncoder { final ChannelBuffer buffer = ChannelBuffers.dynamicBuffer( ByteOrder.LITTLE_ENDIAN, 10); final ServerPacket packet = (ServerPacket) msg; - buffer.writeShort(0x0000); + buffer.writeShort(0); buffer.writeByte(packet.getOpcode()); // packet opcode - packet.write(null, buffer); - + packet.write(connection, buffer); + log.debug("Writing message {}", ChannelBuffers.hexDump(buffer)); return buffer; diff --git a/src/main/java/com/l2jserver/game/net/packet/client/AuthLoginPacket.java b/src/main/java/com/l2jserver/game/net/packet/client/AuthLoginPacket.java index b9c70d1f4..f57e39f8c 100644 --- a/src/main/java/com/l2jserver/game/net/packet/client/AuthLoginPacket.java +++ b/src/main/java/com/l2jserver/game/net/packet/client/AuthLoginPacket.java @@ -25,7 +25,7 @@ import com.l2jserver.db.dao.CharacterDAO; import com.l2jserver.game.net.Lineage2Connection; import com.l2jserver.game.net.Lineage2Session; import com.l2jserver.game.net.packet.AbstractClientPacket; -import com.l2jserver.game.net.packet.server.CharacterEnterWorldPacket; +import com.l2jserver.game.net.packet.server.CharacterSelectionListPacket; import com.l2jserver.model.id.AccountID; import com.l2jserver.model.id.factory.AccountIDFactory; import com.l2jserver.model.world.L2Character; @@ -86,10 +86,10 @@ public class AuthLoginPacket extends AbstractClientPacket { loginKey1, loginKey2)); final List chars = characterDao.selectByAccount(accountId); - // conn.write(CharacterSelectionListPacket.fromL2Session( - // conn.getSession(), chars.toArray(new L2Character[0]))); - conn.setCharacterID(chars.get(0).getID()); - conn.write(new CharacterEnterWorldPacket(chars.get(0), playKey1)); + conn.write(CharacterSelectionListPacket.fromL2Session( + conn.getSession(), chars.get(0))); + // conn.setCharacterID(chars.get(0).getID()); + // conn.write(new CharacterEnterWorldPacket(chars.get(0), playKey1)); } /** diff --git a/src/main/java/com/l2jserver/game/net/packet/server/CharacterSelectionListPacket.java b/src/main/java/com/l2jserver/game/net/packet/server/CharacterSelectionListPacket.java index 39fa73624..66aad4a9b 100644 --- a/src/main/java/com/l2jserver/game/net/packet/server/CharacterSelectionListPacket.java +++ b/src/main/java/com/l2jserver/game/net/packet/server/CharacterSelectionListPacket.java @@ -48,7 +48,6 @@ import com.l2jserver.game.net.Lineage2Session; import com.l2jserver.game.net.packet.AbstractServerPacket; import com.l2jserver.model.world.Item; import com.l2jserver.model.world.L2Character; -import com.l2jserver.model.world.actor.ActorExperience; import com.l2jserver.model.world.character.CharacterInventory.InventoryPaperdoll; import com.l2jserver.util.BufferUtils; @@ -100,7 +99,7 @@ public class CharacterSelectionListPacket extends AbstractServerPacket { // Can prevent players from creating new characters (if 0); // if 1 the client will ask if chars may be created // (RequestCharacterTemplatesPacket) Response: (CharacterTemplatePacket) - buffer.writeInt(0x07); // max chars + buffer.writeInt(7); // max chars buffer.writeByte(0x00); // int i = 0; @@ -116,7 +115,7 @@ public class CharacterSelectionListPacket extends AbstractServerPacket { // } buffer.writeInt(0x00); // ?? - buffer.writeInt(0x01); // sex + buffer.writeInt(character.getSex().option); // sex buffer.writeInt(character.getRace().id); // race // if (character.getClassId() == character.getBaseClassId()) @@ -125,7 +124,7 @@ public class CharacterSelectionListPacket extends AbstractServerPacket { // else // buffer.writeInt(character.getBaseClassId()); - buffer.writeInt(0x01); // active ?? + buffer.writeInt(1); // active ?? buffer.writeInt(-71338); // x buffer.writeInt(258271); // y @@ -134,9 +133,9 @@ public class CharacterSelectionListPacket extends AbstractServerPacket { buffer.writeDouble(20); // hp cur buffer.writeDouble(20); // mp cur - buffer.writeInt(0x00); // sp - buffer.writeLong(ActorExperience.LEVEL_1.experience); // exp - buffer.writeInt(ActorExperience.LEVEL_1.level); // level + buffer.writeInt(320); // sp + buffer.writeLong(4640); // exp + buffer.writeInt(5); // level buffer.writeInt(0x00); // karma buffer.writeInt(0x00); // pk @@ -181,10 +180,10 @@ public class CharacterSelectionListPacket extends AbstractServerPacket { // hair style // buffer.writeInt(character.getAppearance().getHairStyle().option); - buffer.writeInt(0x02); + buffer.writeInt(0x00); // hair color // buffer.writeInt(character.getAppearance().getHairColor().option); - buffer.writeInt(0x03); + buffer.writeInt(0x00); // face // buffer.writeInt(character.getAppearance().getFace().option); buffer.writeInt(0x00); @@ -194,7 +193,7 @@ public class CharacterSelectionListPacket extends AbstractServerPacket { buffer.writeInt(0x0); // seconds left before delete buffer.writeInt(character.getCharacterClass().id); // class - buffer.writeInt(0x01); // c3 auto-select char + buffer.writeInt(1); // c3 auto-select char buffer.writeByte(0x00); // enchant effect diff --git a/src/main/java/com/l2jserver/model/world/actor/ActorEvent.java b/src/main/java/com/l2jserver/model/world/actor/event/ActorEvent.java similarity index 95% rename from src/main/java/com/l2jserver/model/world/actor/ActorEvent.java rename to src/main/java/com/l2jserver/model/world/actor/event/ActorEvent.java index 04f95e2c9..f7c2c9675 100644 --- a/src/main/java/com/l2jserver/model/world/actor/ActorEvent.java +++ b/src/main/java/com/l2jserver/model/world/actor/event/ActorEvent.java @@ -14,7 +14,7 @@ * You should have received a copy of the GNU General Public License * along with l2jserver. If not, see . */ -package com.l2jserver.model.world.actor; +package com.l2jserver.model.world.actor.event; import com.l2jserver.model.world.capability.Actor; import com.l2jserver.service.game.world.event.WorldEvent; diff --git a/src/main/java/com/l2jserver/model/world/actor/ActorListener.java b/src/main/java/com/l2jserver/model/world/actor/event/ActorListener.java similarity index 95% rename from src/main/java/com/l2jserver/model/world/actor/ActorListener.java rename to src/main/java/com/l2jserver/model/world/actor/event/ActorListener.java index dfa9355a2..7951c4140 100644 --- a/src/main/java/com/l2jserver/model/world/actor/ActorListener.java +++ b/src/main/java/com/l2jserver/model/world/actor/event/ActorListener.java @@ -14,7 +14,7 @@ * You should have received a copy of the GNU General Public License * along with l2jserver. If not, see . */ -package com.l2jserver.model.world.actor; +package com.l2jserver.model.world.actor.event; import com.l2jserver.model.world.capability.Actor; import com.l2jserver.service.game.world.event.WorldListener; diff --git a/src/main/java/com/l2jserver/model/world/capability/Actor.java b/src/main/java/com/l2jserver/model/world/capability/Actor.java index 8fb3d0eb4..1704c3e82 100644 --- a/src/main/java/com/l2jserver/model/world/capability/Actor.java +++ b/src/main/java/com/l2jserver/model/world/capability/Actor.java @@ -19,9 +19,9 @@ package com.l2jserver.model.world.capability; import com.l2jserver.model.id.object.ActorID; import com.l2jserver.model.world.AbstractObject; import com.l2jserver.model.world.actor.ActorEffects; -import com.l2jserver.model.world.actor.ActorEvent; -import com.l2jserver.model.world.actor.ActorListener; import com.l2jserver.model.world.actor.ActorSkillContainer; +import com.l2jserver.model.world.actor.event.ActorEvent; +import com.l2jserver.model.world.actor.event.ActorListener; /** * Defines an {@link AbstractObject} that defines an Actor (NPC, player, pet, diff --git a/src/main/java/com/l2jserver/model/world/player/event/PlayerEvent.java b/src/main/java/com/l2jserver/model/world/player/event/PlayerEvent.java index dc186056d..d82fb6ca9 100644 --- a/src/main/java/com/l2jserver/model/world/player/event/PlayerEvent.java +++ b/src/main/java/com/l2jserver/model/world/player/event/PlayerEvent.java @@ -17,7 +17,7 @@ package com.l2jserver.model.world.player.event; import com.l2jserver.model.world.Player; -import com.l2jserver.model.world.actor.ActorEvent; +import com.l2jserver.model.world.actor.event.ActorEvent; /** * Base event for {@link Player} objects diff --git a/src/main/java/com/l2jserver/model/world/player/event/PlayerListener.java b/src/main/java/com/l2jserver/model/world/player/event/PlayerListener.java index 219941c67..ab6d51541 100644 --- a/src/main/java/com/l2jserver/model/world/player/event/PlayerListener.java +++ b/src/main/java/com/l2jserver/model/world/player/event/PlayerListener.java @@ -16,8 +16,8 @@ */ package com.l2jserver.model.world.player.event; -import com.l2jserver.model.world.actor.ActorEvent; -import com.l2jserver.model.world.actor.ActorListener; +import com.l2jserver.model.world.actor.event.ActorEvent; +import com.l2jserver.model.world.actor.event.ActorListener; import com.l2jserver.service.game.world.event.WorldEvent; import com.l2jserver.service.game.world.event.WorldListener; diff --git a/src/main/java/com/l2jserver/service/admin/GMService.java b/src/main/java/com/l2jserver/service/admin/GMService.java index 00673b43e..17224ea64 100644 --- a/src/main/java/com/l2jserver/service/admin/GMService.java +++ b/src/main/java/com/l2jserver/service/admin/GMService.java @@ -24,5 +24,5 @@ import com.l2jserver.service.Service; * @author Rogiel */ public interface GMService extends Service { - + } diff --git a/src/main/java/com/l2jserver/util/BufferUtils.java b/src/main/java/com/l2jserver/util/BufferUtils.java index 8c38268ed..6ed907d23 100644 --- a/src/main/java/com/l2jserver/util/BufferUtils.java +++ b/src/main/java/com/l2jserver/util/BufferUtils.java @@ -58,6 +58,6 @@ public class BufferUtils { buffer.writeChar(str.charAt(i)); } } - buffer.writeChar('\000'); + buffer.writeShort(0); } } diff --git a/src/test/java/com/l2jserver/model/id/factory/IDFactoryTest.java b/src/test/java/com/l2jserver/model/id/factory/IDFactoryTest.java index 59f82472e..8e69aaad6 100644 --- a/src/test/java/com/l2jserver/model/id/factory/IDFactoryTest.java +++ b/src/test/java/com/l2jserver/model/id/factory/IDFactoryTest.java @@ -23,7 +23,7 @@ import org.junit.Test; import com.google.inject.Guice; import com.google.inject.Injector; -import com.l2jserver.db.dao.DAOModuleMySQL5; +import com.l2jserver.db.dao.MySQL5DAOModule; import com.l2jserver.model.id.ID; import com.l2jserver.model.id.object.CharacterID; import com.l2jserver.model.id.object.factory.CharacterIDFactory; @@ -36,7 +36,7 @@ import com.l2jserver.service.game.template.TemplateService; public class IDFactoryTest { private final Injector injector = Guice.createInjector(new ServiceModule(), - new DAOModuleMySQL5(), new IDFactoryModule()); + new MySQL5DAOModule(), new IDFactoryModule()); private final CharacterIDFactory charIdFactory = injector .getInstance(CharacterIDFactory.class); diff --git a/src/test/java/com/l2jserver/model/world/character/CharacterFriendListTest.java b/src/test/java/com/l2jserver/model/world/character/CharacterFriendListTest.java index 55ee0fa17..67ade3c59 100644 --- a/src/test/java/com/l2jserver/model/world/character/CharacterFriendListTest.java +++ b/src/test/java/com/l2jserver/model/world/character/CharacterFriendListTest.java @@ -24,7 +24,7 @@ import org.junit.Test; import com.google.inject.Guice; import com.google.inject.Injector; import com.l2jserver.db.dao.CharacterFriendDAO; -import com.l2jserver.db.dao.DAOModuleMySQL5; +import com.l2jserver.db.dao.MySQL5DAOModule; import com.l2jserver.model.id.factory.IDFactoryModule; import com.l2jserver.model.id.object.CharacterID; import com.l2jserver.model.id.object.factory.CharacterIDFactory; @@ -37,7 +37,7 @@ import com.l2jserver.service.game.template.TemplateService; public class CharacterFriendListTest { private final Injector injector = Guice.createInjector(new ServiceModule(), - new DAOModuleMySQL5(), new IDFactoryModule()); + new MySQL5DAOModule(), new IDFactoryModule()); private final CharacterIDFactory charIdFactory = injector .getInstance(CharacterIDFactory.class); diff --git a/src/test/java/com/l2jserver/service/game/template/StaticTemplateServiceTest.java b/src/test/java/com/l2jserver/service/game/template/StaticTemplateServiceTest.java index bda39a36c..27d92d419 100644 --- a/src/test/java/com/l2jserver/service/game/template/StaticTemplateServiceTest.java +++ b/src/test/java/com/l2jserver/service/game/template/StaticTemplateServiceTest.java @@ -22,7 +22,7 @@ import script.template.item.AdenaItemTemplate; import com.google.inject.Guice; import com.google.inject.Injector; -import com.l2jserver.db.dao.DAOModuleMySQL5; +import com.l2jserver.db.dao.MySQL5DAOModule; import com.l2jserver.model.id.factory.IDFactoryModule; import com.l2jserver.model.id.template.factory.ItemTemplateIDFactory; import com.l2jserver.service.ServiceModule; @@ -30,7 +30,7 @@ import com.l2jserver.service.ServiceStartException; public class StaticTemplateServiceTest { private final Injector injector = Guice.createInjector(new ServiceModule(), - new IDFactoryModule(), new DAOModuleMySQL5()); + new IDFactoryModule(), new MySQL5DAOModule()); private final TemplateService service = injector .getInstance(TemplateService.class); private final ItemTemplateIDFactory factory = injector diff --git a/src/test/java/com/l2jserver/service/world/WorldEventDispatcherImplTest.java b/src/test/java/com/l2jserver/service/world/WorldEventDispatcherImplTest.java index 6f152828d..cd99e52b3 100644 --- a/src/test/java/com/l2jserver/service/world/WorldEventDispatcherImplTest.java +++ b/src/test/java/com/l2jserver/service/world/WorldEventDispatcherImplTest.java @@ -27,7 +27,7 @@ import com.google.inject.AbstractModule; import com.google.inject.Guice; import com.google.inject.Injector; import com.google.inject.Scopes; -import com.l2jserver.db.dao.DAOModuleMySQL5; +import com.l2jserver.db.dao.MySQL5DAOModule; import com.l2jserver.model.id.factory.IDFactoryModule; import com.l2jserver.model.id.object.factory.CharacterIDFactory; import com.l2jserver.model.id.object.factory.ItemIDFactory; @@ -56,7 +56,7 @@ public class WorldEventDispatcherImplTest { @Before public void tearUp() throws ServiceStartException { Injector injector = Guice.createInjector(new ServiceModule(), - new DAOModuleMySQL5(), new IDFactoryModule(), + new MySQL5DAOModule(), new IDFactoryModule(), new AbstractModule() { @Override protected void configure() {