public GamesHandlerTests()
        {
            _context             = new MyChessContextStub();
            _notificationHandler = new NotificationHandlerStub();
            var chessBoard = new ChessBoard(NullLogger <ChessBoard> .Instance);

            _gamesHandler = new GamesHandler(NullLogger <GamesHandler> .Instance, _context, _notificationHandler, chessBoard);
        }
        public static void Initialize(LobbyModel lobby)
        {
            // Load all the spawn points and place the players into them
            GamesHandler.LoadSpawnPoints(lobby);

            // Make all the players load the map from the track
            GamesHandler.LoadTrackForPlayers(lobby);
        }
Exemple #3
0
        public static void Login()
        {
            Console.WriteLine("[" + Program.BOTNAME + "] - Starting Login...");

            isRunning = true;

            steamClient  = new SteamClient();
            steamWeb     = new SteamWeb();
            gamesHandler = new GamesHandler();

            MercuryManager = new CallbackManager(steamClient);

            //DebugLog.AddListener(new MyListener());
            //DebugLog.Enabled = true;

            #region Callbacks
            steamUser    = steamClient.GetHandler <SteamUser>();
            steamFriends = steamClient.GetHandler <SteamFriends>();

            MercuryManager.Subscribe <SteamClient.ConnectedCallback>(OnConnected);
            MercuryManager.Subscribe <SteamClient.DisconnectedCallback>(OnDisconnected);

            MercuryManager.Subscribe <SteamUser.LoggedOnCallback>(OnLoggedOn);
            MercuryManager.Subscribe <SteamUser.LoggedOffCallback>(OnLoggedOff);
            MercuryManager.Subscribe <SteamUser.AccountInfoCallback>(OnAccountInfo);
            MercuryManager.Subscribe <SteamUser.UpdateMachineAuthCallback>(OnMachineAuth);
            MercuryManager.Subscribe <SteamUser.LoginKeyCallback>(OnLoginKey);
            MercuryManager.Subscribe <SteamUser.WebAPIUserNonceCallback>(WebAPIUser);

            MercuryManager.Subscribe <SteamFriends.FriendsListCallback>(OnFriendsList);
            MercuryManager.Subscribe <SteamFriends.FriendMsgCallback>(OnFriendMsg);
            MercuryManager.Subscribe <SteamFriends.FriendMsgEchoCallback>(OnFriendEchoMsg);

            MercuryManager.Subscribe <SteamFriends.PersonaStateCallback>(OnPersonaState);
            MercuryManager.Subscribe <SteamFriends.PersonaChangeCallback>(OnSteamNameChange);
            #endregion

            steamClient.AddHandler(gamesHandler);
            MercuryManager.Subscribe <PurchaseResponseCallback>(OnPurchaseResponse);

            Console.WriteLine("[" + Program.BOTNAME + "] - Connecting to Steam...");

            steamClient.Connect();

            while (isRunning)
            {
                MercuryManager.RunWaitCallbacks(TimeSpan.FromMilliseconds(500));
            }
        }
Exemple #4
0
        public void GameSelection(Client player, int game)
        {
            //Destroy current CEF Browser, camera and return radar
            player.TriggerEvent("DestroyConnectionBrowser");
            player.TriggerEvent("DestroyCam");

            // Create the lobby
            LobbyModel lobby = new LobbyModel()
            {
                Id        = 0,
                Countdown = 0,
                Players   = new List <Client>(),
                Track     = 1
            };

            // Add the lobby to the list
            GamesHandler.lobbyList.Add(lobby);

            // Switch to the game chosen
            // Derby = 1
            switch (game)
            {
            case 1:
                // Iniciate Derby
                Games.Derby.Initializer.StartDerby(player);
                GamesHandler.lobbyList[0].Players.Add(player);
                GamesHandler.StartCountdown(GamesHandler.lobbyList[0].Id);
                break;

            case 2:
                Games.CVH.Initializer.StartCVH(player);
                break;

            case 3:
                SumoStartupHandler.Initialize(lobby);
                break;
            }
        }