예제 #1
0
        private void StatsProcessor_StatsUpdated(object sender, StatusUpdatedEventArgs e)
        {
            logger.LogStatDiff(e.PreviousStats, e.CurrentStats);

            if (e.CurrentStats.GamesStarted > e.PreviousStats.GamesStarted)
            {
                gameStarted = true;
            }

            if (e.CurrentStats.TimesImpostor > e.PreviousStats.TimesImpostor)
            {
                _ = lightsManager.SwitchToImpostorColor(3);
            }

            if (e.CurrentStats.TimesCrewmate > e.PreviousStats.TimesCrewmate)
            {
                _ = lightsManager.SwitchToCrewmateColor(3);
            }

            if (e.CurrentStats.GamesFinished > e.PreviousStats.GamesFinished)
            {
                gameStarted = false;
                _           = lightsManager.SwitchToDefaultColor(3);
            }

            if (!gameStarted)
            {
                Invoke(new Action(() => UpdateUI()));
            }
        }