コード例 #1
0
        public ServerViewModel(MahApps.Metro.Controls.Dialogs.IDialogCoordinator instance)
        {
            this._dialogCoordinator = instance;
            _startServerCommand     = new DelegateCommand <object>((p) => StartServer());
            _stopServerCommand      = new DelegateCommand <object>((p) => StopServer());
            ServerStatus            = "Dead";
            ServerPort = 1500;
            //var localEp = new System.Net.IPEndPoint(System.Net.IPAddress.Any, 1500);
            //var myUdpClient = new System.Net.Sockets.UdpClient(localEp);
            //myUdpClient.Client.ReceiveTimeout = 1000;
            //this._serverComManager = new GameCom.ServerComManager(myUdpClient);
            //this._serverComManager.SocketEventInfo += _serverComManager_SocketEventInfo;
            CurrentGames = new System.Collections.ObjectModel.ObservableCollection <object>()
            {
                new
                {
                    Id            = 1,
                    Players       = 3,
                    TotalTime     = "1:03",
                    CurrentWinner = "Player1"
                }
            };
            GameServers = new System.Collections.ObjectModel.ObservableCollection <TanksCommon.SharedObjects.GameServerRegister>();
            Log         = new System.Collections.ObjectModel.ObservableCollection <TanksCommon.SharedObjects.LogEvent>();


            GameCom.ServerMessenger.ReceivedDataLog += _mainServerLogic_ReceivedDataLog;
            //_serverComManager.NewGameServerConnected += ServerMessenger_NewGameServerConnected;
            //_serverComManager.ReceivedDataLog += ServerMessenger_ReceivedDataLog;
            //_cancellationTokenSource = new CancellationTokenSource();
            _mainServerLogic = new ComLogic.MainServerLogicForMainServer();
            _mainServerLogic.NewGameServerConnected += _mainServerLogic_NewGameServerConnected;
            _mainServerLogic.ReceivedDataLog        += _mainServerLogic_ReceivedDataLog;
            _mainServerLogic.SocketEventInfo        += _mainServerLogic_SocketEventInfo;
        }
コード例 #2
0
ファイル: GameViewModel.cs プロジェクト: brandonbarron/Tanks
        public GameViewModel(MahApps.Metro.Controls.Dialogs.IDialogCoordinator instance)
        {
            this._dialogCoordinator  = instance;
            _startServerCommand      = new DelegateCommand <object>((p) => StartServer());
            _stopServerCommand       = new DelegateCommand <object>((p) => StopServer());
            _connectToServerCommand  = new DelegateCommand <object>((p) => ConnectToMainServer());
            _disconnectServerCommand = new DelegateCommand <object>((p) => DisconnectFromMainServer());
            _sendMessageCommand      = new DelegateCommand <object>((p) => SendMessageToClient());
            ServerStatus             = "Dead";
            GamePort      = 1501;
            ServerAddress = "127.0.0.1";
            ServerPort    = 1500;

            _playerLogicForGameServer = new ComLogic.PlayerLogicForGameServer(GamePort);
            Log = new System.Collections.ObjectModel.ObservableCollection <TanksCommon.SharedObjects.LogEvent>();
            GameCom.ServerMessenger.ReceivedDataLog             += ServerMessenger_ReceivedDataLog;
            _playerLogicForGameServer.SocketEventInfo           += _playerLogicForGameServer_SocketEventInfo;
            _playerLogicForGameServer.SocketMainServerEventInfo += _playerLogicForGameServer_SocketMainServerEventInfo;
        }
コード例 #3
0
        public ClientViewModel(MahApps.Metro.Controls.Dialogs.IDialogCoordinator instance)
        {
            this.dialogCoordinator       = instance;
            _connectToMainServerCommand  = new DelegateCommand <object>((p) => ConnectToMainServer());
            _disconnectMainServerCommand = new DelegateCommand <object>((p) => DisconnectMainServer());
            _askOpenGameServerCommand    = new DelegateCommand <object>((p) => GetOpenGameServers());

            _connectToGameServerCommand      = new DelegateCommand <object>((p) => ConnectToGameServer());
            _disconnectFromGameServerCommand = new DelegateCommand <object>((p) => DisconnectFromGameServer());
            _askOpenGamesCommand             = new DelegateCommand <object>((p) => AskOpenGames());
            _joinGameCommand  = new DelegateCommand <object>((p) => JoinGame());
            _sendMoveCommand  = new DelegateCommand <object>((p) => SendMove());
            _leaveGameCommand = new DelegateCommand <object>((p) => LeaveGame());

            GameServers    = new System.Collections.ObjectModel.ObservableCollection <TanksCommon.SharedObjects.ListOfOpenGames>();
            Log            = new System.Collections.ObjectModel.ObservableCollection <TanksCommon.SharedObjects.LogEvent>();
            ServerStatus   = "Dead";
            ServerIp       = "127.0.0.1";
            ServerPort     = 1500;
            GameServerIp   = "127.0.0.1";
            GameServerPort = 1501;
            var localEp     = new System.Net.IPEndPoint(System.Net.IPAddress.Any, 1502);
            var myUdpClient = new System.Net.Sockets.UdpClient(localEp);

            myUdpClient.Client.ReceiveTimeout = 1000;
            _clientLogic     = new ComLogic.PlayerLogicForMainServer(myUdpClient);
            _gameServerLogic = new ComLogic.GameServerLogicForPlayer(myUdpClient);

            _clientLogic.RecievedOpenGamesEvent += _clientLogic_RecievedOpenGamesEvent;
            _clientLogic.SocketEventInfo        += _clientLogic_SocketEventInfo;
            _clientLogic.ReceivedDataLog        += _clientLogic_ReceivedDataLog;

            _gameServerLogic.SocketEventInfo        += _gameServerLogic_SocketEventInfo;
            _gameServerLogic.ReceivedDataLog        += _clientLogic_ReceivedDataLog;
            _gameServerLogic.RecievedOpenGamesEvent += _gameServerLogic_RecievedOpenGamesEvent;
        }