diff --git a/Vocaluxe/GameModes/CGameMode.cs b/Vocaluxe/GameModes/CGameMode.cs index 8af3ffbb..3c45aabf 100644 --- a/Vocaluxe/GameModes/CGameMode.cs +++ b/Vocaluxe/GameModes/CGameMode.cs @@ -243,7 +243,31 @@ namespace Vocaluxe.GameModes { if (_CurrentSong >= 0 && _CurrentSong < _SongQueque.Count) { - return CSongs.GetSong(_SongQueque[_CurrentSong].SongID); + CSong song = CSongs.GetSong(_SongQueque[_CurrentSong].SongID); + + switch (GetCurrentGameMode()) + { + case EGameMode.TR_GAMEMODE_MEDLEY: + // set medley mode timings + song.Start = CGame.GetTimeFromBeats(song.Medley.StartBeat, song.BPM) - song.Medley.FadeInTime + song.Gap; + if (song.Start < 0f) + song.Start = 0f; + + song.Finish = CGame.GetTimeFromBeats(song.Medley.EndBeat, song.BPM) + song.Medley.FadeOutTime + song.Gap; + + // set lines to medley mode + song.Notes.SetMedley(song.Medley.StartBeat, song.Medley.EndBeat); + break; + + case EGameMode.TR_GAMEMODE_SHORTSONG: + song.Finish = CGame.GetTimeFromBeats(song.ShortEnd, song.BPM) + CSettings.DefaultMedleyFadeOutTime + song.Gap; + + // set lines to medley mode + song.Notes.SetMedley(song.Notes.GetLines(0).Line[0].FirstNoteBeat, song.ShortEnd); + break; + } + + return song; } return null; } diff --git a/Vocaluxe/GameModes/CGameModeDuet.cs b/Vocaluxe/GameModes/CGameModeDuet.cs deleted file mode 100644 index 70aa39c1..00000000 --- a/Vocaluxe/GameModes/CGameModeDuet.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; - -namespace Vocaluxe.GameModes -{ - class CGameModeDuet : CGameMode - { - public override void Init() - { - base.Init(); - - _Initialized = true; - } - } -} diff --git a/Vocaluxe/GameModes/CGameModeMedley.cs b/Vocaluxe/GameModes/CGameModeMedley.cs deleted file mode 100644 index f0fca4f5..00000000 --- a/Vocaluxe/GameModes/CGameModeMedley.cs +++ /dev/null @@ -1,34 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; - -using Vocaluxe.Base; -using Vocaluxe.Lib.Song; - -namespace Vocaluxe.GameModes -{ - class CGameModeMedley : CGameMode - { - public override void Init() - { - base.Init(); - - _Initialized = true; - } - - protected override void SongManipulation(int SongIndex) - { - CSong song = CSongs.AllSongs[_SongQueque[SongIndex].SongID]; - - // set medley mode timings - song.Start = CGame.GetTimeFromBeats(song.Medley.StartBeat, song.BPM) - song.Medley.FadeInTime + song.Gap; - if (song.Start < 0f) - song.Start = 0f; - - song.Finish = CGame.GetTimeFromBeats(song.Medley.EndBeat, song.BPM) + song.Medley.FadeOutTime + song.Gap; - - // set lines to medley mode - song.Notes.SetMedley(song.Medley.StartBeat, song.Medley.EndBeat); - } - } -} diff --git a/Vocaluxe/GameModes/CGameModeShortSong.cs b/Vocaluxe/GameModes/CGameModeShortSong.cs deleted file mode 100644 index 4bff1e4c..00000000 --- a/Vocaluxe/GameModes/CGameModeShortSong.cs +++ /dev/null @@ -1,29 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; - -using Vocaluxe.Base; -using Vocaluxe.Lib.Song; - -namespace Vocaluxe.GameModes -{ - class CGameModeShortSong : CGameMode - { - public override void Init() - { - base.Init(); - - _Initialized = true; - } - - protected override void SongManipulation(int SongIndex) - { - CSong song = CSongs.AllSongs[_SongQueque[SongIndex].SongID]; - - song.Finish = CGame.GetTimeFromBeats(song.ShortEnd, song.BPM) + CSettings.DefaultMedleyFadeOutTime + song.Gap; - - // set lines to medley mode - song.Notes.SetMedley(song.Notes.GetLines(0).Line[0].FirstNoteBeat, song.ShortEnd); - } - } -}