Пример #1
0
        // -------------------------------------------------------------------------------
        // ReqAccountDelete
        // -------------------------------------------------------------------------------
        public MsgAckAccountDelete ReqAccountDelete(MsgReqAccountDelete message, NetworkConnection connection = null)
        {
            int      _nResult = confirmAccountDelete ? Constants.INT_CONFIRM : Constants.INT_FAILURE;
            CAccount cAccount = null;

            if (dictLobby.TryGetValue(connection, out cAccount))
            {
                if (passwordManager.VerifyPassword(message.sPassword, cAccount.sPassword))
                {
                    if (confirmAccountDelete && !cAccount.IsDone)
                    {
                        RequestSecurityCode(cAccount, Constants.AccountActionType.DeleteAccount);
                    }

                    _nResult = AccountDelete(cAccount, connection, false) ? Constants.INT_SUCCESS : _nResult;

                    if (dictLobby.ContainsKey(connection))
                    {
                        dictLobby.Remove(connection);
                    }
                }
                else
                {
                    _nResult = Constants.INT_FAILURE;
                }
            }

            return(new MsgAckAccountDelete {
                nResult = _nResult
            });
        }
Пример #2
0
        // -------------------------------------------------------------------------------
        // ReqAccountDelete
        // -------------------------------------------------------------------------------
        public void ReqAccountDelete(string[] fields, Action <string[]> callbackFunction)
        {
            DictionaryAddAction(callbackFunction);

            MsgReqAccountDelete message = new MsgReqAccountDelete {
                sPassword = Tools.HashPassword(fields[0])
            };

            networkManager.client.Send(MsgReqAccountDelete.nId, message);
        }
Пример #3
0
        // -------------------------------------------------------------------------------
        // OnReqAccountDelete
        // -------------------------------------------------------------------------------
        public void OnReqAccountDelete(NetworkMessage networkMessage)
        {
            MsgReqAccountDelete message = networkMessage.ReadMessage <MsgReqAccountDelete>();

            networkMessage.conn.Send(MsgReqAccountDelete.nId, accountManager.ReqAccountDelete(message, networkMessage.conn));
        }