aboutsummaryrefslogtreecommitdiffstats
path: root/Game/Code/Classes/UMain.pas
diff options
context:
space:
mode:
authorbrunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c>2010-07-04 17:06:14 +0000
committerbrunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c>2010-07-04 17:06:14 +0000
commitac12e8ff541b2d30f0b5dd070f83fc43d9b2116d (patch)
tree7964d52f95b38c3efd915286cba797817518f366 /Game/Code/Classes/UMain.pas
parent075cb824a31c5e6e1cc6ee6f0087ac5598ba003a (diff)
downloadusdx-ac12e8ff541b2d30f0b5dd070f83fc43d9b2116d.tar.gz
usdx-ac12e8ff541b2d30f0b5dd070f83fc43d9b2116d.tar.xz
usdx-ac12e8ff541b2d30f0b5dd070f83fc43d9b2116d.zip
- possible/remainings score bar in singscreen: red at start, decreasing with lost score, filling green from left with score
- added session log. log all played songs with player names and score - fixed calculation of possible scores - change tabs on/off: now with CTRL+T (songscreen) git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/1.0.1 Challenge MOD@2573 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Game/Code/Classes/UMain.pas')
-rw-r--r--Game/Code/Classes/UMain.pas28
1 files changed, 15 insertions, 13 deletions
diff --git a/Game/Code/Classes/UMain.pas b/Game/Code/Classes/UMain.pas
index a1df643e..2b947908 100644
--- a/Game/Code/Classes/UMain.pas
+++ b/Game/Code/Classes/UMain.pas
@@ -553,6 +553,7 @@ var
N: integer;
SumN: real;
NumS: integer;
+ tap: integer;
SMin: integer;
SMax: integer;
SDet: integer; // temporary: sentence of detected note
@@ -562,7 +563,6 @@ var
Range: integer;
NoteHit:boolean;
begin
-
for CP := 0 to PlayersPlay-1 do
begin
if (not AktSong.isDuet) then
@@ -711,17 +711,18 @@ begin
begin
for N := 0 to Czesci[P].Czesc[S].HighNut do
begin
- if (Czesci[P].Czesc[S].Nuta[N].Start+Czesci[P].Czesc[S].Nuta[N].Dlugosc
- >= Czas.AktBeatD) then
+ if (Czesci[P].Czesc[S].Nuta[N].Start > Czas.AktBeatD) then
begin
+ tap := Czesci[P].Czesc[S].Nuta[N].Dlugosc;
+ if (Czesci[P].Czesc[S].Nuta[N].Start + tap < Czas.AktBeatD) then
+ tap := Czas.AktBeatD - Czesci[P].Czesc[S].Nuta[N].Start - tap;
+
if (Ini.LineBonus = 0) then
// add points without LineBonus
- SumN := SumN + 10000 / Czesci[P].Wartosc * Czesci[P].Czesc[S].Nuta[N].Wartosc *
- Czesci[P].Czesc[S].Nuta[N].Dlugosc
+ SumN := SumN + 10000 / Czesci[P].Wartosc * Czesci[P].Czesc[S].Nuta[N].Wartosc * tap
else
// add points with Line Bonus
- SumN := SumN + 9000 / Czesci[P].Wartosc * Czesci[P].Czesc[S].Nuta[N].Wartosc *
- Czesci[P].Czesc[S].Nuta[N].Dlugosc;
+ SumN := SumN + 9000 / Czesci[P].Wartosc * Czesci[P].Czesc[S].Nuta[N].Wartosc * tap;
end;
end;
@@ -884,17 +885,18 @@ begin
begin
for N := 0 to Czesci[P].Czesc[S].HighNut do
begin
- if (Czesci[P].Czesc[S].Nuta[N].Start+Czesci[P].Czesc[S].Nuta[N].Dlugosc
- >=Czas.AktBeat) then
+ if (Czesci[P].Czesc[S].Nuta[N].Start > Czas.AktBeatD) then
begin
+ tap := Czesci[P].Czesc[S].Nuta[N].Dlugosc;
+ if (Czesci[P].Czesc[S].Nuta[N].Start + tap < Czas.AktBeatD) then
+ tap := Czas.AktBeatD - Czesci[P].Czesc[S].Nuta[N].Start - tap;
+
if (Ini.LineBonus = 0) then
// add points without LineBonus
- SumN := SumN + 10000 / Czesci[P].Wartosc * Czesci[P].Czesc[S].Nuta[N].Wartosc *
- Czesci[P].Czesc[S].Nuta[N].Dlugosc
+ SumN := SumN + 10000 / Czesci[P].Wartosc * Czesci[P].Czesc[S].Nuta[N].Wartosc * tap
else
// add points with Line Bonus
- SumN := SumN + 9000 / Czesci[P].Wartosc * Czesci[P].Czesc[S].Nuta[N].Wartosc *
- Czesci[P].Czesc[S].Nuta[N].Dlugosc;
+ SumN := SumN + 9000 / Czesci[P].Wartosc * Czesci[P].Czesc[S].Nuta[N].Wartosc * tap;
end;
end;