aboutsummaryrefslogtreecommitdiffstats
path: root/Game
diff options
context:
space:
mode:
Diffstat (limited to 'Game')
-rw-r--r--Game/Code/Classes/UDraw.pas26
-rw-r--r--Game/Code/Classes/UMain.pas42
-rw-r--r--Game/Code/Classes/UMusic.pas22
-rw-r--r--Game/Code/Screens/UScreenSing.pas20
-rw-r--r--Game/Code/Screens/UScreenSingModi.pas4
5 files changed, 57 insertions, 57 deletions
diff --git a/Game/Code/Classes/UDraw.pas b/Game/Code/Classes/UDraw.pas
index a5bd8afa..e405ec07 100644
--- a/Game/Code/Classes/UDraw.pas
+++ b/Game/Code/Classes/UDraw.pas
@@ -401,8 +401,8 @@ begin
Rec.Right := X + (Start+Length-Lines[0].Line[Lines[0].Current].Note[0].Start) * TempR - NotesW - 0.5 + 10*ScreenX;
// (nowe) - dunno
- if (Start+Length-1 = LineState.CurrentBeatD) then
- Rec.Right := Rec.Right - (1-Frac(LineState.MidBeatD)) * TempR;
+ if (Start+Length-1 = LyricsState.CurrentBeatD) then
+ Rec.Right := Rec.Right - (1-Frac(LyricsState.MidBeatD)) * TempR;
// the left note is more right than the right note itself, sounds weird - so we fix that xD
if Rec.Right <= Rec.Left then
Rec.Right := Rec.Left;
@@ -434,8 +434,8 @@ begin
// Perfect note is stored
if Perfect and (Ini.EffectSing=1) then
begin
- A := 1 - 2*(LineState.GetCurrentTime() - GetTimeFromBeat(Start+Length));
- if not (Start+Length-1 = LineState.CurrentBeatD) then
+ A := 1 - 2*(LyricsState.GetCurrentTime() - GetTimeFromBeat(Start+Length));
+ if not (Start+Length-1 = LyricsState.CurrentBeatD) then
begin
//Star animation counter
//inc(Starfr);
@@ -591,7 +591,7 @@ begin
FirstNoteDelta := FirstNoteBeat - CurLine.Start;
// beats from current beat to the first note of the line
- BarMoveDelta := FirstNoteBeat - LineState.MidBeat;
+ BarMoveDelta := FirstNoteBeat - LyricsState.MidBeat;
if (FirstNoteDelta > 8) and // if the wait-time is large enough
(BarMoveDelta > 0) then // and the first note of the line is not reached
@@ -693,7 +693,7 @@ begin
end;
// draw Lyrics
- LyricEngine.Draw(LineState.MidBeat);
+ LyricEngine.Draw(LyricsState.MidBeat);
SingDrawLyricHelper(NR.Left, NR.WMid);
// oscilloscope
@@ -911,7 +911,7 @@ begin
end;
// Draw Lyrics
- ScreenSingModi.Lyrics.Draw(LineState.MidBeat);
+ ScreenSingModi.Lyrics.Draw(LyricsState.MidBeat);
// todo: Lyrics
{ // rysuje pasek, podpowiadajacy poczatek spiwania w scenie
@@ -919,9 +919,9 @@ begin
BarFrom := Lines[0].Line[Lines[0].Current].StartNote - Lines[0].Line[Lines[0].Current].Start;
if BarFrom > 40 then BarFrom := 40;
if (Lines[0].Line[Lines[0].Current].StartNote - Lines[0].Line[Lines[0].Current].Start > 8) and // dluga przerwa //16->12 for more help bars and then 12->8 for even more
- (Lines[0].Line[Lines[0].Current].StartNote - LineState.MidBeat > 0) and // przed tekstem
- (Lines[0].Line[Lines[0].Current].StartNote - LineState.MidBeat < 40) then begin // ale nie za wczesnie
- BarWspol := (LineState.MidBeat - (Lines[0].Line[Lines[0].Current].StartNote - BarFrom)) / BarFrom;
+ (Lines[0].Line[Lines[0].Current].StartNote - LyricsState.MidBeat > 0) and // przed tekstem
+ (Lines[0].Line[Lines[0].Current].StartNote - LyricsState.MidBeat < 40) then begin // ale nie za wczesnie
+ BarWspol := (LyricsState.MidBeat - (Lines[0].Line[Lines[0].Current].StartNote - BarFrom)) / BarFrom;
Rec.Left := NR.Left + BarWspol * (ScreenSingModi.LyricMain.ClientX - NR.Left - 50) + 10*ScreenX;
Rec.Right := Rec.Left + 50;
Rec.Top := Skin_LyricsT + 3;
@@ -1361,11 +1361,11 @@ begin
glTexCoord2f(0, 0);
glVertex2f(x, y);
- CurLyricsTime := LineState.GetCurrentTime();
+ CurLyricsTime := LyricsState.GetCurrentTime();
if (CurLyricsTime > 0) and
- (LineState.TotalTime > 0) then
+ (LyricsState.TotalTime > 0) then
begin
- LyricsProgress := CurLyricsTime / LineState.TotalTime;
+ LyricsProgress := CurLyricsTime / LyricsState.TotalTime;
glTexCoord2f((width * LyricsProgress) / 8, 0);
glVertex2f(x + width * LyricsProgress, y);
diff --git a/Game/Code/Classes/UMain.pas b/Game/Code/Classes/UMain.pas
index 4037d457..9688fe76 100644
--- a/Game/Code/Classes/UMain.pas
+++ b/Game/Code/Classes/UMain.pas
@@ -231,7 +231,7 @@ begin
Log.LogBenchmark('Initializing Sound', 1);
// Lyrics-engine with media reference timer
- LineState := TLineState.Create();
+ LyricsState := TLyricsState.Create();
// Theme
Log.BenchmarkStart(1);
@@ -648,35 +648,35 @@ var
CurLine: PLine;
CurNote: PLineFragment;
begin
- LineState.UpdateBeats();
+ LyricsState.UpdateBeats();
// sentences routines
for CountGr := 0 to 0 do //High(Lines)
begin;
CP := CountGr;
// old parts
- LineState.OldLine := Lines[CP].Current;
+ LyricsState.OldLine := Lines[CP].Current;
// choose current parts
for Count := 0 to Lines[CP].High do
begin
- if LineState.CurrentBeat >= Lines[CP].Line[Count].Start then
+ if LyricsState.CurrentBeat >= Lines[CP].Line[Count].Start then
Lines[CP].Current := Count;
end;
// clean player note if there is a new line
// (optimization on halfbeat time)
- if Lines[CP].Current <> LineState.OldLine then
+ if Lines[CP].Current <> LyricsState.OldLine then
NewSentence(Screen);
end; // for CountGr
// make some operations on clicks
- if {(LineState.CurrentBeatC >= 0) and }(LineState.OldBeatC <> LineState.CurrentBeatC) then
+ if {(LyricsState.CurrentBeatC >= 0) and }(LyricsState.OldBeatC <> LyricsState.CurrentBeatC) then
NewBeatClick(Screen);
// make some operations when detecting new voice pitch
- if (LineState.CurrentBeatD >= 0) and (LineState.OldBeatD <> LineState.CurrentBeatD) then
+ if (LyricsState.CurrentBeatD >= 0) and (LyricsState.OldBeatD <> LyricsState.CurrentBeatD) then
NewBeatDetect(Screen);
CurLine := @Lines[0].Line[Lines[0].Current];
@@ -686,10 +686,10 @@ begin
for N := 0 to CurLine.HighNote do
begin
CurNote := @CurLine.Note[N];
- if (CurNote.Start <= LineState.MidBeat) and
- (CurNote.Start + CurNote.Length >= LineState.MidBeat) then
+ if (CurNote.Start <= LyricsState.MidBeat) and
+ (CurNote.Start + CurNote.Length >= LyricsState.MidBeat) then
begin
- Done := (LineState.MidBeat - CurNote.Start) / CurNote.Length;
+ Done := (LyricsState.MidBeat - CurNote.Start) / CurNote.Length;
end;
end;
end;
@@ -716,14 +716,14 @@ var
begin
// beat click
if ((Ini.BeatClick = 1) and
- ((LineState.CurrentBeatC + Lines[0].Resolution + Lines[0].NotesGAP) mod Lines[0].Resolution = 0)) then
+ ((LyricsState.CurrentBeatC + Lines[0].Resolution + Lines[0].NotesGAP) mod Lines[0].Resolution = 0)) then
begin
AudioPlayback.PlaySound(SoundLib.Click);
end;
for Count := 0 to Lines[0].Line[Lines[0].Current].HighNote do
begin
- if (Lines[0].Line[Lines[0].Current].Note[Count].Start = LineState.CurrentBeatC) then
+ if (Lines[0].Line[Lines[0].Current].Note[Count].Start = LyricsState.CurrentBeatC) then
begin
// click assist
if Ini.ClickAssist = 1 then
@@ -785,8 +785,8 @@ begin
begin
CurrentLineFragment := @Line.Note[LineFragmentIndex];
// check if line is active
- if ((CurrentLineFragment.Start <= LineState.CurrentBeatD) and
- (CurrentLineFragment.Start + CurrentLineFragment.Length-1 >= LineState.CurrentBeatD)) and
+ if ((CurrentLineFragment.Start <= LyricsState.CurrentBeatD) and
+ (CurrentLineFragment.Start + CurrentLineFragment.Length-1 >= LyricsState.CurrentBeatD)) and
(CurrentLineFragment.NoteType <> ntFreestyle) and // but ignore FreeStyle notes
(CurrentLineFragment.Length > 0) then // and make sure the note lengths is at least 1
begin
@@ -825,8 +825,8 @@ begin
for LineFragmentIndex := 0 to Line.HighNote do
begin
CurrentLineFragment := @Line.Note[LineFragmentIndex];
- if (CurrentLineFragment.Start <= LineState.OldBeatD+1) and
- (CurrentLineFragment.Start + CurrentLineFragment.Length > LineState.OldBeatD+1) then
+ if (CurrentLineFragment.Start <= LyricsState.OldBeatD+1) and
+ (CurrentLineFragment.Start + CurrentLineFragment.Length > LyricsState.OldBeatD+1) then
begin
// compare notes (from song-file and from player)
@@ -889,7 +889,7 @@ begin
// if last has the same tone
if ((CurrentPlayer.LengthNote > 0) and
(LastPlayerNote.Tone = CurrentSound.Tone) and
- ((LastPlayerNote.Start + LastPlayerNote.Length) = LineState.CurrentBeatD)) then
+ ((LastPlayerNote.Start + LastPlayerNote.Length) = LyricsState.CurrentBeatD)) then
begin
NewNote := false;
end;
@@ -897,7 +897,7 @@ begin
// if is not as new note to control
for LineFragmentIndex := 0 to Line.HighNote do
begin
- if (Line.Note[LineFragmentIndex].Start = LineState.CurrentBeatD) then
+ if (Line.Note[LineFragmentIndex].Start = LyricsState.CurrentBeatD) then
NewNote := true;
end;
@@ -913,10 +913,10 @@ begin
LastPlayerNote := @CurrentPlayer.Note[CurrentPlayer.HighNote];
with LastPlayerNote^ do
begin
- Start := LineState.CurrentBeatD;
+ Start := LyricsState.CurrentBeatD;
Length := 1;
Tone := CurrentSound.Tone; // Tone || ToneAbs
- Detect := LineState.MidBeat;
+ Detect := LyricsState.MidBeat;
Hit := NoteHit; // half note patch
end;
end
@@ -950,7 +950,7 @@ begin
begin
Line := @Lines[0].Line[SentenceDetected];
CurrentLineFragment := @Line.Note[Line.HighNote];
- if ((CurrentLineFragment.Start + CurrentLineFragment.Length - 1) = LineState.CurrentBeatD) then
+ if ((CurrentLineFragment.Start + CurrentLineFragment.Length - 1) = LyricsState.CurrentBeatD) then
begin
if assigned(Screen) then
Screen.OnSentenceEnd(SentenceDetected);
diff --git a/Game/Code/Classes/UMusic.pas b/Game/Code/Classes/UMusic.pas
index 2df5286e..f3474e30 100644
--- a/Game/Code/Classes/UMusic.pas
+++ b/Game/Code/Classes/UMusic.pas
@@ -65,10 +65,10 @@ type
end;
(**
- * TLineState contains all information that concerns the
- * state of the lyrics.
+ * TLyricsState contains all information concerning the
+ * state of the lyrics, e.g. the current beat or duration of the lyrics.
*)
- TLineState = class
+ TLyricsState = class
private
Timer: TRelativeTimer; // keeps track of the current time
public
@@ -513,7 +513,7 @@ type
var
// TODO: JB --- THESE SHOULD NOT BE GLOBAL
Lines: array of TLines;
- LineState: TLineState;
+ LyricsState: TLyricsState;
SoundLib: TSoundLibrary;
@@ -930,7 +930,7 @@ end;
{ TVoiceRemoval }
-constructor TLineState.Create();
+constructor TLyricsState.Create();
begin
// create a triggered timer, so we can Pause() it, set the time
// and Resume() it afterwards for better synching.
@@ -940,24 +940,24 @@ begin
Reset();
end;
-procedure TLineState.Pause();
+procedure TLyricsState.Pause();
begin
Timer.Pause();
end;
-procedure TLineState.Resume();
+procedure TLyricsState.Resume();
begin
Timer.Resume();
end;
-procedure TLineState.SetCurrentTime(Time: real);
+procedure TLyricsState.SetCurrentTime(Time: real);
begin
// do not start the timer (if not started already),
// after setting the current time
Timer.SetTime(Time, false);
end;
-function TLineState.GetCurrentTime(): real;
+function TLyricsState.GetCurrentTime(): real;
begin
Result := Timer.GetTime();
end;
@@ -967,7 +967,7 @@ end;
* The timer will be stopped afterwards so you have to call Resume()
* to start the lyrics timer.
*)
-procedure TLineState.Reset();
+procedure TLyricsState.Reset();
begin
Pause();
SetCurrentTime(0);
@@ -992,7 +992,7 @@ end;
* Updates the beat information (CurrentBeat/MidBeat/...) according to the
* current lyric time.
*)
-procedure TLineState.UpdateBeats();
+procedure TLyricsState.UpdateBeats();
var
CurLyricsTime: real;
begin
diff --git a/Game/Code/Screens/UScreenSing.pas b/Game/Code/Screens/UScreenSing.pas
index a78c7ce0..d7050bf5 100644
--- a/Game/Code/Screens/UScreenSing.pas
+++ b/Game/Code/Screens/UScreenSing.pas
@@ -220,7 +220,7 @@ begin
// pause Time
Paused := true;
- LineState.Pause();
+ LyricsState.Pause();
// pause Music
AudioPlayback.Pause;
@@ -232,7 +232,7 @@ begin
end
else //disable Pause
begin
- LineState.Resume();
+ LyricsState.Resume();
// Play Music
AudioPlayback.Play;
@@ -510,14 +510,14 @@ begin
Tex_Background.TexNum := 0;
// prepare lyrics timer
- LineState.Reset();
- LineState.SetCurrentTime(CurrentSong.Start);
- LineState.StartTime := CurrentSong.Gap;
+ LyricsState.Reset();
+ LyricsState.SetCurrentTime(CurrentSong.Start);
+ LyricsState.StartTime := CurrentSong.Gap;
if (CurrentSong.Finish > 0) then
- LineState.TotalTime := CurrentSong.Finish / 1000
+ LyricsState.TotalTime := CurrentSong.Finish / 1000
else
- LineState.TotalTime := AudioPlayback.Length;
- LineState.UpdateBeats();
+ LyricsState.TotalTime := AudioPlayback.Length;
+ LyricsState.UpdateBeats();
// prepare music
AudioPlayback.Stop();
@@ -911,7 +911,7 @@ end;
procedure TScreenSing.onShowFinish;
begin
// start lyrics
- LineState.Resume();
+ LyricsState.Resume();
// start music
AudioPlayback.Play();
@@ -1069,7 +1069,7 @@ begin
// retrieve current lyrics time, we have to store the value to avoid
// that min- and sec-values do not match
- CurLyricsTime := LineState.GetCurrentTime();
+ CurLyricsTime := LyricsState.GetCurrentTime();
Min := Round(CurLyricsTime) div 60;
Sec := Round(CurLyricsTime) mod 60;
diff --git a/Game/Code/Screens/UScreenSingModi.pas b/Game/Code/Screens/UScreenSingModi.pas
index 3eeb0374..616ba1c1 100644
--- a/Game/Code/Screens/UScreenSingModi.pas
+++ b/Game/Code/Screens/UScreenSingModi.pas
@@ -512,7 +512,7 @@ begin
if DLLMan.Selected.LoadSong then
begin
// update static menu with time ...
- CurLyricsTime := LineState.GetCurrentTime();
+ CurLyricsTime := LyricsState.GetCurrentTime();
Min := Round(CurLyricsTime) div 60;
Sec := Round(CurLyricsTime) mod 60;
@@ -543,7 +543,7 @@ begin
if ShowFinish then begin
if DllMan.Selected.LoadSong then
begin
- if (not AudioPlayback.Finished) and ((CurrentSong.Finish = 0) or (LineState.GetCurrentTime*1000 <= CurrentSong.Finish)) then begin
+ if (not AudioPlayback.Finished) and ((CurrentSong.Finish = 0) or (LyricsState.GetCurrentTime*1000 <= CurrentSong.Finish)) then begin
//Pause Mod:
if not Paused then
Sing(Self); // analyze song