diff --git a/src/services/CoreManager.java b/src/services/CoreManager.java index 687e0bace..9b083ba5a 100644 --- a/src/services/CoreManager.java +++ b/src/services/CoreManager.java @@ -1,16 +1,20 @@ package services; import resources.control.Manager; +import services.player.PlayerManager; public class CoreManager extends Manager { private long startTime; private EngineManager engineManager; + private PlayerManager playerManager; public CoreManager() { engineManager = new EngineManager(); + playerManager = new PlayerManager(); addChildService(engineManager); + addChildService(playerManager); } /** diff --git a/src/services/player/LoginService.java b/src/services/player/LoginService.java new file mode 100644 index 000000000..76699aa7f --- /dev/null +++ b/src/services/player/LoginService.java @@ -0,0 +1,17 @@ +package services.player; + +import network.packets.Packet; +import resources.control.Service; +import utilities.ByteUtilities; + +public class LoginService extends Service { + + public LoginService() { + + } + + public void handlePacket(Packet p) { + System.out.println(p.getClass().getSimpleName() + ": " + ByteUtilities.getHexString(p.getData().array())); + } + +} diff --git a/src/services/player/PlayerManager.java b/src/services/player/PlayerManager.java new file mode 100644 index 000000000..c9a0f2305 --- /dev/null +++ b/src/services/player/PlayerManager.java @@ -0,0 +1,35 @@ +package services.player; + +import network.packets.Packet; +import intents.InboundPacketIntent; +import resources.control.Intent; +import resources.control.Manager; +import resources.network.ServerType; + +public class PlayerManager extends Manager { + + private LoginService loginService; + + public PlayerManager() { + loginService = new LoginService(); + + addChildService(loginService); + } + + @Override + public boolean initialize() { + registerForIntent(InboundPacketIntent.TYPE); + return super.initialize(); + } + + @Override + public void onIntentReceived(Intent i) { + if (i instanceof InboundPacketIntent) { + Packet p = ((InboundPacketIntent) i).getPacket(); + if (((InboundPacketIntent) i).getServerType() == ServerType.LOGIN) { + loginService.handlePacket(p); + } + } + } + +}