Exemple #1
0
        public async Task SendDead()
        {
            if (IsEnd)
            {
                return;
            }
            State = BotState.IsDead;
            var buffer = new byte[(byte)MessageSize.Dead];

            buffer[0] = System.Text.Encoding.ASCII.GetBytes("D")[0];
            try
            {
                Console.WriteLine($"Bot {bot.Name} is dead!");
                await webSocket.SendAsync(new ArraySegment <byte>(buffer, 0, buffer.Length), WebSocketMessageType.Binary, true, CancellationToken.None);

                MainGame.ViewerRemovePlayer(bot.X, bot.Y);
            }
            catch (Exception err)
            {
                Console.WriteLine($"[ERROR] {err.Message}");
                State = BotState.Error;
            }
            if (MainGame.TheMap[bot.X, bot.Y] == CaseState.Ennemy)
            {
                MainGame.TheMap[bot.X, bot.Y] = CaseState.Energy;
            }
            MainGame.SendCockpitInfo(bot.GUID, new ArraySegment <byte>(buffer, 0, buffer.Length));
        }