Пример #1
0
        /// <summary>
        /// Passes on packets received to the DataHandlers to be processed if necessary
        /// </summary>
        /// <param name="args"></param>
        private void GetData(GetDataEventArgs args)
        {
            var type   = args.MsgID;
            var player = Players[args.Msg.whoAmI];

            if (player == null)
            {
                return;
            }

            if (!player.TshockPlayer.ConnectionAlive)
            {
                args.Handled = true;
                return;
            }

            using (var data = new MemoryStream(args.Msg.readBuffer, args.Index, args.Length))
            {
                try
                {
                    if (GetDataHandler.HandlerGetData(type, player, data))
                    {
                        args.Handled = true;
                    }
                }
                catch (Exception ex)
                {
                    TShock.Log.ConsoleError(ex.ToString());
                }
            }
        }