コード例 #1
0
ファイル: MoonTaxi.cs プロジェクト: punker76/moontaxi
        public MoonTaxi(bool isServer,string username)
            : base()
        {
            this.isServer = isServer;
            if (isServer)
            {
                server = new Server();
                server.Start();
            }
            else
            {
                client = new Client(username);
                client.Connect(IPAddress.Loopback, 1234);
                client.DataReceived += Client_DataReceived;
            }
            graphics = new GraphicsDeviceManager(this);

            level = new RandomLevel(new Vector2(1280, 720), 2, Environment.TickCount);

            graphics.PreferredBackBufferWidth = (int)level.Size.X;
            graphics.PreferredBackBufferHeight = (int)level.Size.Y;

            Content.RootDirectory = "Content";

            Components.Add(sound = new SoundComponent(this));
        }
コード例 #2
0
ファイル: Server.cs プロジェクト: punker76/moontaxi
 private void Client_DataReceived(Client sender, byte[] buffer, int count)
 {
     Message message = MessageManager.Deserialize(buffer, count);
     if (message == null)
     {
         sender.Close();
         clients.Remove(sender);
         return;
     }
     InterpretMessage(message);
     Console.WriteLine("Message: " + System.Text.Encoding.Default.GetString(buffer, 0, count));
 }
コード例 #3
0
ファイル: Server.cs プロジェクト: punker76/moontaxi
        private void EndGetClient(IAsyncResult res)
        {
            try
            {
                TcpClient tcpClient = listener.EndAcceptTcpClient(res);
                Client client = new Client(tcpClient);
                client.DataReceived += Client_DataReceived;

                HandshakeRequest req = new HandshakeRequest(1);
                client.Send(req);

                clients.Add(client);
            }
            catch (SocketException ex)
            {
                //if (ex.Err)
            }
            catch (ObjectDisposedException)
            {
                return;
            }

            BeginAccept();
        }
コード例 #4
0
ファイル: MoonTaxi.cs プロジェクト: punker76/moontaxi
 private void Client_DataReceived(Client sender, byte[] buffer, int count)
 {
     Console.WriteLine("Respond: " + System.Text.Encoding.Default.GetString(buffer, 0, count));
 }