コード例 #1
0
        public Channel(string name = null, int limit = 0, int joinPower = 0, int talkPower = 0)
        {
            commandHandler = new MessageHandler();
            commandHandler.AddHandler((short)MessageHandler.ChannelCommands.DELETE, new Action <byte[]>(Command_Delete));
            commandHandler.AddHandler((short)MessageHandler.ChannelCommands.RENAME, new Action <byte[]>(Command_Rename));
            commandHandler.AddHandler((short)MessageHandler.ChannelCommands.EDIT, new Action <byte[]>(Command_Edit));

            clients        = new List <ServerClient>();
            this.channelId = CHANNEL_NEXTID;
            CHANNEL_NEXTID++;

            this.joinPower = joinPower;
            this.talkPower = talkPower;

            if (name != null)
            {
                this.channelName = Data.MakeSafe(name, "Channel " + this.channelId);
            }
            else
            {
                this.channelName = "Channel " + this.channelId;
            }

            this.channelLimit = limit;
        }
コード例 #2
0
    private void Connect()
    {
        CreateChatPanel();

        _client = new Client();
        _client.Start(ip, port);
        _client.OnMessageReceived += MessageReceived;

        _handler = new MessageHandler();
        _handler.AddHandler("chat", HandleChatMessage);
        _handler.AddHandler("greet", GreetHandleMessage);
    }
コード例 #3
0
ファイル: MessageHandlerTests.cs プロジェクト: promontis/Even
        public async Task Handles_mapped_messages()
        {
            var handler = new MessageHandler<string>(s => s.Length == 1 ? typeof(SingleChar) : typeof(MultiChar));

            var expected = 42;
            int actual = 0;

            handler.AddHandler<MultiChar>(s => actual = 100);
            handler.AddHandler<SingleChar>(s => actual = expected);

            await handler.Handle("a");

            Assert.Equal(expected, actual);
        }
コード例 #4
0
ファイル: MessageHandlerTests.cs プロジェクト: Stephanvs/Even
        public async Task Handles_mapped_messages()
        {
            var handler = new MessageHandler <string>(s => s.Length == 1 ? typeof(SingleChar) : typeof(MultiChar));

            var expected = 42;
            int actual   = 0;

            handler.AddHandler <MultiChar>(s => actual  = 100);
            handler.AddHandler <SingleChar>(s => actual = expected);

            await handler.Handle("a");

            Assert.Equal(expected, actual);
        }
コード例 #5
0
    private void Start()
    {
        _server = new Server(7777);
        _server.Start();
        _server.ClientConnectedEvent    += OnClientConnect;
        _server.MessageReceivedEvent    += OnMessage;
        _server.ClientDisconnectedEvent += OnClientDisconnect;

        _handler = new MessageHandler();
        _handler.AddHandler("chat", HandleChatMessage);
    }
コード例 #6
0
    private void Start()
    {
        Application.targetFrameRate = 60;

        _server = new Server();
        _server.Start(7777);

        _server.ClientConnectedEvent    += OnClientConnect;
        _server.MessageReceivedEvent    += OnMessage;
        _server.ClientDisconnectedEvent += OnClientDisconnect;

        _handler = new MessageHandler();
        _handler.AddHandler("chat", HandleChatMessage);

        _console = new CommandConsole.Console();
        _console.Initialize();
        _console.Register("greet_all", ClientGreeter);
    }
コード例 #7
0
ファイル: ScavengerService.cs プロジェクト: lulzzz/Scavenger
 private void AddHandlers()
 {
     _messageHandler.AddHandler(ScavengerClientMessageType.LobbyReady, reader => (object)null, (client, message, data) => client.LobbyReady(message.ClientId));
     _messageHandler.AddHandler(ScavengerClientMessageType.EggFound, reader => (object)null, (client, message, data) => client.EggFound());
 }
コード例 #8
0
ファイル: FixedWeapon.cs プロジェクト: zrisher/ARMS
 static FixedWeapon()
 {
     MessageHandler.AddHandler(MessageHandler.SubMod.FW_EngagerControl, Handler_EngagerControl);
 }
コード例 #9
0
ファイル: Message.cs プロジェクト: zrisher/ARMS
 static Message()
 {
     MessageHandler.AddHandler(MessageHandler.SubMod.Message, FromClient);
 }
コード例 #10
0
 static GuidedMissile()
 {
     MessageHandler.AddHandler(MessageHandler.SubMod.GuidedMissile, ReceiveMissilePositions);
 }