aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Game/Code/Classes/UDraw.pas90
-rw-r--r--Game/Code/Classes/UFiles.pas2
-rw-r--r--Game/Code/Classes/UMain.pas132
-rw-r--r--Game/Code/Classes/UMusic.pas60
-rw-r--r--Game/Code/Classes/USong.pas6
-rw-r--r--Game/Code/Screens/UScreenEditSub.pas252
-rw-r--r--Game/Code/Screens/UScreenSing.pas24
-rw-r--r--Game/Code/Screens/UScreenSingModi.pas12
8 files changed, 289 insertions, 289 deletions
diff --git a/Game/Code/Classes/UDraw.pas b/Game/Code/Classes/UDraw.pas
index 8c4f53f3..f64f0389 100644
--- a/Game/Code/Classes/UDraw.pas
+++ b/Game/Code/Classes/UDraw.pas
@@ -202,16 +202,16 @@ var
Pet: integer;
TempR: real;
begin
- TempR := (Right-Left) / (Lines[NrCzesci].Line[Lines[NrCzesci].Akt].End_ - Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote);
+ TempR := (Right-Left) / (Lines[NrCzesci].Line[Lines[NrCzesci].Current].End_ - Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote);
glEnable(GL_BLEND);
glBegin(GL_LINES);
- for Pet := Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote to Lines[NrCzesci].Line[Lines[NrCzesci].Akt].End_ do begin
+ for Pet := Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote to Lines[NrCzesci].Line[Lines[NrCzesci].Current].End_ do begin
if (Pet mod Lines[NrCzesci].Resolution) = Lines[NrCzesci].NotesGAP then
glColor4f(0, 0, 0, 1)
else
glColor4f(0, 0, 0, 0.3);
- glVertex2f(Left + TempR * (Pet - Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote), Top);
- glVertex2f(Left + TempR * (Pet - Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote), Top + 135);
+ glVertex2f(Left + TempR * (Pet - Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote), Top);
+ glVertex2f(Left + TempR * (Pet - Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote), Top + 135);
end;
glEnd;
glDisable(GL_BLEND);
@@ -248,7 +248,7 @@ begin
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
lTmpA := (Right-Left);
- lTmpB := (Lines[NrCzesci].Line[Lines[NrCzesci].Akt].End_ - Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote);
+ lTmpB := (Lines[NrCzesci].Line[Lines[NrCzesci].Current].End_ - Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote);
{$IFDEF LAZARUS}
(*
@@ -269,7 +269,7 @@ begin
end;
- with Lines[NrCzesci].Line[Lines[NrCzesci].Akt] do begin
+ with Lines[NrCzesci].Line[Lines[NrCzesci].Current] do begin
for Pet := 0 to HighNote do begin
with Note[Pet] do begin
if not FreeStyle then begin
@@ -287,7 +287,7 @@ begin
glColor4f(1, 1, 1, 1); // We set alpha to 1, cause we can control the transparency through the png itself
// Czesci == teil, element == piece, element | koniec == end / ending
// lewa czesc - left part
- Rec.Left := (Start-Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote) * TempR + Left + 0.5 + 10*ScreenX;
+ Rec.Left := (Start-Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote) * TempR + Left + 0.5 + 10*ScreenX;
Rec.Right := Rec.Left + NotesW;
Rec.Top := Top - (Tone-BaseNote)*Space/2 - NotesH;
Rec.Bottom := Rec.Top + 2 * NotesH;
@@ -305,7 +305,7 @@ begin
// srodkowa czesc - middle part
Rec.Left := Rec.Right;
- Rec.Right := (Start+Lenght-Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote) * TempR + Left - NotesW - 0.5 + 10*ScreenX; // Dlugosc == lenght
+ Rec.Right := (Start+Lenght-Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote) * TempR + Left - NotesW - 0.5 + 10*ScreenX; // Dlugosc == lenght
glBindTexture(GL_TEXTURE_2D, Tex_plain_Mid[PlayerNumber].TexNum);
glTexParameterf( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT );
@@ -373,13 +373,13 @@ var
//// if Player[NrGracza].IlNut > 0 then
begin
- TempR := W / (Lines[0].Line[Lines[0].Akt].End_ - Lines[0].Line[Lines[0].Akt].StartNote);
- for N := 0 to Player[NrGracza].HighNut do
+ TempR := W / (Lines[0].Line[Lines[0].Current].End_ - Lines[0].Line[Lines[0].Current].StartNote);
+ for N := 0 to Player[NrGracza].HighNote do
begin
with Player[NrGracza].Note[N] do
begin
// Left part of note
- Rec.Left := X + (Start-Lines[0].Line[Lines[0].Akt].StartNote) * TempR + 0.5 + 10*ScreenX;
+ Rec.Left := X + (Start-Lines[0].Line[Lines[0].Current].StartNote) * TempR + 0.5 + 10*ScreenX;
Rec.Right := Rec.Left + NotesW;
// Draw it in half size, if not hit
@@ -392,7 +392,7 @@ var
NotesH2 := int(NotesH * 0.65);
end;
- Rec.Top := Y - (Tone-Lines[0].Line[Lines[0].Akt].BaseNote)*Space/2 - NotesH2;
+ Rec.Top := Y - (Tone-Lines[0].Line[Lines[0].Current].BaseNote)*Space/2 - NotesH2;
Rec.Bottom := Rec.Top + 2 *NotesH2;
// draw the left part
@@ -407,11 +407,11 @@ var
// Middle part of the note
Rec.Left := Rec.Right;
- Rec.Right := X + (Start+Lenght-Lines[0].Line[Lines[0].Akt].StartNote) * TempR - NotesW - 0.5 + 10*ScreenX;
+ Rec.Right := X + (Start+Lenght-Lines[0].Line[Lines[0].Current].StartNote) * TempR - NotesW - 0.5 + 10*ScreenX;
// (nowe) - dunno
- if (Start+Lenght-1 = Czas.AktBeatD) then
- Rec.Right := Rec.Right - (1-Frac(Czas.MidBeatD)) * TempR;
+ if (Start+Lenght-1 = LineState.CurrentBeatD) then
+ Rec.Right := Rec.Right - (1-Frac(LineState.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;
@@ -442,8 +442,8 @@ var
// Perfect note is stored
if Perfect and (Ini.EffectSing=1) then
begin
- A := 1 - 2*(Czas.Teraz - GetTimeFromBeat(Start+Lenght));
- if not (Start+Lenght-1 = Czas.AktBeatD) then
+ A := 1 - 2*(LineState.CurrentTime - GetTimeFromBeat(Start+Lenght));
+ if not (Start+Lenght-1 = LineState.CurrentBeatD) then
//Star animation counter
//inc(Starfr);
@@ -484,7 +484,7 @@ begin
lTmpA := (Right-Left);
- lTmpB := (Lines[NrCzesci].Line[Lines[NrCzesci].Akt].End_ - Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote);
+ lTmpB := (Lines[NrCzesci].Line[Lines[NrCzesci].Current].End_ - Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote);
if ( lTmpA > 0 ) AND
@@ -497,7 +497,7 @@ begin
TempR := 0;
end;
- with Lines[NrCzesci].Line[Lines[NrCzesci].Akt] do begin
+ with Lines[NrCzesci].Line[Lines[NrCzesci].Current] do begin
for Pet := 0 to HighNote do begin
with Note[Pet] do begin
if not FreeStyle then begin
@@ -506,10 +506,10 @@ begin
W := NotesW * 2 + 2;
H := NotesH * 1.5 + 3.5;
- X2 := (Start-Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote) * TempR + Left + 0.5 + 10*ScreenX + 4; // wciecie
+ X2 := (Start-Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote) * TempR + Left + 0.5 + 10*ScreenX + 4; // wciecie
X1 := X2-W;
- X3 := (Start+Lenght-Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote) * TempR + Left - 0.5 + 10*ScreenX - 4; // wciecie
+ X3 := (Start+Lenght-Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote) * TempR + Left - 0.5 + 10*ScreenX - 4; // wciecie
X4 := X3+W;
// left
@@ -617,19 +617,19 @@ begin
end;
// Draw Lyrics
- ScreenSing.Lyrics.Draw(Czas.MidBeat);
+ ScreenSing.Lyrics.Draw(LineState.MidBeat);
// todo: Lyrics
{ // rysuje pasek, podpowiadajacy poczatek spiwania w scenie
FS := 1.3;
- BarFrom := Lines[0].Line[Lines[0].Akt].StartNote - Lines[0].Line[Lines[0].Akt].Start;
+ 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].Akt].StartNote - Lines[0].Line[Lines[0].Akt].Start > 8) and // dluga przerwa //16->12 for more help bars and then 12->8 for even more
- (Lines[0].Line[Lines[0].Akt].StartNote - Czas.MidBeat > 0) and // przed tekstem
- (Lines[0].Line[Lines[0].Akt].StartNote - Czas.MidBeat < 40) then begin // ale nie za wczesnie
- BarWspol := (Czas.MidBeat - (Lines[0].Line[Lines[0].Akt].StartNote - BarFrom)) / BarFrom;
+ 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;
Rec.Left := NR.Left + BarWspol *
-// (NR.WMid - Lines[0].Line[Lines[0].Akt].LyricWidth / 2 * FS - 50);
+// (NR.WMid - Lines[0].Line[Lines[0].Current].LyricWidth / 2 * FS - 50);
(ScreenSing.LyricMain.ClientX - NR.Left - 50) + 10*ScreenX;
Rec.Right := Rec.Left + 50;
Rec.Top := Skin_LyricsT + 3;
@@ -874,17 +874,17 @@ begin
end;
// Draw Lyrics
- ScreenSingModi.Lyrics.Draw(Czas.MidBeat);
+ ScreenSingModi.Lyrics.Draw(LineState.MidBeat);
// todo: Lyrics
{ // rysuje pasek, podpowiadajacy poczatek spiwania w scenie
FS := 1.3;
- BarFrom := Lines[0].Line[Lines[0].Akt].StartNote - Lines[0].Line[Lines[0].Akt].Start;
+ 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].Akt].StartNote - Lines[0].Line[Lines[0].Akt].Start > 8) and // dluga przerwa //16->12 for more help bars and then 12->8 for even more
- (Lines[0].Line[Lines[0].Akt].StartNote - Czas.MidBeat > 0) and // przed tekstem
- (Lines[0].Line[Lines[0].Akt].StartNote - Czas.MidBeat < 40) then begin // ale nie za wczesnie
- BarWspol := (Czas.MidBeat - (Lines[0].Line[Lines[0].Akt].StartNote - BarFrom)) / BarFrom;
+ 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;
Rec.Left := NR.Left + BarWspol * (ScreenSingModi.LyricMain.ClientX - NR.Left - 50) + 10*ScreenX;
Rec.Right := Rec.Left + 50;
Rec.Top := Skin_LyricsT + 3;
@@ -1239,8 +1239,8 @@ begin
glEnable(GL_TEXTURE_2D);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
- TempR := (Right-Left) / (Lines[NrCzesci].Line[Lines[NrCzesci].Akt].End_ - Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote);
- with Lines[NrCzesci].Line[Lines[NrCzesci].Akt] do begin
+ TempR := (Right-Left) / (Lines[NrCzesci].Line[Lines[NrCzesci].Current].End_ - Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote);
+ with Lines[NrCzesci].Line[Lines[NrCzesci].Current] do begin
for Pet := 0 to HighNote do begin
with Note[Pet] do begin
@@ -1254,7 +1254,7 @@ begin
// lewa czesc - left part
- Rec.Left := (Start-Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote) * TempR + Left + 0.5 + 10*ScreenX;
+ Rec.Left := (Start-Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote) * TempR + Left + 0.5 + 10*ScreenX;
Rec.Right := Rec.Left + NotesW;
Rec.Top := Top - (Tone-BaseNote)*Space/2 - NotesH;
Rec.Bottom := Rec.Top + 2 * NotesH;
@@ -1268,7 +1268,7 @@ begin
// srodkowa czesc - middle part
Rec.Left := Rec.Right;
- Rec.Right := (Start+Lenght-Lines[NrCzesci].Line[Lines[NrCzesci].Akt].StartNote) * TempR + Left - NotesW - 0.5 + 10*ScreenX;
+ Rec.Right := (Start+Lenght-Lines[NrCzesci].Line[Lines[NrCzesci].Current].StartNote) * TempR + Left - NotesW - 0.5 + 10*ScreenX;
glBindTexture(GL_TEXTURE_2D, Tex_Mid[Color].TexNum);
glBegin(GL_QUADS);
@@ -1323,15 +1323,15 @@ begin
glTexCoord2f(0, 0);
glVertex2f(x,y);
- if ( Czas.Teraz > 0 ) AND
- ( Czas.Razem > 0 ) THEN
+ if ( LineState.CurrentTime > 0 ) AND
+ ( LineState.TotalTime > 0 ) THEN
BEGIN
- lTmp := Czas.Teraz/Czas.Razem;
- glTexCoord2f((width*Czas.Teraz/Czas.Razem)/8, 0);
- glVertex2f(x+width*Czas.Teraz/Czas.Razem, y);
+ lTmp := LineState.CurrentTime/LineState.TotalTime;
+ glTexCoord2f((width*LineState.CurrentTime/LineState.TotalTime)/8, 0);
+ glVertex2f(x+width*LineState.CurrentTime/LineState.TotalTime, y);
- glTexCoord2f((width*Czas.Teraz/Czas.Razem)/8, 1);
- glVertex2f(x+width*Czas.Teraz/Czas.Razem, y+height);
+ glTexCoord2f((width*LineState.CurrentTime/LineState.TotalTime)/8, 1);
+ glVertex2f(x+width*LineState.CurrentTime/LineState.TotalTime, y+height);
END;
glTexCoord2f(0, 1);
diff --git a/Game/Code/Classes/UFiles.pas b/Game/Code/Classes/UFiles.pas
index 70c97b88..def74c70 100644
--- a/Game/Code/Classes/UFiles.pas
+++ b/Game/Code/Classes/UFiles.pas
@@ -48,7 +48,7 @@ begin
Lines[Pet].Line[0].LyricWidth := 0;
Player[pet].Score := 0;
Player[pet].IlNut := 0;
- Player[pet].HighNut := -1;
+ Player[pet].HighNote := -1;
end;
(* FIXME
diff --git a/Game/Code/Classes/UMain.pas b/Game/Code/Classes/UMain.pas
index 4fab84e7..c13050e5 100644
--- a/Game/Code/Classes/UMain.pas
+++ b/Game/Code/Classes/UMain.pas
@@ -55,7 +55,7 @@ type
//Meter: real;
- HighNut: integer;
+ HighNote: integer;
IlNut: integer;
Note: array of record
Start: integer;
@@ -675,79 +675,79 @@ var
Done: real;
N: integer;
begin
- Czas.Teraz := Czas.Teraz + TimeSkip;
+ LineState.CurrentTime := LineState.CurrentTime + TimeSkip;
- Czas.OldBeat := Czas.AktBeat;
- Czas.MidBeat := GetMidBeat(Czas.Teraz - (CurrentSong.Gap{ + 90 I've forgotten for what it is}) / 1000); // new system with variable BPM in function
- Czas.AktBeat := Floor(Czas.MidBeat);
+ LineState.OldBeat := LineState.CurrentBeat;
+ LineState.MidBeat := GetMidBeat(LineState.CurrentTime - (CurrentSong.Gap{ + 90 I've forgotten for what it is}) / 1000); // new system with variable BPM in function
+ LineState.CurrentBeat := Floor(LineState.MidBeat);
-// Czas.OldHalf := Czas.AktHalf;
-// Czas.MidHalf := Czas.MidBeat + 0.5;
-// Czas.AktHalf := Floor(Czas.MidHalf);
+// LineState.OldHalf := LineState.AktHalf;
+// LineState.MidHalf := LineState.MidBeat + 0.5;
+// LineState.AktHalf := Floor(LineState.MidHalf);
- Czas.OldBeatC := Czas.AktBeatC;
- Czas.MidBeatC := GetMidBeat(Czas.Teraz - (CurrentSong.Gap) / 1000);
- Czas.AktBeatC := Floor(Czas.MidBeatC);
+ LineState.OldBeatC := LineState.CurrentBeatC;
+ LineState.MidBeatC := GetMidBeat(LineState.CurrentTime - (CurrentSong.Gap) / 1000);
+ LineState.CurrentBeatC := Floor(LineState.MidBeatC);
- Czas.OldBeatD := Czas.AktBeatD;
- Czas.MidBeatD := -0.5+GetMidBeat(Czas.Teraz - (CurrentSong.Gap + 120 + 20) / 1000); // MidBeat with addition GAP
- Czas.AktBeatD := Floor(Czas.MidBeatD);
- Czas.FracBeatD := Frac(Czas.MidBeatD);
+ LineState.OldBeatD := LineState.CurrentBeatD;
+ LineState.MidBeatD := -0.5+GetMidBeat(LineState.CurrentTime - (CurrentSong.Gap + 120 + 20) / 1000); // MidBeat with addition GAP
+ LineState.CurrentBeatD := Floor(LineState.MidBeatD);
+ LineState.FracBeatD := Frac(LineState.MidBeatD);
// sentences routines
for PetGr := 0 to 0 do //High(Gracz)
begin;
CP := PetGr;
// ustawianie starej parts
- Czas.OldCzesc := Lines[CP].Akt;
+ LineState.OldLine := Lines[CP].Current;
// wybieranie aktualnej parts
for Pet := 0 to Lines[CP].High do
begin
- if Czas.AktBeat >= Lines[CP].Line[Pet].Start then
- Lines[CP].Akt := Pet;
+ if LineState.CurrentBeat >= Lines[CP].Line[Pet].Start then
+ Lines[CP].Current := Pet;
end;
// czysczenie nut gracza, gdy to jest nowa plansza
// (optymizacja raz na halfbeat jest zla)
- if Lines[CP].Akt <> Czas.OldCzesc then
+ if Lines[CP].Current <> LineState.OldLine then
NewSentence(Sender);
end; // for PetGr
// wykonuje operacje raz na beat
- if (Czas.AktBeat >= 0) and (Czas.OldBeat <> Czas.AktBeat) then
+ if (LineState.CurrentBeat >= 0) and (LineState.OldBeat <> LineState.CurrentBeat) then
NewBeat(Sender);
// make some operations on clicks
- if {(Czas.AktBeatC >= 0) and }(Czas.OldBeatC <> Czas.AktBeatC) then
+ if {(LineState.CurrentBeatC >= 0) and }(LineState.OldBeatC <> LineState.CurrentBeatC) then
NewBeatC(Sender);
// make some operations when detecting new voice pitch
- if (Czas.AktBeatD >= 0) and (Czas.OldBeatD <> Czas.AktBeatD) then
+ if (LineState.CurrentBeatD >= 0) and (LineState.OldBeatD <> LineState.CurrentBeatD) then
NewBeatD(Sender);
// wykonuje operacje w polowie beatu
-// if (Czas.AktHalf >= 1) and (Czas.OldHalf <> Czas.AktHalf) then
+// if (LineState.AktHalf >= 1) and (LineState.OldHalf <> LineState.AktHalf) then
// NewHalf;
// plynnie przesuwa text
Done := 1;
- for N := 0 to Lines[0].Line[Lines[0].Akt].HighNote do
+ for N := 0 to Lines[0].Line[Lines[0].Current].HighNote do
begin
- if (Lines[0].Line[Lines[0].Akt].Note[N].Start <= Czas.MidBeat) and
- (Lines[0].Line[Lines[0].Akt].Note[N].Start + Lines[0].Line[Lines[0].Akt].Note[N].Lenght >= Czas.MidBeat) then
+ if (Lines[0].Line[Lines[0].Current].Note[N].Start <= LineState.MidBeat) and
+ (Lines[0].Line[Lines[0].Current].Note[N].Start + Lines[0].Line[Lines[0].Current].Note[N].Lenght >= LineState.MidBeat) then
begin
- Done := (Czas.MidBeat - Lines[0].Line[Lines[0].Akt].Note[N].Start) / (Lines[0].Line[Lines[0].Akt].Note[N].Lenght);
+ Done := (LineState.MidBeat - Lines[0].Line[Lines[0].Current].Note[N].Start) / (Lines[0].Line[Lines[0].Current].Note[N].Lenght);
end;
end;
- N := Lines[0].Line[Lines[0].Akt].HighNote;
+ N := Lines[0].Line[Lines[0].Current].HighNote;
// wylacza ostatnia nute po przejsciu
{// todo: Lyrics
if (Ini.LyricsEffect = 1) and (Done = 1) and
- (Czas.MidBeat > Lines[0].Line[Lines[0].Akt].Note[N].Start + Lines[0].Line[Lines[0].Akt].Note[N].Lenght)
+ (LineState.MidBeat > Lines[0].Line[Lines[0].Current].Note[N].Start + Lines[0].Line[Lines[0].Current].Note[N].Lenght)
then Sender.LyricMain.Selected := -1;
if Done > 1 then Done := 1;
@@ -772,16 +772,16 @@ begin
for G := 0 to High(Player) do
begin
Player[G].IlNut := 0;
- Player[G].HighNut := -1;
+ Player[G].HighNote := -1;
SetLength(Player[G].Note, 0);
end;
// Add Words to Lyrics
with Sender do
begin
- {LyricMain.AddCzesc(Lines[0].Akt);
- if Lines[0].Akt < Lines[0].High then
- LyricSub.AddCzesc(Lines[0].Akt+1)
+ {LyricMain.AddCzesc(Lines[0].Current);
+ if Lines[0].Current < Lines[0].High then
+ LyricSub.AddCzesc(Lines[0].Current+1)
else
LyricSub.Clear;}
while (not Lyrics.LineinQueue) and (Lyrics.LineCounter <= High(Lines[0].Line)) do
@@ -791,7 +791,7 @@ begin
Sender.UpdateLCD;
//On Sentence Change...
- Sender.onSentenceChange(Lines[0].Akt);
+ Sender.onSentenceChange(Lines[0].Current);
end;
procedure NewBeat(Sender: TScreenSing);
@@ -801,8 +801,8 @@ var
begin
// ustawia zaznaczenie tekstu
// SingScreen.LyricMain.Selected := -1;
- for Pet := 0 to Lines[0].Line[Lines[0].Akt].HighNote do
- if (Lines[0].Line[Lines[0].Akt].Note[Pet].Start = Czas.AktBeat) then
+ for Pet := 0 to Lines[0].Line[Lines[0].Current].HighNote do
+ if (Lines[0].Line[Lines[0].Current].Note[Pet].Start = LineState.CurrentBeat) then
begin
// operates on currently beated note
//Todo: Lyrics
@@ -826,11 +826,11 @@ begin
// LPT_2 := 1;
// beat click
- if (Ini.BeatClick = 1) and ((Czas.AktBeatC + Lines[0].Resolution + Lines[0].NotesGAP) mod Lines[0].Resolution = 0) then
+ if (Ini.BeatClick = 1) and ((LineState.CurrentBeatC + Lines[0].Resolution + Lines[0].NotesGAP) mod Lines[0].Resolution = 0) then
AudioPlayback.PlaySound(SoundLib.Click);
// debug system on LPT
- if ((Czas.AktBeatC + Lines[0].Resolution + Lines[0].NotesGAP) mod Lines[0].Resolution = 0) then
+ if ((LineState.CurrentBeatC + Lines[0].Resolution + Lines[0].NotesGAP) mod Lines[0].Resolution = 0) then
begin
//LPT_1 := 0;
// Light.LightOne(0, 150);
@@ -840,15 +840,15 @@ begin
Light.LightOne(0, 200); // beat light
-{ if ((Czas.AktBeatC + Lines[0].Resolution + Lines[0].NotesGAP) mod (Lines[0].Resolution * 2) = 0) then
+{ if ((LineState.CurrentBeatC + Lines[0].Resolution + Lines[0].NotesGAP) mod (Lines[0].Resolution * 2) = 0) then
Light.LightOne(0, 150)
else
Light.LightOne(1, 150)}
end;
- for Pet := 0 to Lines[0].Line[Lines[0].Akt].HighNote do
+ for Pet := 0 to Lines[0].Line[Lines[0].Current].HighNote do
begin
- if (Lines[0].Line[Lines[0].Akt].Note[Pet].Start = Czas.AktBeatC) then
+ if (Lines[0].Line[Lines[0].Current].Note[Pet].Start = LineState.CurrentBeatC) then
begin
// click assist
if Ini.ClickAssist = 1 then
@@ -860,7 +860,7 @@ begin
// drum machine
(*
- TempBeat := Czas.AktBeat;// + 2;
+ TempBeat := LineState.CurrentBeat;// + 2;
if (TempBeat mod 8 = 0) then Music.PlayDrum;
if (TempBeat mod 8 = 4) then Music.PlayClap;
// if (TempBeat mod 4 = 2) then Music.PlayHihat;
@@ -897,7 +897,7 @@ var
Range: integer;
NoteHit:boolean;
begin
-// Log.LogStatus('Beat ' + IntToStr(Czas.AktBeat) + ' HalfBeat ' + IntToStr(Czas.AktHalf), 'NewBeat');
+// Log.LogStatus('Beat ' + IntToStr(LineState.CurrentBeat) + ' HalfBeat ' + IntToStr(LineState.AktHalf), 'NewBeat');
// beep;
// On linux we get an AV @ NEWNOTE, line 600 of Classes/UMain.pas
@@ -912,13 +912,13 @@ begin
AudioInputProcessor.Sound[CP].AnalyzeBuffer;
// adds some noise
- //Czas.Tone := Czas.Tone + Round(Random(3)) - 1;
+ //LineState.Tone := LineState.Tone + Round(Random(3)) - 1;
// count min and max sentence range for checking (detection is delayed to the notes we see on the screen)
- SMin := Lines[0].Akt-1;
+ SMin := Lines[0].Current-1;
if SMin < 0 then
SMin := 0;
- SMax := Lines[0].Akt;
+ SMax := Lines[0].Current;
// check if we can add new note
Mozna := false;
@@ -927,8 +927,8 @@ begin
begin
for Pet := 0 to Lines[0].Line[S].HighNote do
begin
- if ((Lines[0].Line[S].Note[Pet].Start <= Czas.AktBeatD)
- and (Lines[0].Line[S].Note[Pet].Start + Lines[0].Line[S].Note[Pet].Lenght - 1 >= Czas.AktBeatD))
+ if ((Lines[0].Line[S].Note[Pet].Start <= LineState.CurrentBeatD)
+ and (Lines[0].Line[S].Note[Pet].Start + Lines[0].Line[S].Note[Pet].Lenght - 1 >= LineState.CurrentBeatD))
and (not Lines[0].Line[S].Note[Pet].FreeStyle) // but don't allow when it's FreeStyle note
and (Lines[0].Line[S].Note[Pet].Lenght > 0) then // and make sure the note lenghts is at least 1
begin
@@ -950,9 +950,9 @@ begin
// operowanie na ostatniej nucie
for Pet := 0 to Lines[0].Line[S].HighNote do
begin
- if (Lines[0].Line[S].Note[Pet].Start <= Czas.OldBeatD+1) and
+ if (Lines[0].Line[S].Note[Pet].Start <= LineState.OldBeatD+1) and
(Lines[0].Line[S].Note[Pet].Start +
- Lines[0].Line[S].Note[Pet].Lenght > Czas.OldBeatD+1) then
+ Lines[0].Line[S].Note[Pet].Lenght > LineState.OldBeatD+1) then
begin
// to robi, tylko dla pary nut (oryginalnej i gracza)
@@ -1014,8 +1014,8 @@ begin
Nowa := true;
// jezeli ostatnia ma ten sam Tone
if (Player[CP].IlNut > 0 ) and
- (Player[CP].Note[Player[CP].HighNut].Tone = AudioInputProcessor.Sound[CP].Tone) and
- (Player[CP].Note[Player[CP].HighNut].Start + Player[CP].Note[Player[CP].HighNut].Lenght = Czas.AktBeatD) then
+ (Player[CP].Note[Player[CP].HighNote].Tone = AudioInputProcessor.Sound[CP].Tone) and
+ (Player[CP].Note[Player[CP].HighNote].Start + Player[CP].Note[Player[CP].HighNote].Lenght = LineState.CurrentBeatD) then
begin
Nowa := false;
end;
@@ -1023,7 +1023,7 @@ begin
// jezeli jest jakas nowa nuta na sprawdzanym beacie
for Pet := 0 to Lines[0].Line[S].HighNote do
begin
- if (Lines[0].Line[S].Note[Pet].Start = Czas.AktBeatD) then
+ if (Lines[0].Line[S].Note[Pet].Start = LineState.CurrentBeatD) then
Nowa := true;
end;
@@ -1032,32 +1032,32 @@ begin
begin
// nowa nuta
Player[CP].IlNut := Player[CP].IlNut + 1;
- Player[CP].HighNut := Player[CP].HighNut + 1;
+ Player[CP].HighNote := Player[CP].HighNote + 1;
SetLength(Player[CP].Note, Player[CP].IlNut);
- Player[CP].Note[Player[CP].HighNut].Start := Czas.AktBeatD;
- Player[CP].Note[Player[CP].HighNut].Lenght := 1;
- Player[CP].Note[Player[CP].HighNut].Tone := AudioInputProcessor.Sound[CP].Tone; // Ton || TonDokl
- Player[CP].Note[Player[CP].HighNut].Detekt := Czas.MidBeat;
+ Player[CP].Note[Player[CP].HighNote].Start := LineState.CurrentBeatD;
+ Player[CP].Note[Player[CP].HighNote].Lenght := 1;
+ Player[CP].Note[Player[CP].HighNote].Tone := AudioInputProcessor.Sound[CP].Tone; // Ton || TonDokl
+ Player[CP].Note[Player[CP].HighNote].Detekt := LineState.MidBeat;
// Half Note Patch
- Player[CP].Note[Player[CP].HighNut].Hit := NoteHit;
+ Player[CP].Note[Player[CP].HighNote].Hit := NoteHit;
- //Log.LogStatus('Nowa Nuta ' + IntToStr(Gracz.Note[Gracz.HighNut].Start), 'NewBeat');
+ //Log.LogStatus('Nowa Nuta ' + IntToStr(Gracz.Note[Gracz.HighNote].Start), 'NewBeat');
end
else
begin
// przedluzenie nuty
- Player[CP].Note[Player[CP].HighNut].Lenght := Player[CP].Note[Player[CP].HighNut].Lenght + 1;
+ Player[CP].Note[Player[CP].HighNote].Lenght := Player[CP].Note[Player[CP].HighNote].Lenght + 1;
end;
// check for perfect note and then lit the star (on Draw)
for Pet := 0 to Lines[0].Line[S].HighNote do
begin
- if (Lines[0].Line[S].Note[Pet].Start = Player[CP].Note[Player[CP].HighNut].Start) and
- (Lines[0].Line[S].Note[Pet].Lenght = Player[CP].Note[Player[CP].HighNut].Lenght) and
- (Lines[0].Line[S].Note[Pet].Tone = Player[CP].Note[Player[CP].HighNut].Tone) then
+ if (Lines[0].Line[S].Note[Pet].Start = Player[CP].Note[Player[CP].HighNote].Start) and
+ (Lines[0].Line[S].Note[Pet].Lenght = Player[CP].Note[Player[CP].HighNote].Lenght) and
+ (Lines[0].Line[S].Note[Pet].Tone = Player[CP].Note[Player[CP].HighNote].Tone) then
begin
- Player[CP].Note[Player[CP].HighNut].Perfect := true;
+ Player[CP].Note[Player[CP].HighNote].Perfect := true;
end;
end;
end;// else beep; // if S = SMax
@@ -1070,7 +1070,7 @@ begin
if (sDet >= low(Lines[0].Line)) and (sDet <= high(Lines[0].Line)) then
begin
if assigned( Sender ) and
- ((Lines[0].Line[SDet].Note[Lines[0].Line[SDet].HighNote].Start + Lines[0].Line[SDet].Note[Lines[0].Line[SDet].HighNote].Lenght - 1) = Czas.AktBeatD) then
+ ((Lines[0].Line[SDet].Note[Lines[0].Line[SDet].HighNote].Start + Lines[0].Line[SDet].Note[Lines[0].Line[SDet].HighNote].Lenght - 1) = LineState.CurrentBeatD) then
begin
Sender.onSentenceEnd(sDet);
end;
diff --git a/Game/Code/Classes/UMusic.pas b/Game/Code/Classes/UMusic.pas
index 90e78dd7..2ffe13ce 100644
--- a/Game/Code/Classes/UMusic.pas
+++ b/Game/Code/Classes/UMusic.pas
@@ -17,10 +17,10 @@ type
//http://paste.ubuntu-nl.org/51892/
TMelody = record
- Path: string;
- Start: integer; // start of song in ms
- IlNut: integer; // (TODO: Il = tone, Nut(a) = Note)
- DlugoscNut: integer; // (TODO: Dlugosc = length, Nut(a) = Note)
+ Path: string;
+ Start: integer; // start of song in ms
+ IlNut: integer; // (TODO: Il = tone, Nut(a) = Note)
+ NoteLenght: integer;
end;
PLine = ^TLine;
@@ -29,7 +29,7 @@ type
StartNote: integer;
Lyric: string;
LyricWidth: real;
- End_: integer;
+ End_: integer;
BaseNote: integer;
HighNote: integer;
IlNut: integer; // (TODO: Il = tone, Nut(a) = Note)
@@ -37,52 +37,52 @@ type
Note: array of record
Color: integer;
Start: integer;
- Lenght: integer;
- Tone: integer; // full range tone
- TonGamy: integer; // tone unified to one octave (TODO: rename to something meaningful, ToneGamus)
- Text: string; // (TODO: rename to Text)
+ Lenght: integer;
+ Tone: integer; // full range tone
+ ToneGamus: integer; // tone unified to one octave
+ Text: string;
FreeStyle: boolean;
- NoteType: integer; // normal-note: 1, golden-note: 2 (TODO: wartosc=value, rename to Type_ or Kind?)
+ NoteType: integer; // normal-note: 1, golden-note: 2
end;
end;
- ALine = array of TLine; // (TODO: rename to TLineArray)
+ ALine = array of TLine; // (TODO: rename to TLineArray)
// (TCzesci = TSentences) TCzesci changed to TLines because TSentences exist elseware in incompatible form
TLines = record
- Akt: integer; // for drawing of current line (Akt = Current)
+ Current: integer; // for drawing of current line
High: integer;
- Ilosc: integer; // (TODO: Ilosc = Number/Count)
+ Ilosc: integer; // (TODO: Ilosc = Number/Count)
Resolution: integer;
NotesGAP: integer;
- NoteType: integer; // TODO: rename (wartosc=value)
- Line: ALine; // TODO: rename to Sentence or Line - renamed to Line
+ NoteType: integer;
+ Line: ALine;
end;
// (TODO: rename TCzas to something like T(Line/Sentence)Time/TLinePosition/TLineState)
// (Czas = time)
- TCzas = record // all that concerns the current frames
- OldBeat: integer; // previous discovered beat
- AktBeat: integer; // current beat (TODO: rename)
- MidBeat: real; // like AktBeat
+ TLineState = record // all that concerns the current frames
+ OldBeat: integer; // previous discovered beat
+ CurrentBeat: integer;
+ MidBeat: real; // like CurrentBeat
// now we use this for super synchronization!
// only used when analyzing voice
OldBeatD: integer; // previous discovered beat
- AktBeatD: integer; // current beat (TODO: rename)
- MidBeatD: real; // like AktBeatD
+ CurrentBeatD: integer;
+ MidBeatD: real; // like CurrentBeatD
FracBeatD: real; // fractional part of MidBeatD
// we use this for audible clicks
OldBeatC: integer; // previous discovered beat
- AktBeatC: integer; // current beat (TODO: rename)
- MidBeatC: real; // like AktBeatC
+ CurrentBeatC: integer;
+ MidBeatC: real; // like CurrentBeatC
FracBeatC: real; // fractional part of MidBeatC
- OldCzesc: integer; // previous displayed sentence (Czesc = part (here: sentence/line))
+ OldLine: integer; // previous displayed sentence
- Teraz: real; // (TODO: Teraz = current time)
- Razem: real; // (TODO: Razem = total time)
+ CurrentTime: real;
+ TotalTime: real;
end;
@@ -288,13 +288,13 @@ type
var // TODO : JB --- THESE SHOULD NOT BE GLOBAL
// music
- Melody: TMelody; // TODO: rename
+ Melody: TMelody;
// czesci z nutami;
- Lines: array of TLines; // TODO: rename to Sentences/Lines
+ Lines: array of TLines;
- // czas
- Czas: TCzas; // TODO: rename
+ // LineState
+ LineState: TLineState;
SoundLib: TSoundLibrary;
diff --git a/Game/Code/Classes/USong.pas b/Game/Code/Classes/USong.pas
index 5db250c5..a97ea1c9 100644
--- a/Game/Code/Classes/USong.pas
+++ b/Game/Code/Classes/USong.pas
@@ -227,7 +227,7 @@ begin
SetLength(Lines[Pet].Line, 1);
Lines[Pet].High := 0;
Lines[Pet].Ilosc := 1;
- Lines[Pet].Akt := 0;
+ Lines[Pet].Current := 0;
Lines[Pet].Resolution := self.Resolution;
Lines[Pet].NotesGAP := self.NotesGAP;
Lines[Pet].Line[0].IlNut := 0;
@@ -593,7 +593,7 @@ begin
end;
Note[HighNote].Lenght := DurationP;
- Melody.DlugoscNut := Melody.DlugoscNut + Note[HighNote].Lenght;
+ Melody.NoteLenght := Melody.NoteLenght + Note[HighNote].Lenght;
// back to the normal system with normal, golden and now freestyle notes
case TypeP of
@@ -606,7 +606,7 @@ begin
Note[HighNote].Tone := NoteP;
if Note[HighNote].Tone < Base[NrCzesci] then Base[NrCzesci] := Note[HighNote].Tone;
- Note[HighNote].TonGamy := Note[HighNote].TonGamy mod 12;
+ Note[HighNote].ToneGamus := Note[HighNote].ToneGamus mod 12;
Note[HighNote].Text := Copy(LyricS, 2, 100);
Lyric := Lyric + Note[HighNote].Text;
diff --git a/Game/Code/Screens/UScreenEditSub.pas b/Game/Code/Screens/UScreenEditSub.pas
index 29ff50a5..94bb6a59 100644
--- a/Game/Code/Screens/UScreenEditSub.pas
+++ b/Game/Code/Screens/UScreenEditSub.pas
@@ -134,9 +134,9 @@ begin
SDLK_BACKQUOTE:
begin
// Increase Note Length (same as Alt + Right)
- Inc(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Lenght);
- if AktNuta = Lines[0].Line[Lines[0].Akt].HighNote then
- Inc(Lines[0].Line[Lines[0].Akt].End_);
+ Inc(Lines[0].Line[Lines[0].Current].Note[AktNuta].Lenght);
+ if AktNuta = Lines[0].Line[Lines[0].Current].HighNote then
+ Inc(Lines[0].Line[Lines[0].Current].End_);
end;
SDLK_EQUALS:
@@ -207,7 +207,7 @@ begin
if SDL_ModState = KMOD_LSHIFT then begin
// Join next sentence with current
- if Lines[0].Akt < Lines[0].High then
+ if Lines[0].Current < Lines[0].High then
JoinSentence;
end;
@@ -263,42 +263,42 @@ begin
begin
// Paste text
if SDL_ModState = KMOD_LCTRL then begin
- if Lines[0].Line[Lines[0].Akt].IlNut >= Lines[0].Line[CopySrc].IlNut then
+ if Lines[0].Line[Lines[0].Current].IlNut >= Lines[0].Line[CopySrc].IlNut then
PasteText
else
beep;
end;
if SDL_ModState = KMOD_LCTRL + KMOD_LSHIFT then begin
- CopySentence(CopySrc, Lines[0].Akt);
+ CopySentence(CopySrc, Lines[0].Current);
end;
end;
SDLK_4:
begin
if SDL_ModState = KMOD_LCTRL + KMOD_LSHIFT then begin
- CopySentence(CopySrc, Lines[0].Akt);
- CopySentence(CopySrc+1, Lines[0].Akt+1);
- CopySentence(CopySrc+2, Lines[0].Akt+2);
- CopySentence(CopySrc+3, Lines[0].Akt+3);
+ CopySentence(CopySrc, Lines[0].Current);
+ CopySentence(CopySrc+1, Lines[0].Current+1);
+ CopySentence(CopySrc+2, Lines[0].Current+2);
+ CopySentence(CopySrc+3, Lines[0].Current+3);
end;
if SDL_ModState = KMOD_LCTRL + KMOD_LSHIFT + KMOD_LALT then begin
- CopySentences(CopySrc, Lines[0].Akt, 4);
+ CopySentences(CopySrc, Lines[0].Current, 4);
end;
end;
SDLK_5:
begin
if SDL_ModState = KMOD_LCTRL + KMOD_LSHIFT then begin
- CopySentence(CopySrc, Lines[0].Akt);
- CopySentence(CopySrc+1, Lines[0].Akt+1);
- CopySentence(CopySrc+2, Lines[0].Akt+2);
- CopySentence(CopySrc+3, Lines[0].Akt+3);
- CopySentence(CopySrc+4, Lines[0].Akt+4);
+ CopySentence(CopySrc, Lines[0].Current);
+ CopySentence(CopySrc+1, Lines[0].Current+1);
+ CopySentence(CopySrc+2, Lines[0].Current+2);
+ CopySentence(CopySrc+3, Lines[0].Current+3);
+ CopySentence(CopySrc+4, Lines[0].Current+4);
end;
if SDL_ModState = KMOD_LCTRL + KMOD_LSHIFT + KMOD_LALT then begin
- CopySentences(CopySrc, Lines[0].Akt, 5);
+ CopySentences(CopySrc, Lines[0].Current, 5);
end;
end;
@@ -320,11 +320,11 @@ begin
// Play Sentence
Click := true;
AudioPlayback.Stop;
- R := GetTimeFromBeat(Lines[0].Line[Lines[0].Akt].StartNote);
+ R := GetTimeFromBeat(Lines[0].Line[Lines[0].Current].StartNote);
if R <= AudioPlayback.Length then
begin
AudioPlayback.Position := R;
- PlayStopTime := GetTimeFromBeat(Lines[0].Line[Lines[0].Akt].End_);
+ PlayStopTime := GetTimeFromBeat(Lines[0].Line[Lines[0].Current].End_);
PlaySentence := true;
AudioPlayback.Play;
LastClick := -100;
@@ -335,23 +335,23 @@ begin
PlaySentenceMidi := true;
MidiTime := USTime.GetTime;
- MidiStart := GetTimeFromBeat(Lines[0].Line[Lines[0].Akt].StartNote);
- MidiStop := GetTimeFromBeat(Lines[0].Line[Lines[0].Akt].End_);
+ MidiStart := GetTimeFromBeat(Lines[0].Line[Lines[0].Current].StartNote);
+ MidiStop := GetTimeFromBeat(Lines[0].Line[Lines[0].Current].End_);
LastClick := -100;
end;
if SDL_ModState = KMOD_LSHIFT or KMOD_LCTRL then begin
PlaySentenceMidi := true;
MidiTime := USTime.GetTime;
- MidiStart := GetTimeFromBeat(Lines[0].Line[Lines[0].Akt].StartNote);
- MidiStop := GetTimeFromBeat(Lines[0].Line[Lines[0].Akt].End_);
+ MidiStart := GetTimeFromBeat(Lines[0].Line[Lines[0].Current].StartNote);
+ MidiStop := GetTimeFromBeat(Lines[0].Line[Lines[0].Current].End_);
LastClick := -100;
PlaySentence := true;
Click := true;
AudioPlayback.Stop;
- AudioPlayback.Position := GetTimeFromBeat(Lines[0].Line[Lines[0].Akt].StartNote)+0{-0.10};
- PlayStopTime := GetTimeFromBeat(Lines[0].Line[Lines[0].Akt].End_)+0;
+ AudioPlayback.Position := GetTimeFromBeat(Lines[0].Line[Lines[0].Current].StartNote)+0{-0.10};
+ PlayStopTime := GetTimeFromBeat(Lines[0].Line[Lines[0].Current].End_)+0;
AudioPlayback.Play;
LastClick := -100;
end;
@@ -364,10 +364,10 @@ begin
PlaySentence := true;
Click := false;
AudioPlayback.Stop;
- AudioPlayback.Position := GetTimeFromBeat(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Start);
+ AudioPlayback.Position := GetTimeFromBeat(Lines[0].Line[Lines[0].Current].Note[AktNuta].Start);
PlayStopTime := (GetTimeFromBeat(
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Start +
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Lenght));
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Start +
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Lenght));
AudioPlayback.Play;
LastClick := -100;
end;
@@ -398,41 +398,41 @@ begin
begin
// right
if SDL_ModState = 0 then begin
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 0;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 0;
Inc(AktNuta);
- if AktNuta = Lines[0].Line[Lines[0].Akt].IlNut then AktNuta := 0;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 1;
+ if AktNuta = Lines[0].Line[Lines[0].Current].IlNut then AktNuta := 0;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 1;
Lyric.Selected := AktNuta;
end;
// ctrl + right
if SDL_ModState = KMOD_LCTRL then begin
- if Lines[0].Line[Lines[0].Akt].Note[AktNuta].Lenght > 1 then begin
- Dec(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Lenght);
- Inc(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Start);
+ if Lines[0].Line[Lines[0].Current].Note[AktNuta].Lenght > 1 then begin
+ Dec(Lines[0].Line[Lines[0].Current].Note[AktNuta].Lenght);
+ Inc(Lines[0].Line[Lines[0].Current].Note[AktNuta].Start);
if AktNuta = 0 then begin
- Inc(Lines[0].Line[Lines[0].Akt].Start);
- Inc(Lines[0].Line[Lines[0].Akt].StartNote);
+ Inc(Lines[0].Line[Lines[0].Current].Start);
+ Inc(Lines[0].Line[Lines[0].Current].StartNote);
end;
end;
end;
// shift + right
if SDL_ModState = KMOD_LSHIFT then begin
- Inc(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Start);
+ Inc(Lines[0].Line[Lines[0].Current].Note[AktNuta].Start);
if AktNuta = 0 then begin
- Inc(Lines[0].Line[Lines[0].Akt].Start);
- Inc(Lines[0].Line[Lines[0].Akt].StartNote);
+ Inc(Lines[0].Line[Lines[0].Current].Start);
+ Inc(Lines[0].Line[Lines[0].Current].StartNote);
end;
- if AktNuta = Lines[0].Line[Lines[0].Akt].HighNote then
- Inc(Lines[0].Line[Lines[0].Akt].End_);
+ if AktNuta = Lines[0].Line[Lines[0].Current].HighNote then
+ Inc(Lines[0].Line[Lines[0].Current].End_);
end;
// alt + right
if SDL_ModState = KMOD_LALT then begin
- Inc(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Lenght);
- if AktNuta = Lines[0].Line[Lines[0].Akt].HighNote then
- Inc(Lines[0].Line[Lines[0].Akt].End_);
+ Inc(Lines[0].Line[Lines[0].Current].Note[AktNuta].Lenght);
+ if AktNuta = Lines[0].Line[Lines[0].Current].HighNote then
+ Inc(Lines[0].Line[Lines[0].Current].End_);
end;
// alt + ctrl + shift + right = move all from cursor to right
@@ -446,44 +446,44 @@ begin
begin
// left
if SDL_ModState = 0 then begin
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 0;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 0;
Dec(AktNuta);
- if AktNuta = -1 then AktNuta := Lines[0].Line[Lines[0].Akt].HighNote;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 1;
+ if AktNuta = -1 then AktNuta := Lines[0].Line[Lines[0].Current].HighNote;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 1;
Lyric.Selected := AktNuta;
end;
// ctrl + left
if SDL_ModState = KMOD_LCTRL then begin
- Dec(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Start);
- Inc(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Lenght);
+ Dec(Lines[0].Line[Lines[0].Current].Note[AktNuta].Start);
+ Inc(Lines[0].Line[Lines[0].Current].Note[AktNuta].Lenght);
if AktNuta = 0 then begin
- Dec(Lines[0].Line[Lines[0].Akt].Start);
- Dec(Lines[0].Line[Lines[0].Akt].StartNote);
+ Dec(Lines[0].Line[Lines[0].Current].Start);
+ Dec(Lines[0].Line[Lines[0].Current].StartNote);
end;
end;
// shift + left
if SDL_ModState = KMOD_LSHIFT then begin
- Dec(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Start);
+ Dec(Lines[0].Line[Lines[0].Current].Note[AktNuta].Start);
// resizing sentences
if AktNuta = 0 then begin
- Dec(Lines[0].Line[Lines[0].Akt].Start);
- Dec(Lines[0].Line[Lines[0].Akt].StartNote);
+ Dec(Lines[0].Line[Lines[0].Current].Start);
+ Dec(Lines[0].Line[Lines[0].Current].StartNote);
end;
- if AktNuta = Lines[0].Line[Lines[0].Akt].HighNote then
- Dec(Lines[0].Line[Lines[0].Akt].End_);
+ if AktNuta = Lines[0].Line[Lines[0].Current].HighNote then
+ Dec(Lines[0].Line[Lines[0].Current].End_);
end;
// alt + left
if SDL_ModState = KMOD_LALT then begin
- if Lines[0].Line[Lines[0].Akt].Note[AktNuta].Lenght > 1 then begin
- Dec(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Lenght);
- if AktNuta = Lines[0].Line[Lines[0].Akt].HighNote then
- Dec(Lines[0].Line[Lines[0].Akt].End_);
+ if Lines[0].Line[Lines[0].Current].Note[AktNuta].Lenght > 1 then begin
+ Dec(Lines[0].Line[Lines[0].Current].Note[AktNuta].Lenght);
+ if AktNuta = Lines[0].Line[Lines[0].Current].HighNote then
+ Dec(Lines[0].Line[Lines[0].Current].End_);
end;
end;
@@ -499,16 +499,16 @@ begin
{$IFDEF UseMIDIPort}
// skip to next sentence
if SDL_ModState = 0 then begin
- MidiOut.PutShort($81, Lines[0].Line[Lines[0].Akt].Note[MidiLastNote].Tone + 60, 127);
+ MidiOut.PutShort($81, Lines[0].Line[Lines[0].Current].Note[MidiLastNote].Tone + 60, 127);
PlaySentenceMidi := false;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 0;
- Inc(Lines[0].Akt);
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 0;
+ Inc(Lines[0].Current);
AktNuta := 0;
- if Lines[0].Akt > Lines[0].High then Lines[0].Akt := 0;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 1;
+ if Lines[0].Current > Lines[0].High then Lines[0].Current := 0;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 1;
- Lyric.AddCzesc(Lines[0].Akt);
+ Lyric.AddCzesc(Lines[0].Current);
Lyric.Selected := 0;
AudioPlayback.Stop;
PlaySentence := false;
@@ -527,16 +527,16 @@ begin
{$IFDEF UseMIDIPort}
// skip to previous sentence
if SDL_ModState = 0 then begin
- MidiOut.PutShort($81, Lines[0].Line[Lines[0].Akt].Note[MidiLastNote].Tone + 60, 127);
+ MidiOut.PutShort($81, Lines[0].Line[Lines[0].Current].Note[MidiLastNote].Tone + 60, 127);
PlaySentenceMidi := false;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 0;
- Dec(Lines[0].Akt);
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 0;
+ Dec(Lines[0].Current);
AktNuta := 0;
- if Lines[0].Akt = -1 then Lines[0].Akt := Lines[0].High;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 1;
+ if Lines[0].Current = -1 then Lines[0].Current := Lines[0].High;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 1;
- Lyric.AddCzesc(Lines[0].Akt);
+ Lyric.AddCzesc(Lines[0].Current);
Lyric.Selected := 0;
AudioPlayback.Stop;
PlaySentence := false;
@@ -552,27 +552,27 @@ begin
// Golden Note Patch
SDLK_G:
begin
- case Lines[0].Line[Lines[0].Akt].Note[AktNuta].NoteType of
- 0: Lines[0].Line[Lines[0].Akt].Note[AktNuta].NoteType := 2;
- 1: Lines[0].Line[Lines[0].Akt].Note[AktNuta].NoteType := 2;
- 2: Lines[0].Line[Lines[0].Akt].Note[AktNuta].NoteType := 1;
+ case Lines[0].Line[Lines[0].Current].Note[AktNuta].NoteType of
+ 0: Lines[0].Line[Lines[0].Current].Note[AktNuta].NoteType := 2;
+ 1: Lines[0].Line[Lines[0].Current].Note[AktNuta].NoteType := 2;
+ 2: Lines[0].Line[Lines[0].Current].Note[AktNuta].NoteType := 1;
end; // case
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Freestyle := False;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Freestyle := False;
end;
// Freestyle Note Patch
SDLK_F:
begin
- case Lines[0].Line[Lines[0].Akt].Note[AktNuta].NoteType of
+ case Lines[0].Line[Lines[0].Current].Note[AktNuta].NoteType of
0:
begin;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].NoteType := 1;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Freestyle := False;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].NoteType := 1;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Freestyle := False;
end;
1,2:
begin;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].NoteType := 0;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Freestyle := True;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].NoteType := 0;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Freestyle := True;
end;
end; // case
@@ -609,22 +609,22 @@ begin
end;
SDLK_0..SDLK_9, SDLK_A..SDLK_Z, SDLK_SPACE, SDLK_MINUS, SDLK_EXCLAIM, SDLK_COMMA, SDLK_SLASH, SDLK_ASTERISK, SDLK_QUESTION, SDLK_QUOTE, SDLK_QUOTEDBL:
begin
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Text :=
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Text + chr(ScanCode);
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Text :=
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Text + chr(ScanCode);
end;
SDLK_BACKSPACE:
begin
- Delete(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Text,
- Length(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Text), 1);
+ Delete(Lines[0].Line[Lines[0].Current].Note[AktNuta].Text,
+ Length(Lines[0].Line[Lines[0].Current].Note[AktNuta].Text), 1);
end;
SDLK_RIGHT:
begin
// right
if SDL_ModState = 0 then begin
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 0;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 0;
Inc(AktNuta);
- if AktNuta = Lines[0].Line[Lines[0].Akt].IlNut then AktNuta := 0;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 1;
+ if AktNuta = Lines[0].Line[Lines[0].Current].IlNut then AktNuta := 0;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 1;
Lyric.Selected := AktNuta;
end;
end;
@@ -632,10 +632,10 @@ begin
begin
// left
if SDL_ModState = 0 then begin
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 0;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 0;
Dec(AktNuta);
- if AktNuta = -1 then AktNuta := Lines[0].Line[Lines[0].Akt].HighNote;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 1;
+ if AktNuta = -1 then AktNuta := Lines[0].Line[Lines[0].Current].HighNote;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 1;
Lyric.Selected := AktNuta;
end;
end;
@@ -646,8 +646,8 @@ end;
procedure TScreenEditSub.NewBeat;
begin
// click
-{ for Pet := 0 to Lines[0].Line[Lines[0].Akt].HighNut do
- if (Lines[0].Line[Lines[0].Akt].Note[Pet].Start = Czas.AktBeat) then begin
+{ for Pet := 0 to Lines[0].Line[Lines[0].Current].HighNut do
+ if (Lines[0].Line[Lines[0].Current].Note[Pet].Start = Czas.AktBeat) then begin
// old}
// Music.PlayClick;
end;
@@ -794,7 +794,7 @@ begin
Inc(Lines[0].High);
// move needed sentences to one forward. newly has the copy of divided sentence
- CStart := Lines[0].Akt;
+ CStart := Lines[0].Current;
for C := CLen-1 downto CStart do
Lines[0].Line[C+1] := Lines[0].Line[C];
@@ -838,10 +838,10 @@ begin
if Lines[0].Line[CNew].Note[N].Tone < Lines[0].Line[CNew].BaseNote then
Lines[0].Line[CNew].BaseNote := Lines[0].Line[CNew].Note[N].Tone;
- Lines[0].Akt := Lines[0].Akt + 1;
+ Lines[0].Current := Lines[0].Current + 1;
AktNuta := 0;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 1;
- Lyric.AddCzesc(Lines[0].Akt);
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 1;
+ Lyric.AddCzesc(Lines[0].Current);
end;
@@ -852,7 +852,7 @@ var
NStart: integer;
NDst: integer;
begin
- C := Lines[0].Akt;
+ C := Lines[0].Current;
// set new sentence
NStart := Lines[0].Line[C].IlNut;
@@ -872,7 +872,7 @@ begin
Lines[0].Line[C].Note[NDst].Lenght;
// move needed sentences to one backward.
- for C := Lines[0].Akt + 1 to Lines[0].High - 1 do
+ for C := Lines[0].Current + 1 to Lines[0].High - 1 do
Lines[0].Line[C] := Lines[0].Line[C+1];
// increase sentence length by 1
@@ -887,7 +887,7 @@ var
N: integer;
NLen: integer;
begin
- C := Lines[0].Akt;
+ C := Lines[0].Current;
NLen := Lines[0].Line[C].IlNut + 1;
SetLength(Lines[0].Line[C].Note, NLen);
@@ -913,7 +913,7 @@ var
N: integer;
NLen: integer;
begin
- C := Lines[0].Akt;
+ C := Lines[0].Current;
//Do Not delete Last Note
if (Lines[0].High > 0) OR (Lines[0].Line[C].HighNote > 0) then
@@ -951,18 +951,18 @@ begin
AktNuta := 0;
if (C > 0) then
- Lines[0].Akt := C - 1
+ Lines[0].Current := C - 1
else
- Lines[0].Akt := 0;
+ Lines[0].Current := 0;
- Lines[0].Line[Lines[0].Akt].Note[AktNuta].Color := 1;
+ Lines[0].Line[Lines[0].Current].Note[AktNuta].Color := 1;
end;
end;
end;
procedure TScreenEditSub.TransposeNote(Transpose: integer);
begin
- Inc(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Tone, Transpose);
+ Inc(Lines[0].Line[Lines[0].Current].Note[AktNuta].Tone, Transpose);
end;
procedure TScreenEditSub.ChangeWholeTone(Tone: integer);
@@ -983,9 +983,9 @@ var
N: integer;
NStart: integer;
begin
- for C := Lines[0].Akt to Lines[0].High do begin
+ for C := Lines[0].Current to Lines[0].High do begin
NStart := 0;
- if C = Lines[0].Akt then NStart := AktNuta;
+ if C = Lines[0].Current then NStart := AktNuta;
for N := NStart to Lines[0].Line[C].HighNote do begin
Inc(Lines[0].Line[C].Note[N].Start, Move); // move note start
@@ -1007,7 +1007,7 @@ var
N: integer;
NHigh: integer;
begin
-{ C := Lines[0].Akt;
+{ C := Lines[0].Current;
for N := Lines[0].Line[C].HighNut downto 1 do begin
Lines[0].Line[C].Note[N].Text := Lines[0].Line[C].Note[N-1].Text;
@@ -1015,7 +1015,7 @@ begin
Lines[0].Line[C].Note[0].Text := '- ';}
- C := Lines[0].Akt;
+ C := Lines[0].Current;
NHigh := Lines[0].Line[C].HighNote;
// last word
@@ -1030,7 +1030,7 @@ end;
procedure TScreenEditSub.MarkSrc;
begin
- CopySrc := Lines[0].Akt;
+ CopySrc := Lines[0].Current;
end;
procedure TScreenEditSub.PasteText;
@@ -1038,7 +1038,7 @@ var
C: integer;
N: integer;
begin
- C := Lines[0].Akt;
+ C := Lines[0].Current;
for N := 0 to Lines[0].Line[CopySrc].HighNote do
Lines[0].Line[C].Note[N].Text := Lines[0].Line[CopySrc].Note[N].Text;
@@ -1190,7 +1190,7 @@ begin
Text[TextArtist].Text := CurrentSong.Artist;
Text[TextMp3].Text := CurrentSong.Mp3;
- Lines[0].Akt := 0;
+ Lines[0].Current := 0;
AktNuta := 0;
Lines[0].Line[0].Note[0].Color := 1;
@@ -1239,7 +1239,7 @@ begin
{$IFDEF UseMIDIPort}
// stop the music
if (MidiPos > MidiStop) then begin
- MidiOut.PutShort($81, Lines[0].Line[Lines[0].Akt].Note[MidiLastNote].Tone + 60, 127);
+ MidiOut.PutShort($81, Lines[0].Line[Lines[0].Current].Note[MidiLastNote].Tone + 60, 127);
PlaySentenceMidi := false;
end;
{$ENDIF}
@@ -1249,15 +1249,15 @@ begin
Text[TextDebug].Text := IntToStr(AktBeat);
if AktBeat <> LastClick then begin
- for Pet := 0 to Lines[0].Line[Lines[0].Akt].HighNote do
- if (Lines[0].Line[Lines[0].Akt].Note[Pet].Start = AktBeat) then
+ for Pet := 0 to Lines[0].Line[Lines[0].Current].HighNote do
+ if (Lines[0].Line[Lines[0].Current].Note[Pet].Start = AktBeat) then
begin
{$IFDEF UseMIDIPort}
LastClick := AktBeat;
if Pet > 0 then
- MidiOut.PutShort($81, Lines[0].Line[Lines[0].Akt].Note[Pet-1].Tone + 60, 127);
- MidiOut.PutShort($91, Lines[0].Line[Lines[0].Akt].Note[Pet].Tone + 60, 127);
+ MidiOut.PutShort($81, Lines[0].Line[Lines[0].Current].Note[Pet-1].Tone + 60, 127);
+ MidiOut.PutShort($91, Lines[0].Line[Lines[0].Current].Note[Pet].Tone + 60, 127);
MidiLastNote := Pet;
{$ENDIF}
@@ -1280,8 +1280,8 @@ begin
AktBeat := Floor(GetMidBeat(AudioPlayback.Position - CurrentSong.GAP / 1000));
Text[TextDebug].Text := IntToStr(AktBeat);
if AktBeat <> LastClick then begin
- for Pet := 0 to Lines[0].Line[Lines[0].Akt].HighNote do
- if (Lines[0].Line[Lines[0].Akt].Note[Pet].Start = AktBeat) then
+ for Pet := 0 to Lines[0].Line[Lines[0].Current].HighNote do
+ if (Lines[0].Line[Lines[0].Current].Note[Pet].Start = AktBeat) then
begin
AudioPlayback.PlaySound( SoundLib.Click );
LastClick := AktBeat;
@@ -1291,8 +1291,8 @@ begin
end; // if PlaySentence
- Text[TextSentence].Text := IntToStr(Lines[0].Akt + 1) + ' / ' + IntToStr(Lines[0].Ilosc);
- Text[TextNote].Text := IntToStr(AktNuta + 1) + ' / ' + IntToStr(Lines[0].Line[Lines[0].Akt].IlNut);
+ Text[TextSentence].Text := IntToStr(Lines[0].Current + 1) + ' / ' + IntToStr(Lines[0].Ilosc);
+ Text[TextNote].Text := IntToStr(AktNuta + 1) + ' / ' + IntToStr(Lines[0].Line[Lines[0].Current].IlNut);
// Song info
Text[TextBPM].Text := FloatToStr(CurrentSong.BPM[0].BPM / 4);
@@ -1302,10 +1302,10 @@ begin
if not Error then
begin
// Note info
- Text[TextNStart].Text := IntToStr(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Start);
- Text[TextNDlugosc].Text := IntToStr(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Lenght);
- Text[TextNTon].Text := IntToStr(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Tone) + ' ( ' + GetNoteName(Lines[0].Line[Lines[0].Akt].Note[AktNuta].Tone) + ' )';
- Text[TextNText].Text := Lines[0].Line[Lines[0].Akt].Note[AktNuta].Text;
+ Text[TextNStart].Text := IntToStr(Lines[0].Line[Lines[0].Current].Note[AktNuta].Start);
+ Text[TextNDlugosc].Text := IntToStr(Lines[0].Line[Lines[0].Current].Note[AktNuta].Lenght);
+ Text[TextNTon].Text := IntToStr(Lines[0].Line[Lines[0].Current].Note[AktNuta].Tone) + ' ( ' + GetNoteName(Lines[0].Line[Lines[0].Current].Note[AktNuta].Tone) + ' )';
+ Text[TextNText].Text := Lines[0].Line[Lines[0].Current].Note[AktNuta].Text;
end;
// Text Edit Mode
diff --git a/Game/Code/Screens/UScreenSing.pas b/Game/Code/Screens/UScreenSing.pas
index 2f8df0a6..d50d4360 100644
--- a/Game/Code/Screens/UScreenSing.pas
+++ b/Game/Code/Screens/UScreenSing.pas
@@ -205,7 +205,7 @@ begin
if not paused then //Pause einschalten
begin
// pause Time
- PauseTime := Czas.Teraz;
+ PauseTime := LineState.CurrentTime;
Paused := true;
// pause Music
@@ -218,7 +218,7 @@ begin
end
else //Pause ausschalten
begin
- Czas.Teraz := PauseTime; //Position of Notes
+ LineState.CurrentTime := PauseTime; //Position of Notes
// Position of Music
AudioPlayback.Position := PauseTime;
@@ -506,10 +506,10 @@ begin
// prepare timer (I)
// CountSkipTimeSet;
- Czas.Teraz := CurrentSong.Start;
- Czas.Razem := AudioPlayback.Length;
- if (CurrentSong.Finish > 0) then Czas.Razem := CurrentSong.Finish / 1000;
- Czas.OldBeat := -1;
+ LineState.CurrentTime := CurrentSong.Start;
+ LineState.TotalTime := AudioPlayback.Length;
+ if (CurrentSong.Finish > 0) then LineState.TotalTime := CurrentSong.Finish / 1000;
+ LineState.OldBeat := -1;
for P := 0 to High(Player) do
ClearScores(P);
@@ -897,7 +897,7 @@ begin
begin
try
writeln( 'VideoPlayback.FFmpegGetFrame' );
- fCurrentVideoPlaybackEngine.GetFrame(Czas.Teraz);
+ fCurrentVideoPlaybackEngine.GetFrame(LineState.CurrentTime);
writeln( 'VideoPlayback.FFmpegDrawGL' );
fCurrentVideoPlaybackEngine.DrawGL(ScreenAct);
@@ -1070,8 +1070,8 @@ begin
Text[T].X := Text[T].X + 10*ScreenX;
// update static menu with time ...
- Min := Round(Czas.Teraz) div 60;
- Sec := Round(Czas.Teraz) mod 60;
+ Min := Round(LineState.CurrentTime) div 60;
+ Sec := Round(LineState.CurrentTime) mod 60;
Text[TextTimeText].Text := '';
if Min < 10 then Text[TextTimeText].Text := '0';
Text[TextTimeText].Text := Text[TextTimeText].Text + IntToStr(Min) + ':';
@@ -1176,7 +1176,7 @@ begin
if assigned( fCurrentVideoPlaybackEngine ) then
begin
- fCurrentVideoPlaybackEngine.GetFrame(Czas.Teraz);
+ fCurrentVideoPlaybackEngine.GetFrame(LineState.CurrentTime);
fCurrentVideoPlaybackEngine.DrawGL(ScreenAct);
end;
@@ -1208,9 +1208,9 @@ begin
DrawFG;
// check for music finish
-// Log.LogError('Check for music finish: ' + BoolToStr(Music.Finished) + ' ' + FloatToStr(Czas.Teraz*1000) + ' ' + IntToStr(CurrentSong.Finish));
+// Log.LogError('Check for music finish: ' + BoolToStr(Music.Finished) + ' ' + FloatToStr(LineState.CurrentTime*1000) + ' ' + IntToStr(CurrentSong.Finish));
if ShowFinish then begin
- if (not AudioPlayback.Finished) and ((CurrentSong.Finish = 0) or (Czas.Teraz*1000 <= CurrentSong.Finish)) then begin
+ if (not AudioPlayback.Finished) and ((CurrentSong.Finish = 0) or (LineState.CurrentTime*1000 <= CurrentSong.Finish)) then begin
//Pause Mod:
if not Paused then
Sing(Self); // analyze song
diff --git a/Game/Code/Screens/UScreenSingModi.pas b/Game/Code/Screens/UScreenSingModi.pas
index 4218dd86..4379dae6 100644
--- a/Game/Code/Screens/UScreenSingModi.pas
+++ b/Game/Code/Screens/UScreenSingModi.pas
@@ -131,7 +131,7 @@ function ToSentences(Const Lines: TLines): TSentences;
var
I, J: Integer;
begin
- Result.Akt := Lines.Akt;
+ Result.Akt := Lines.Current;
Result.High := Lines.High;
Result.Ilosc := Lines.Ilosc;
Result.Resolution := Lines.Resolution;
@@ -158,7 +158,7 @@ begin
Result.Sentence[I].Note[J].Start := Lines.Line[I].Note[J].Start;
Result.Sentence[I].Note[J].Length := Lines.Line[I].Note[J].Lenght;
Result.Sentence[I].Note[J].Ton := Lines.Line[I].Note[J].Tone;
- Result.Sentence[I].Note[J].TonGamy := Lines.Line[I].Note[J].TonGamy;
+ Result.Sentence[I].Note[J].TonGamy := Lines.Line[I].Note[J].ToneGamus;
//Result.Sentence[I].Note[J].Text := Lines.Line[I].Note[J].Tekst;
Result.Sentence[I].Note[J].FreeStyle := Lines.Line[I].Note[J].FreeStyle;
Result.Sentence[I].Note[J].Typ := Lines.Line[I].Note[J].NoteType;
@@ -512,8 +512,8 @@ end; //ShowScore
if DLLMan.Selected.LoadSong then
begin
// update static menu with time ...
- Min := Round(Czas.Teraz) div 60;
- Sec := Round(Czas.Teraz) mod 60;
+ Min := Round(LineState.CurrentTime) div 60;
+ Sec := Round(LineState.CurrentTime) mod 60;
Text[TextTimeText].Text := '';
if Min < 10 then Text[TextTimeText].Text := '0';
Text[TextTimeText].Text := Text[TextTimeText].Text + IntToStr(Min) + ':';
@@ -541,7 +541,7 @@ end;
if ShowFinish then begin
if DllMan.Selected.LoadSong then
begin
- if (not AudioPlayback.Finished) and ((CurrentSong.Finish = 0) or (Czas.Teraz*1000 <= CurrentSong.Finish)) then begin
+ if (not AudioPlayback.Finished) and ((CurrentSong.Finish = 0) or (LineState.CurrentTime*1000 <= CurrentSong.Finish)) then begin
//Pause Mod:
if not Paused then
Sing(Self); // analyze song
@@ -574,7 +574,7 @@ end;
if ((ShowFinish) AND (NOT Paused)) then
begin
- if not DLLMan.PluginDraw(Playerinfo, Lines[0].Akt) then
+ if not DLLMan.PluginDraw(Playerinfo, Lines[0].Current) then
begin
if not FadeOut then begin
Finish;