Exemple #1
0
        public Login(LoginPacketWriter loginPacketWriter, ScriptMessageSender messageSender, LoginDeniedMessageHandler deniedMessageHandler, LoginAcknowledgedMessageHandler loginAcknowledgedMessage, LogoutAcknowledgeMessageHandler logoutMessageHandler)
        {
            if (deniedMessageHandler == null)
            {
                throw new ArgumentNullException(nameof(deniedMessageHandler));
            }

            if (loginAcknowledgedMessage == null)
            {
                throw new ArgumentNullException(nameof(loginAcknowledgedMessage));
            }

            if (logoutMessageHandler == null)
            {
                throw new ArgumentNullException(nameof(logoutMessageHandler));
            }

            deniedMessageHandler.LoginFailureReceived             += DeniedMessageHandlerOnLoginFailureReceived;
            loginAcknowledgedMessage.LoginAcknowledgementReceived +=
                sender => LoginAcknowledged?.Invoke(this, new LoginAcknowledgedArgs());

            logoutMessageHandler.LogoutAcknowledgmentReceived += sender => LoggedOut?.Invoke(this);

            _LoginPacketWriter = loginPacketWriter ?? throw new ArgumentNullException(nameof(loginPacketWriter));
            _MessageSender     = messageSender ?? throw new ArgumentNullException(nameof(messageSender));
        }
Exemple #2
0
 public JoinGameSender(IPacketWriterFactory packetWriterFactory, ScriptMessageSender messageSender, JoinGameResultMessageHandler messageHandler)
 {
     _PacketWriterFactory = packetWriterFactory ?? throw new ArgumentNullException(nameof(packetWriterFactory));
     _MessageSender       = messageSender ?? throw new ArgumentNullException(nameof(messageSender));
     messageHandler.JoinGameSuccessReceived += sender => JoinGameRequestSuccessful?.Invoke(this);
     messageHandler.JoinGameFailedReceived  += MessageHandlerOnJoinGameFailedReceived;
 }
Exemple #3
0
        public CharacterCreation(IPacketWriterFactory writerFactory, ScriptMessageSender messageSender, CharacterCreationResultMessageHandler resultMessageHandler)
        {
            _WriterFactory = writerFactory ?? throw new ArgumentNullException(nameof(writerFactory));
            _MessageSender = messageSender ?? throw new ArgumentNullException(nameof(messageSender));

            resultMessageHandler.CharacterCreationFailed += (sender, args) =>
            {
                string msg;
                switch (args)
                {
                case CharacterCreationFailure.AlreadyExists:
                    msg = "Charactername bereits vergeben!";
                    break;

                case CharacterCreationFailure.NameIsInvalid:
                    msg = "Charactername ist ungültig!";
                    break;

                case CharacterCreationFailure.InvalidCreationInfo:
                    msg = "Fehlerhafte characterdaten(Netzwerkfehler?)!";
                    break;

                case CharacterCreationFailure.CharacterLimitReached:
                    msg = "Charakterlimit erreicht!";
                    break;

                default:
                    msg = "Unbekannter Fehler";
                    break;
                }
                CharacterCreationFailed?.Invoke(this, new CharacterCreationFailedArgs(msg));
            };

            resultMessageHandler.CharacterCreationSuccessful += sender => CharacterCreationSuccessful?.Invoke(this);
        }
Exemple #4
0
        public AccountCreation(AccountCreationMessageWriter creationMessageWriter, ScriptMessageSender scriptMessageSender, AccountCreationResultMessageHandler handler)
        {
            if (handler == null)
            {
                throw new ArgumentNullException(nameof(handler));
            }

            _CreationMessageWriter = creationMessageWriter ?? throw new ArgumentNullException(nameof(creationMessageWriter));
            _ScriptMessageSender   = scriptMessageSender ?? throw new ArgumentNullException(nameof(scriptMessageSender));

            handler.AccountCreationResultReceived += HandlerOnAccountCreationResultReceived;
        }
Exemple #5
0
 public Chat(IPacketWriterFactory writerFactory, ScriptMessageSender messageSender)
 {
     _WriterFactory = writerFactory ?? throw new ArgumentNullException(nameof(writerFactory));
     _MessageSender = messageSender ?? throw new ArgumentNullException(nameof(messageSender));
 }