Beispiel #1
0
        private void stateChanged(object sender, EventArgs e)
        {
            if (!IsDisplayed || ignoreStateChanges)
            {
                return;
            }

            ModButton b = sender as ModButton;

            if (b == null)
            {
                return;
            }

            Mods oldMods = ModManager.ModStatus;

            foreach (Mods s in b.AvailableStates)
            {
                ModManager.ModStatus &= ~s;
            }

            ModManager.ModStatus |= b.State;

            ModManager.CheckForCurrentPlayMode(b.State);

            ignoreStateChanges = true;
            updateMods();
            ignoreStateChanges = false;

            if (BeatmapDifficultyCalculator.MaskRelevantMods(oldMods) != BeatmapDifficultyCalculator.MaskRelevantMods(ModManager.ModStatus))
            {
                ModManager.TriggerModsChanged();
            }
        }
Beispiel #2
0
        private void clearAll(object sender, EventArgs e)
        {
            bool needsUpdate = BeatmapDifficultyCalculator.MaskRelevantMods(ModManager.ModStatus) > 0;

            ModManager.Reset();
            updateMods();

            if (needsUpdate)
            {
                ModManager.TriggerModsChanged();
            }
        }