public void RequestSwitchToCharacterInSlot(Client client, RequestSwitchToCharacterInSlotPacket packet) { if (packet.SlotNum < 1 || packet.SlotNum > 16) { return; } var unitOfWork = _gameUnitOfWorkFactory.CreateChar(); client.AccountEntry.SelectedSlot = (byte)packet.SlotNum; unitOfWork.GameAccounts.UpdateSelectedSlot(client.AccountEntry.Id, (byte)packet.SlotNum); var character = unitOfWork.Characters.GetByAccountId(client.AccountEntry.Id, (byte)packet.SlotNum); unitOfWork.Characters.UpdateLoginData(character.Id); unitOfWork.Complete(); client.Player = CreateCharacterManifestation(character); _mapChannelManager.PassClientToMap(client); }
private void RequestSwitchToCharacterInSlot(RequestSwitchToCharacterInSlotPacket packet) { _characterManager.RequestSwitchToCharacterInSlot(Client, packet); }