Exemplo n.º 1
0
        public override void Initialize()
        {
            _songSortDisplay = new SongSortDisplay {
                Position = Core.Metrics["SongSortDisplay", 0], Size = Core.Metrics["SongSortDisplay.Size", 0]
            };
            _songSortDisplay.InitSprites();
            _songListDrawOpacity = 255;
            Crossfader           = Core.Crossfader;
            _preloadState        = PreloadState.NOT_LOADING;
            _previewStarted      = false;

            _highScoreFrame = new HighScoreFrame
            {
                EnableFadeout = false,
                Position      = (Core.Metrics["SongHighScoreFrame", 0])
            };

            _highScoreFrame.InitSprites();
            _bpmMeter = new BpmMeter {
                Position = (Core.Metrics["BPMMeter", 0])
            };

            _playerOptionsSet = new PlayerOptionsSet {
                Players     = Core.Players, Positions = Core.Metrics["PlayerOptionsFrame"], CurrentGameType = (GameType)Core.Cookies["CurrentGameType"],
                DrawAttract = true, StackableFrames = true, Size = Core.Metrics["PlayerOptionsFrame.Size", 0]
            };
            _playerOptionsSet.GameTypeInvalidated += delegate
            { Core.ScreenTransition("MainMenu"); };
            _playerOptionsSet.CreatePlayerOptionsFrames();

            CreateSongList();

            var lastSongHash = Core.Settings.Get <int>("LastSongPlayed");
            var lastSong     = (from e in _songList where e.Song.GetHashCode() == lastSongHash select e).FirstOrDefault();

            if (lastSong != null)
            {
                _selectedIndex = _songList.IndexOf(lastSong);
                _songSortDisplay.SelectedSongIndex = _selectedIndex;
            }


            _songTypeDisplay = new SongTypeDisplay {
                Position = Core.Metrics["SongTypeDisplay", 0], Size = Core.Metrics["SongTypeDisplay.Size", 0]
            };
            InitSprites();
            _spectrumDrawer = new SpectrumDrawer
            {
                LevelsCount  = SPECTRUM_POINTS / SPECTRUM_CLUSTER_SIZE,
                Size         = Core.Metrics["SelectedSongSpectrum.Size", 0],
                Position     = Core.Metrics["SelectedSongSpectrum", 0],
                ColorShading = Color.White
            };
            _songLockedSprite = new Sprite3D {
                Position = Core.Metrics["BPMMeter", 0], Texture = TextureManager.Textures("SongLocked")
            };
            base.Initialize();
        }
Exemplo n.º 2
0
        private void InitManagers()
        {
            Log = new LogManager
            {
                Enabled = true, SaveLog = true, RootFolder = WgibeatRootFolder, LogLevel = LogLevel.INFO
            };
            Log.AddMessage("Initializing Cookies...", LogLevel.INFO);
            Cookies = new Dictionary <string, object>();

            TextureManager.Log            = Log;
            TextureManager.GraphicsDevice = this.GraphicsDevice;

            Metrics = new MetricsManager {
                Log = this.Log
            };
            Settings     = SettingsManager.LoadFromFile(WgibeatRootFolder + "\\settings.txt", this.Log);
            Log.LogLevel = (LogLevel)Settings.Get <int>("LogLevel");
            HighScores   = HighScoreManager.LoadFromFile(WgibeatRootFolder + "\\Scores.conf", this.Log);
            Profiles     = ProfileManager.LoadFromFolder(WgibeatRootFolder + "\\Profiles", this.Log);
            //TODO: Refactor
            Text = TextManager.LoadFromFile(WgibeatRootFolder + "\\Content\\Text\\OptionText.txt", this.Log);
            Text.AddResource(WgibeatRootFolder + "\\Content\\Text\\EditorText.txt");
            Text.AddResource(WgibeatRootFolder + "\\Content\\Text\\ModeText.txt");

            Audio = new AudioManager(this.Log)
            {
                FallbackSound = (WgibeatRootFolder + "\\Content\\SoundEffects\\Fallback.ogg")
            };
            Audio.SetMasterVolume((float)Settings.Get <double>("SongVolume"));

            Songs  = new SongManager(this.Log, this.Audio, this.Settings);
            Sounds = new SoundEffectManager(this.Log, this.Audio, this.Settings);

            Crossfader = new CrossfaderManager(this.Log, this.Audio);

            CPUManager = new CPUManager(this.Log);
            CPUManager.LoadWeights("CPUSkill.txt");

            _menuMusicManager = new MenuMusicManager(this.Log)
            {
                MusicFilePath = WgibeatRootFolder + "\\MenuMusic\\",
                AudioManager  = this.Audio,
                Crossfader    = this.Crossfader
            };
            _menuMusicManager.LoadMusicList(_menuMusicManager.MusicFilePath + "MusicList.txt");
            //        _menuMusicManager.ChangeMusic("InitialLoad");

            KeyMappings = new KeyMappings(this.Log);
            if (!KeyMappings.LoadFromFile("Keys.conf"))
            {
                KeyMappings.LoadDefault();
            }

            UpdateManager = new UpdateManager {
                Log = this.Log
            };
        }