public override void handlePacket(int command, int length, sbyte[] data) { // sbyte[] to byte[] // (byte[])(Array) signed; // byte[] to sbyte[] // (sbyte[]) (Array) unsigned; var cmd = (ServerPacketTypes)command; Debug.Log("Packet Recieved: " + cmd + " " + command + " - " + length); // var udata = (byte[])(Array)data; if (command == 117) { lastPing = CurrentTimeMillis(); streamClass.createPacket(5); streamClass.formatPacket(); } if (cmd == ServerPacketTypes.SET_SERVER_INDEX) { ServerPacketHandler.InitiateServerInfo(data, length); } if (cmd == ServerPacketTypes.SET_SLEEP_IMAGE) { // var image = MainForm.GetSleepImage(udata); } if (cmd == ServerPacketTypes.SET_SKILLS) { // Debug.Log("Before stats update"); ServerPacketHandler.UpdatePlayerSkills(data, length); // Debug.Log("Player stats updated: " + MobManager.MyPlayer.StatCurrent[0] + " " + MobManager.MyPlayer.StatCurrent[1] + MobManager.MyPlayer.StatCurrent[2] + " " + MobManager.MyPlayer.StatCurrent[3] + " " + MobManager.MyPlayer.StatCurrent[4] + "..."); } if (cmd == ServerPacketTypes.PLAYER_APPEARANCE_UPDATE) { ServerPacketHandler.UpdatePlayerAppearance(data, length); } if (cmd == ServerPacketTypes.PLAYER_POS_UPDATE) { ServerPacketHandler.UpdatePlayerPositionData(data, length); } if (cmd == ServerPacketTypes.NPC_POS_UPDATE) { ServerPacketHandler.UpdateNpcPositionData(data, length); } if (cmd == ServerPacketTypes.ITEM_POS_UPDATE) { ServerPacketHandler.UpdateItemPositionData(data, length); } if (cmd == ServerPacketTypes.SET_INVENTORY_ITEMS) { ServerPacketHandler.SetInventoryItems(data, length); } if (cmd == ServerPacketTypes.RECIEVE_PRIVATE_MESSAGE) { var tmpMsg = ChatMessage.bytesToString(data, 1, length - 2); // string tmpBytes = "[" + string.Join(",", data) + "]"; } }